nurpax / petmate

PETSCII editor with Electron/React/Redux
MIT License
181 stars 14 forks source link

C64 Mini support - export option: .prg packaged at .d64 + checkbox "Support C64 Mini"? #108

Open Crispinophur opened 5 years ago

Crispinophur commented 5 years ago

Useful option for all THEC64 Mini users will be choice of exporting .prg but packaged in the disk image named "THEC64-drive8.d64". This is because that name is the only one Mini recognize, at the moment. It will allow almost instant use of petmate works at Mini. For Mini, disk image could be of any of following formats: .d64, .d71, .d80, .d81, .d82 - but it has to be that exact name. It could be made as option at export settings like checkbox "Support C64 Mini". Info here: https://thec64.com/loading-other-programs/

Crispinophur commented 5 years ago

By using new (last, v.1.4.4) Mini firmware, maybe it becomes somewhat obsolete? Last Minis firmware introduced "FileLoader", so now it is possible to load many more image formats (or prg directly) and disks (disk-images) with other filenames are also recognized (don't have to be named as "THEC64-drive8.d64" anymore). STILL: from "BASIC prompt" things remain the same. And, for proactive use of PETSCII art at Mini (to implement something in program), one still needs BASIC mode.

nurpax commented 5 years ago

@Crispinophur So the remaining request is that Petmate should support exporting .d64 instead of just .prg? The C64 mini doesn't have any way of reading in a .prg?

(I don't have a Mini, just a breadbin with Ultimate II+ where .prg works fine.)

I guess .d64 export could be done the same way I do .prg export now.. E.g., I have a .prg file that I use as a template that I binary patch before saving it to disk. If the .d64 format is not packaged or encrypted (likely :)), then the same binary patching approach would work.

nurpax commented 5 years ago

@Crispinophur is this still a problem for C64 Mini? I've been thinking about exporting .d64 and it's a somewhat complex to support. Some sort of binary patching is still possible, but AFAICT the petscii.prg chunks would be spread around multiple sectors in the .d64 file so it's definitely trickier that what I do for .prg.

The c1541 command line tool from VICE is a robust tool that can be used to create .d64's so I guess I'd advice to do this processing out of Petmate.