To get the best from the OneChipMSX core, you will need an SD card (as opposed to an SDHC card), which should be FAT16 formatted.
It’s possible to load the BIOS from a FAT32-formatted SDHC card, but you’ll only be able to boot into BASIC – MSX-DOS itself requires FAT16 and non-SDHC.
Formatting the card
If you have an SD card and need to format it as FAT16 you may find your operating system isn’t much help. Windows users will find the SD Association’s formatting utility useful here: https://www.sdcard.org/downloads/formatter_4/
Adding the BIOS
The original OneChipMSX firmware could load the BIOS from SD card – but only if it was the first file in the filesystem. This limitation is no longer present on my port of the core, since I’ve replaced the Initial Program Loader with the new Control CPU which handles the OnScreenDisplay as well as loading the firmware.
The BIOS can be found alongside Caro’s DE0 or DE1 ports: http://caro.su/msx/ocm_de1.htm. Either the MSX3 or MSX2+ BIOS can be used – the firmware will attempt to use the MSX3 BIOS in preference, and fall back if necessary.
Alternatively, there is a .rar file at http://www.msxpro.com/de0.html which contains everything you need to boot OneChipMSX – MSX2+ BIOS, operating system and ROMLoad.
The Operating System
To run MSX DOS you will need two more files on your SD card: MSXDOS2.SYS and COMMAND2.COM These can be found in the .rar file on the page linked above
Just like MS DOS you can use an autoexec.bat file to run comands at startup, and the command set will feel familiar to MS DOS users. It even has tab completion!
Loading a ROM Image
Cartridge images can be stored on the SD Card, either loose or in subdirectories. Long filenames are not supported, so it’s a good idea to rename them to something within the standard 8.3 format, otherwise you’ll have to contend with confusing “prefix~1.ext” style filenames. Once your SD card contains suitable ROMs, they can be launched from the command line like so:
A:\> romload path\to\file.rom
This command will load a ROM image into one of the emulated memory expansions (assuming they’re enabled) but won’t actually launch it. To launch it, either reset the core, type “reset” at the command line, or supply the /r switch after the filename when invoking romload.
A nice selection of Konami ROMs can be found here: www.msxarchive.nl/pub/msx/games/roms/konamigames.zip
Using Disk Images
The OneChipMSX has support for mounting disk images, using the EP command – if you don’t have this, it can be found as part of this archive: http://msxbanzai.tni.nl/computers/ese3.zip (This is the software that came with the “real” OneChipMSX – the tools you need are in the Tools subdirectory.)
To mount a disk image, use the following command:
A:\> ep image.dsk b:
Now you can address the disk as drive B:\.
Alternatively, the following command will mount and auto-boot from the disk:
A:\> ep image.dsk /b /r
(Thanks to users jugac64 and fierman from the chameleon_64 Yahoo group for their contributions to this guide.)
A suggestion of optimisation, to type less letters and gain a little time
would be to create those 2 files in the directory UTILS:
-R.bat
ROMLOAD.COM %1% /R
-D.bat
EP.COM %1% /B /R
Then you can only type :
R [ROMNAME.ROM] for loading and running roms
and
D [DISKNAME.DSK] for loading and running disks
With the file names (and directories) auto-completion using TAB key, it also avoids typing file names.
Nice – I will try that!
Why are you using a FAT16 filesystem?
Why not support FAT32, it’s just a question from a newbie.
Opsss sorry about that.
“MSX-DOS itself requires FAT16 and non-SDHC.”
Yeah – I hope that limitation will go away some day. Time will tell! 🙂
Is it possible to save the config of this core? It works very very well 🙂 (I have an original 1chipMSX and a Zemmix Neo also) , but when I select “Save and Reset”, no saving is done.
Regards,
Salva
It should work, but only if there’s already a config file on the SD card. (The firmware isn’t capable of creating files, only overwriting them.)
Ok 🙂 I’ve put the CFT file from the Chameleon 64 release. Thanks!
Just another question: I put Megaram on slot 1 and SCC on slot 2 but no SCC is being detected.
Anyway, good porting, great great core ^^
Regards,
Salva
I use the last core for MiST Board 🙂
Have you tried to boot last SymbOS release? I haven’t been able to boot it… http://www.symbos.de/download/20140830-V21/symbos-msx.zip
Regards,
Salva
Try the version at the foot of this page: http://caro.su/msx/ocm_de1.htm
I don’t know how it differs from the original, but it’s the version I booted to make the SymbOS video.
On my first boot, I got the OS load screen, where I picked a ROM and it ran fine. But now when I reset, it goes straight to that ROM – is there a way to force boot to the OS (shy of reinstalling my SD card)?
Other than that minor issue, this is amazing!
At the moment the only way to go bak to the OS is to power-cycle the Chameleon – I haven’t yet figured out how to remove the ROM image during reset!
It would be possible to make 100% compatible with MSX2?. Some software doesn’t work on MSX2+ bios.
Thanks 😉
Hi!
I tried to start the OCMSX core on my TC64, but it didn’t succeed.
I formatted my SD cards (tried 2 cca. 10 years old pieces, a 1GB noname and a 2GB Verbatim) to FAT16, and copied the necessary files to it following the online Quick Start Manual: http://retroramblings.net/?page_id=921
At the first attempt, the result is on OSD:
SD init…
SD card reset failed!
Loading BIOS failed
After pressing the RESET (rightmost on the Chameleon) button:
SD init…
Read failed
MBR fail
Loading BIOS failed
I tried the following steps:
1. Formatted both cards to NTFS and then back to FAT(16) again.
2. Renamed the games on the card to 8.3 filenames, and copied them from subfolders to root directory.
3. Even tried to reset my cards’ MBR following this description: https://tails.boum.org/doc/first_steps/reset/windows/index.en.html
None of the above mentioned helped, the result is the same.
Have I done something wrong, or miss something necessary basic thing?
Both of my cards are working flawless using them in digital cameras, camcorder or even in the TC64’s other cores, except the minimig core.
I posted the same question on the TC64 User’s Yahoo Groups forum:
https://groups.yahoo.com/neo/groups/chameleon_64/conversations/topics/4145
Thanks the help in advanve: Gábor