Open zomgugoff opened 2 months ago
Not sure I understand? You want the ROM image to boot to BASIC or DOS - without drivers? I think you may want no DOS in the embedded system?
NEXTOR does have some boot keys, that 'disable' certain boot behaviour if held during boot. Maybe they can help? https://github.com/vipoo/Nextor/blob/7f12851e494b184e1ffa6c8c0fc646440158306e/docs/Nextor%202.1%20User%20Manual.md#29-boot-keys
Please note, I dont think MSX-DOS mode 1 of NEXTOR will work on this platform though.
I have tried these keys, but there is nothing there that allows the system to boot an OS from a cartridge, such as the MFR. My thought was to mimick a commercial MSX2+ more closely by having it only contain BASIC in ROM, but be able to boot DOS from external devices like a floppy controller or the MFR.
I think we would need a ROM image with only BIOS and BASIC installed - thats not a configuration in the build process at the moment. It might be a bit of effort to get such an image going. I can only say i will put this on my backlog and try and get to it
It was simplier than I thought. Just don't add the Nextor ROM to the final ROM.
msx/Makefile:
.PHONY: rom-msxsyssrc-$1-$2-rtc
rom-msxsyssrc-$1-$2-rtc: bin/rc2014.nextor.rom cbios msxsys-$1-$2-rtc ./rc2014-extended/bin/rc2014-extended.rom
@rm -f bin/msxsyssrc-rc2014-$1-$2-rtc.rom
dd status=none if=/dev/zero bs=16k count=8 of=bin/msxsyssrc-rc2014-$1-$2-rtc.rom
dd status=none conv=notrunc status=none if=./bin/$1-$2-rtc-main.rom of=bin/msxsyssrc-rc2014-$1-$2-rtc.rom bs=16k count=2 seek=0
dd status=none conv=notrunc status=none if=./cbios/derived/bin/cbios_logo_rc2014.rom of=bin/msxsyssrc-rc2014-$1-$2-rtc.rom bs=16k count=1 seek=2
dd status=none conv=notrunc status=none if=./bin/$1-$2-rtc-subrom.rom of=bin/msxsyssrc-rc2014-$1-$2-rtc.rom bs=16k count=1 seek=3
#dd status=none conv=notrunc status=none if=./bin/rc2014.nextor.rom of=bin/msxsyssrc-rc2014-$1-$2-rtc.rom bs=16k count=27 seek=4
dd status=none conv=notrunc status=none if=./rc2014-extended/bin/rc2014-extended.rom of=bin/msxsyssrc-rc2014-$1-$2-rtc.rom bs=16k count=1 seek=31
This does, of course, prevent drivers from loading. It would be cool to have the drives loadable on demand, instead of baked into the ROM.
Yep that will do it - no nextor image.
I dont think MSX-DOS/NEXTOR supports the idea of disk drivers loading on demand.
NEXTOR does have support for dual kernels. I am not 100% sure how it all works, but there is code in there for the kernels to decide one is master on boot. And I think there is a 'negotiation' to load relevant drivers from the alternative kernel -- but I really not sure how all that works - or if its implemented in my NEXTOR build correctly.
All I can gather from the manual is that the first slot with Nextor becomes primary. I don't see any way around it. I left an issue on the Nextor repo asking about it.
While trying to use Nextor's emufile, I discovered that there is a limitation on how it functions. Drives not controlled by the primary Nextor kernel are not allowed/able to be used with it. Using the SD slots on the MFR is apparently impossible with emufile. Given the access speed issue with the USB interface, I would rather use the MFR's storage.
So, I was wondering if it's at all possible to have the ROM work more like a commercial ROM. No ROM disks. Just boot BASIC (or DOS if found.)