Melkhior’s Mansion – Project Update #3
It’s Sunday night in the UK which means it’s time for a project update of Melkhior’s Mansion Next!
Work has continued this week on the PC development tools and foundations of the Z80 side of the project and not on the background objects as planned.
The beginning of the week saw the addition of the official .NEX executable file format to the tool chain. Comparisons made against the 128K snapshot format and .NEX showed that there was potential for error with .SNA files so the snapshot format has been dropped and removed completely from the development process in favour of .NEX. This was a team effort and I am very grateful to the Next developers that provided support. Thanks guys.
The main issue was that 128K snapshot files do not allow the software contained within them to know the actual name of the .SNA file on the SD card. This means that the filename has to be hard-coded into the game code. Renaming the .SNA snapshot would result in a fatal error preventing access to data stored within the file or may cause data from the wrong file to be loaded.
I created a new boot sequence using the .NEX format adding checks to make sure the Spectrum Next has the correct FPGA core and NextZXOS operating system to run the game. Fatal error trapping was also added to my file system code to warn the user when there is a problem. One example is removing the SD card while the game is running.
Many hours were spent updating my Z80 assembler (NXASM) and my RS232 serial download link (NX232) software over the week to accommodate the .NEX format. Time was also spent making sure Melkhior’s Mansion worked on the CSPect emulator at this early stage of development. There are some differences between the TBBlue 2A development board and CSPect. Most of these differences have been accounted for and errors in my code isolated and fixed. CSPect is a useful tool for finding oversights that the hardware may ignore. There was an issue with my copper code that caused CSPect to fail which is now fixed.
The weekend was not as productive as I would have liked as I had trouble with one of my development machines. To summarise, my network went down during integration of a FlashAir WiFi SD card causing my PC to constantly reboot. Thankfully, I avoided a full reinstall of my main Windows development machine by finding a quick solution to restore the networking. 24 hours without a Next development system felt like an eternity.
I am currently back on track developing the sprite system for the custom emulator I talked about in my previous updates.
Week four will hopefully see more development of the visual side of the game conversion.
KevB aka 9bitcolor.
Leave a Reply