Loonies 8192 Port
Posted: February 25th, 2020, 6:13 am
Last week I tried Lameguy64's PSn00bSDK and started porting my mini retro puzzle Loonies 8192 to the PS1. It started out as DOS game two years ago, and so isn't too taxing on the hardware, has CD-Audio support and uses an old subset of C++ (since I still build the DOS version in Borland C++ for some reason):

CD Audio had some issues, which I tracked down to CDGetToc handling the CdlGetTD in a wrong way pull request #14 should fix this. There's also some missing libc functions that were easy enough to add, see pull request #16. In certain emulators, SpuInit() locks up for some reason, but I got to test it on real hardware this weekend and it worked just fine. mkpsxiso was used to create the image (EXE + 3 audio tracks).
It works in a few emulators I've tested (NO$PSX seems especially useful with its VRAM inspector), I couldn't get it working on the PSP's PS1 emulator (using PSX2PSP), not sure how to debug that. It works fine on a real PAL PS1 (had to fiddle a bit with the screen size/position, as the game originally is 320x240 in resolution, so it needs to be offset a bit for the additional PAL lines).
Background music using CD-Audio works fine now, including looping (there's a short pause when looping due to the way I've implemented looping of tracks by polling the position). Also, I probably want to add memory card saving and loading of the high scores, which I haven't looked into yet; according to the readme, that is still a work in progress for PSn00bSDK (psxmcrd).
Not sure when/if/how it is going to be released, but thought I'd post this here as PSn00bSDK was very easy to get set up, and I haven't seen many recent new ports using it in this subforum, so maybe this is useful/motivating

CD Audio had some issues, which I tracked down to CDGetToc handling the CdlGetTD in a wrong way pull request #14 should fix this. There's also some missing libc functions that were easy enough to add, see pull request #16. In certain emulators, SpuInit() locks up for some reason, but I got to test it on real hardware this weekend and it worked just fine. mkpsxiso was used to create the image (EXE + 3 audio tracks).
It works in a few emulators I've tested (NO$PSX seems especially useful with its VRAM inspector), I couldn't get it working on the PSP's PS1 emulator (using PSX2PSP), not sure how to debug that. It works fine on a real PAL PS1 (had to fiddle a bit with the screen size/position, as the game originally is 320x240 in resolution, so it needs to be offset a bit for the additional PAL lines).
Background music using CD-Audio works fine now, including looping (there's a short pause when looping due to the way I've implemented looping of tracks by polling the position). Also, I probably want to add memory card saving and loading of the high scores, which I haven't looked into yet; according to the readme, that is still a work in progress for PSn00bSDK (psxmcrd).
Not sure when/if/how it is going to be released, but thought I'd post this here as PSn00bSDK was very easy to get set up, and I haven't seen many recent new ports using it in this subforum, so maybe this is useful/motivating
