02-10-2022, 04:01 AM
site with dev sources still available on web.archive.org
https://web.archive.org/web/202104111600...pdroms.de/
https://web.archive.org/web/202104111600...pdroms.de/
|
New Game Block Dude (Port)
|
|
02-10-2022, 04:01 AM
site with dev sources still available on web.archive.org
https://web.archive.org/web/202104111600...pdroms.de/
02-10-2022, 06:00 AM
(02-09-2022, 09:04 AM)Flavor Wrote:(02-09-2022, 07:28 AM)winteriscoming Wrote: For those seriously dabbling in NGPC development, the FlashMasta cart is the way to go. I end up testing most of my code iterations on hardware and the workflow for the FlashMasta is the fastest. Great! I had not paid attention to the CLI app prior to now. Now I have a simple bat file set up to write my rom to the first slot. Definitely saves some mouse clicks! FlashMasta workflow is now: 1. Compile your code into NGPC rom. 2. Plug your cart into PC. 3. Run bat file to flash the cart. 4. When it's done, unplug and put it in your NGPC for testing.
01-19-2026, 01:38 PM
Happy New Year,
This thread should be moved to Homebrew instead of software development, but ver0.9 of Neo Block Dude is released! https://drive.google.com/drive/folders/1...sp=sharing The game is fully playable in both emulation and real hardware with 24 levels of puzzle-platforming action. The code is also uploaded in a .zip for anyone in the future, and might make a good generic platformer engine, although i am a poor coder so probably not the best person to copy from. The reason it is version 0.9 is for two main issues: 1. Sound: this has been a bane for the whole project. Just getting NeoTracker to (partially) work took wayyy too long, and while i can get WinterisComing's code working for new projects, i haven't been able to integrated it on existing code. Something to do with the V-blanking, i think. Currently the NeoTracker BGM plays fine in emulation, but no loops and only through headphones on actual hardware, not the speaker. Possibly because of mono-vs-stereo? Argh, sound just sucks on this game and it's been very frustrating, sorry 2. Saving Data: I haven't dug too deep into this feature but while I'm able to get the flash save working in emulation (NeoPOP-Win32), it does not work on real hardware (flashmasta). The game freezes when trying to load or retrieve the data, so I commented the test code out. The goal is to save two strings: one for step records and one for calculator pieces collected. There isn't a whole lot of documentation or examples for saving home brew game data: any pointers would be appreciated. There are a few story/extra character features that didn't make sense without saving, so I left them out. I plan on continuing to work on this, but need a break since I'm seeing C-code in my sleep :/ Let me know if you're able to find any bugs, or improvements, or just enjoyed the game. Finally, I'm more of an social media lurker, so while I didn't respond too readily on this thread, your help/comments over the past few years (!) has been appreciated. Thanks! -scomico
01-22-2026, 09:33 PM
@scomico,
Saving data: you need a buffer of 256 bytes (u8) where the 4 first bytes are reserved for a "magic number". This number is just a way to know if something has already been saved. So you have 252 bytes for your own data starting at index 4. You can then transfert the content of this buffer to your own data structure.
Excellent news - I'll have a look through your code when I get a minute and see if I can give you a worked example to do the saving - edit: the most likely thing is that you haven't padded the ngp file to 2mb, it needs the empty space at the end of the file in order to save
With the sound - it's best to pick the old neotracker code out of the project and put WIC's code in on it's own - I'll see if I can pop that in for you as well if you'd like
02-04-2026, 02:58 AM
So, I had a look at your project and couldn't really figure out where you wanted to insert your load/save - so, what I've done in DDMR etc is to abstract the save code into it's own functions
Code: void GetDDMRData(u16 *Palette, u8 *Difficulty, SCORE *scoretable)And then changed (a little bit by trial and error) the original library.c functions like so: Code: void SetFlash(void *data) {The magic number can be anything you like, it's literally just a sequence of bytes that you wouldn't expect to see normally. Thor's original one was to use 0xcafebabe and I didn't see the need to change that The last piece of the puzzle, at least when you flash to flashmasta/retrohq is to pad the ROM file to 2mb - winteriscoming used a .py script for that, but I used the following windows command script to do the same thing (so I don't have to have python installed) - certutil and fsutil should be available on any standard Win10/11 installation Code: ECHO Padding:
02-04-2026, 02:59 AM
Anyway, cute little game - I really enjoyed the manual
|
|
« Next Oldest | Next Newest »
|