Closed ifighftdragons closed 1 month ago
This is the next big thing to take on once I finish bug patrol.
Any title in particular you are aiming at?
The crt spec defines 28 different variants. Which is most important to support?
This is the next big thing to take on once I finish bug patrol.
Any title in particular you are aiming at?
The crt spec defines 28 different variants. Which is most important to support?
Great to hear!
A Pig Quest, which is often regarded as one of the better homebrew games on the C64. I can only find it in .crt format. Not sure which variant it is.
The filenames are as follows, if it helps: A Pig Quest +2 {EasyFlash} [EX] A Pig Quest v1.02 +9_[trex]
A Pig Quest, which is often regarded as one of the better homebrew games on the C64. I can only find it in .crt format. Not sure which variant it is.
That is one impressive C64 game! I bought a copy to support the developers and had a look. The delivered.crt
file is 1MB in size and probably packed with assets for the game which explains why it is not available in any other format.
So I guess, even though I am skeptical to the .crt
format as a whole, that there is reason to support it. At least this particular one cartridge format.
The .crt
identifies as hardware type 32 (EasyFlash) that unfortunately is not covered by the CRT file format spec. There is a programmers reference for the EasyFlash cartridge though where the 'Hardware description' section does seem to cover the necessary details (at least combined with the previous document and some reasonable assumptions).
For the pocket I think the external pseudo-SRAM would be a good fit for the 1MB cartridge data. Initially just testing in simulation with a big SRAM to see if the cartridge boots up seems like a good start. There could very well be other issues in the way that prevents it from working and it is better to find that out before spending time on an external memory controller.
Thanks for the detailed reply, Markus. That's awesome to hear you want to try to include support for the game. I also bought a copy to support the devs. Blown away by how impressive it is for a C64 game.
Somewhat experimental support for the Magic Desk .crt
format on branch dev/crt
with attached test build
MyC64-Pocket.zip
tested and worked well with the following
-rwxr-xr-x 1 root root 82144 maj 26 17:34 'Bubble Bobble.crt'
-rwxr-xr-x 1 root root 82144 maj 26 17:33 Cybernoid.crt
-rwxr-xr-x 1 root root 82144 maj 26 17:32 Nebulus.crt
-rwxr-xr-x 1 root root 82144 maj 26 17:33 'Ruff and Reddy.crt'
-rwxr-xr-x 1 root root 65728 maj 26 17:33 'Runn '\''n'\'' Gunn (Carleton Handley - 2021).crt'
The Magic Desk format is the most prevalent format in the OneLoad64 collection. The other format is EasyFlash for larger titles with its 1MB storage. That format is next up but it will require external memory support (likely the PSRAM of the pocket).
Core Settings -> Load & Start CRT
don't show any .crt
files?
Core Settings -> Load & Start CRT
don't show any.crt
files?
My bad, it absolutely works. Just had to get all the system files in order.
Tested the games you listed, they all run. Really sweet update!
EasyFlash comming along - A Pig Quest loaded up in simulation
$ ./core_top-sim --dump-video --crt ~/Downloads/pig/apigquest/apigquest_ef.crt
$ ffmpeg -r 50 -pattern_type glob -i 'vicii-*.png' -c:v libx264 -pix_fmt yuv420p pigsquest.mp4
https://github.com/markus-zzz/myc64-pocket/assets/8939552/11954ea0-c0e6-41f1-88d6-74dc6ddfd36b
using commit 56472e334597b78957ff6e6bbbecbc8a9debe359 (origin/dev/crt)
EasyFlash comming along - A Pig Quest loaded up in simulation
$ ./core_top-sim --dump-video --crt ~/Downloads/pig/apigquest/apigquest_ef.crt $ ffmpeg -r 50 -pattern_type glob -i 'vicii-*.png' -c:v libx264 -pix_fmt yuv420p pigsquest.mp4
pigsquest.mp4 using commit 56472e3 (origin/dev/crt)
Wow, that's exciting! Great work :D
With v0.2.5
https://youtu.be/xFoOOlylnOM?si=7o6JGVqHLCQdMP8S
but (as I say in the video description) there are some issues with the controls.
I think I'll leave this open until those get fixed
just some feedback, with v0.2.5 many crt images I was able to test are working now and the release brought many improvements to the emulation as well. best thing, Buggy Boy works now :) still got the issue that I can't switch between the 'Select' button menu pages while the Pocket is in the Dock and when using the CRT display option in combination with the Integer+ scaling, the 'Select' menu is slightly out of the visible screen area. nice progress, keep up the good work, I highly appreciate it :)
just some feedback, with v0.2.5 many crt images I was able to test are working now and the release brought many improvements to the emulation as well. best thing, Buggy Boy works now :) still got the issue that I can't switch between the 'Select' button menu pages while the Pocket is in the Dock and when using the CRT display option in combination with the Integer+ scaling, the 'Select' menu is slightly out of the visible screen area. nice progress, keep up the good work, I highly appreciate it :)
Thanks. I appreciate the feedback - it is really hard for me to know anything about what the users are up to otherwise (or even if there are any users at all).
I see what you mean with the 'Integer +' mode and the OSD and there actually already exist an issue for it #6 (so lets continue discussing that there).
With test build in #26 A Pig Quest is now playable. Turned out that the game used a 2nd fire button mapped to jumping and I had not implemented the paddle support (that it makes use of) at all. So that is why it thought the 2nd fire (i.e. jump) was constantly pressed.
Resolved as of release v0.2.6
FEATURE REQUEST: Support for .crt file format