Discussion:
Another experimental core - OneChipMSX
robinsonb5-/E1597aS9LQAvxtiuMwx3w@public.gmane.org [chameleon_64]
2014-08-25 16:13:57 UTC
Permalink
Hi,Over the last few days I've been playing around with an experimental port of the OneChipMSX to the Chameleon. It's very much experimental, so don't expect too much from it at this stage, but it is capable of booting to BASIC, and given a FAT16 Formatted SD card containing MSX-DOS, is capable of loading and running ROM images.

The "real" OneChipMSX has a bunch of DIP switches which I will ultimately need to replicate by way of an OSD menu.

Also note, I'm definitely not an MSX expert, so if you're confused about how to use it... well that makes two of us!

More details at: OneChipMSX in Chameleon’s Clothing? | Retro Ramblings http://retroramblings.net/?p=905

http://retroramblings.net/?p=905

OneChipMSX in Chameleon’s Clothing? | Retro Ramblings http://retroramblings.net/?p=905 Part 2: the first milestone. Today I have successfully booted OneChipMSX on the Turbo Chameleon 64!



View on retroramblings.net http://retroramblings.net/?p=905
Preview by Yahoo





All the best
--
Alastair M. Robinson
jugac64-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org [chameleon_64]
2014-08-25 18:38:09 UTC
Permalink
Thank you very much Alastair, awesome, another Chameleon core to enjoy :-)
Diego Zanandrea diego.zanandrea-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org [chameleon_64]
2014-08-25 21:52:45 UTC
Permalink
This are GREAT news!
Thank you very much, Alastair!

--
Diego Zanandrea
Sent from my Commodore 64
Post by robinsonb5-/***@public.gmane.org [chameleon_64]
Hi,Over the last few days I've been playing around with an experimental port of the OneChipMSX to the Chameleon. It's very much experimental, so don't expect too much from it at this stage, but it is capable of booting to BASIC, and given a FAT16 Formatted SD card containing MSX-DOS, is capable of loading and running ROM images.
The "real" OneChipMSX has a bunch of DIP switches which I will ultimately need to replicate by way of an OSD menu.
Also note, I'm definitely not an MSX expert, so if you're confused about how to use it... well that makes two of us!
More details at: OneChipMSX in Chameleon’s Clothing? | Retro Ramblings (http://retroramblings.net/?p=905)
OneChipMSX in Chameleon’s Clothing? | Retro Ramblings (http://retroramblings.net/?p=905)
Part 2: the first milestone. Today I have successfully booted OneChipMSX on the Turbo Chameleon 64!
View on retroramblings.net (http://retroramblings.net/?p=905)
Preview by Yahoo
All the best
--
Alastair M. Robinson
Dag Jacobsen dag.jacobsen-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org [chameleon_64]
2014-08-26 00:22:17 UTC
Permalink
Brilliant ! Looking forward to progress of this core !
Post by Diego Zanandrea diego.zanandrea-***@public.gmane.org [chameleon_64]
This are GREAT news!
Thank you very much, Alastair!
--
Diego Zanandrea
Sent from my Commodore 64
Hi,Over the last few days I've been playing around with an experimental
port of the OneChipMSX to the Chameleon. It's very much experimental, so
don't expect too much from it at this stage, but it is capable of booting
to BASIC, and given a FAT16 Formatted SD card containing MSX-DOS, is
capable of loading and running ROM images.
The "real" OneChipMSX has a bunch of DIP switches which I will ultimately
need to replicate by way of an OSD menu.
Also note, I'm definitely not an MSX expert, so if you're confused about
how to use it... well that makes two of us!
More details at: OneChipMSX in Chameleon’s Clothing? | Retro Ramblings
<http://retroramblings.net/?p=905>
[image: image] <http://retroramblings.net/?p=905>
OneChipMSX in Chameleon’s Clothing? | Retro Ramblings
<http://retroramblings.net/?p=905>
Part 2: the first milestone. Today I have successfully booted OneChipMSX
on the Turbo Chameleon 64!
View on retroramblings.net <http://retroramblings.net/?p=905>
Preview by Yahoo
All the best
--
Alastair M. Robinson
--
Greetings
Dag
Tobias tobias-S0d+oa0fsY4@public.gmane.org [chameleon_64]
2014-08-28 03:54:29 UTC
Permalink
Post by robinsonb5-/***@public.gmane.org [chameleon_64]
Hi,Over the last few days I've been playing around with an experimental port
of the OneChipMSX to the Chameleon. It's very much experimental, so don't
expect too much from it at this stage, but it is capable of booting to
BASIC, and given a FAT16 Formatted SD card containing MSX-DOS, is capable
of loading and running ROM images.
mmmh all i can get is a black screen (at ***@50 :)) ... and when pressing
the right button, something happens and the monitor goes out of sync

what should the filename of the bios rom be? :) or what else could be wrong?
--
http://www.icomp.de http://wiki.icomp.de


------------------------------------
Posted by: Tobias <tobias-S0d+***@public.gmane.org>
------------------------------------
robinsonb5-/E1597aS9LQAvxtiuMwx3w@public.gmane.org [chameleon_64]
2014-08-28 11:37:46 UTC
Permalink
Hi,

The right button is mapped to "reset", hence the monitor losing sync. For the next release I plan to add an OSD which will let us see some debugging information, and change DIP switch settings, so once that's done it'll be easier to track down any problems.

The BIOS file should be named exactly as it is in the zipfile on Caro's DE1 OCMSX page, which from memory is "bios_m2p.rom"? Until the DIP switch settings are implemented I don't think you'll be able to do much with it unless the SD card is FAT16 formatted, non-SDHC and contains a viable MSX-DOS installation - but it should at least get as far as a blue screen with an MSX splashscreen on it.

All the best
--
Alastair M. Robinson
fatbob_gb-/E1597aS9LT10XsdtD+oqA@public.gmane.org [chameleon_64]
2014-08-28 18:26:14 UTC
Permalink
Using some of the files found in the archive on this http://www.msxpro.com/de0.html http://www.msxpro.com/de0.html I was able ro load and run a few games/roms. I spent most of last night playing Space Manbow and BombJack.

Thanks for putting the effrort in to make this possible.
Tobias tobias-S0d+oa0fsY4@public.gmane.org [chameleon_64]
2014-08-29 05:57:16 UTC
Permalink
Post by robinsonb5-/***@public.gmane.org [chameleon_64]
Hi,
The right button is mapped to "reset", hence the monitor losing sync. For
the next release I plan to add an OSD which will let us see some debugging
information, and change DIP switch settings, so once that's done it'll be
easier to track down any problems.
The BIOS file should be named exactly as it is in the zipfile on Caro's DE1
OCMSX page, which from memory is "bios_m2p.rom"? Until the DIP switch
settings are implemented I don't think you'll be able to do much with it
unless the SD card is FAT16 formatted, non-SDHC and contains a viable
MSX-DOS installation - but it should at least get as far as a blue screen
with an MSX splashscreen on it.
mmmh strange... perhaps it needs a partition table on the card?

ah well, i'll just wait until next release =)
--
http://www.icomp.de http://wiki.icomp.de


------------------------------------
Posted by: Tobias <tobias-S0d+***@public.gmane.org>
------------------------------------
jugac64-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org [chameleon_64]
2014-09-13 19:40:17 UTC
Permalink
Hi, I will share how I make work the SMX2 core, just in case any of you want to test it.


First, you need to download the last version of the core from Retrorambling.net:


http://retroramblings.net/?p=905


Direct download:


http://retroramblings.net/downloads/ChameleonOCMSX-20140825.zip


If you already downloaded the first release, please re-download it because Alastair did some corrections and re-uploaded it with the same name. Download it again to be sure.


Just in case
 DON’T FLASH THE CORE ON SLOT 0! Use any other core’s slot.


This website contains all the info you need to run the core:


http://www.msxpro.com/de0.html


But a quick summary would be:


You need a small SD card (not SDHC) which needs to be FAT16 formatted. I use this tool for SD cards formatting:


https://www.sdcard.org/downloads/formatter_4/


I am using a SanDisk 1GB MicroSD with SD card adapter, and it works pretty well with the core.


On the SD card root you need to have: the BIOS (bios_m2p.rom), the DOS (MSXDOS2) and ExecROM. On the website it is commented that the BIOS file should be the first file on the SD Card, so they recommended saving this file first, and then the others.


I use this application to sort files on an SD card:


http://www.anerty.net/software/file/DriveSort.php


(Also it seems that MSX2 DOS doesn’t sort the files inside a directory, but just in case I renamed the games roms with letters below “bios_m2p”).


This package from the website contains all the required files (BIOS, DOS and EXECRom). Just download it and copy the files to the SD card (first bios_m2p.rom):


http://www.msxpro.com/hardware/de0_ocm/cartao_de_boot_de0.rar


Then you will need to put some roms on the SD card, I used:


“Space Manbow (1989) (Konami) (J).zip”


From MSX2 Gamebase collection (unzip it and copy the rom to the SD card root, and rename it with a short name like spma.rom).


When the core is launched for first time, only a black screen appears. But after pressing the Chameleon’s right blue button, the core resets and voila
 the MSX2 splash screen appears, very nice!


On the DOS, you can type “DIR” to see the sd card content.


And to load for example the spma.rom file you can use this instruction:


romload spma.rom / r


/ r means to execute the rom immediately after loading it.


If the rom starts well, whenever you press the right button it will reload the rom, so to start again and load another rom, apparently you need to reboot the Chameleon.


Space Manbow is very nice and have a great music! Thanks Alastair for porting the MSX2 core.
fierman fierman-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org [chameleon_64]
2014-09-13 20:12:40 UTC
Permalink
Thank you for that explanation Juan :)
I fiddled with the core last week, could not get it to work. Seems the
catch was definitely the SD vs. SDHC card. The msxdos2 will definitely fail
to initialize the a: device when using an sdhc card.
No need to reset the core here on first load btw, works fine directly.

Just played a bit of Metal Gear (what else would you want to run on an MSX
:)), and it works fine.
Added wow-factor: native c64 joystick support!!!!
A nice archive with games, demos, utils etc can be found here:
http://www.msxarchive.nl/pub/msx/

Thanks all!
Post by jugac64-***@public.gmane.org [chameleon_64]
Hi, I will share how I make work the SMX2 core, just in case any of you want to test it.
First, you need to download the last version of the core from
http://retroramblings.net/?p=905
http://retroramblings.net/downloads/ChameleonOCMSX-20140825.zip
If you already downloaded the first release, please re-download it because
Alastair did some corrections and re-uploaded it with the same name.
Download it again to be sure.
Just in case
 DON’T FLASH THE CORE ON SLOT 0! Use any other core’s slot.
http://www.msxpro.com/de0.html
You need a small SD card (not SDHC) which needs to be FAT16 formatted. I
https://www.sdcard.org/downloads/formatter_4/
I am using a SanDisk 1GB MicroSD with SD card adapter, and it works pretty
well with the core.
On the SD card root you need to have: the BIOS (bios_m2p.rom), the DOS
(MSXDOS2) and ExecROM. On the website it is commented that the BIOS file
should be the first file on the SD Card, so they recommended saving this
file first, and then the others.
http://www.anerty.net/software/file/DriveSort.php
(Also it seems that MSX2 DOS doesn’t sort the files inside a directory,
but just in case I renamed the games roms with letters below “bios_m2p”).
This package from the website contains all the required files (BIOS, DOS
and EXECRom). Just download it and copy the files to the SD card (first
http://www.msxpro.com/hardware/de0_ocm/cartao_de_boot_de0.rar
“Space Manbow (1989) (Konami) (J).zip”
From MSX2 Gamebase collection (unzip it and copy the rom to the SD card
root, and rename it with a short name like spma.rom).
When the core is launched for first time, only a black screen appears. But
after pressing the Chameleon’s right blue button, the core resets and
voila
 the MSX2 splash screen appears, very nice!
On the DOS, you can type “DIR” to see the sd card content.
romload spma.rom / r
/ r means to execute the rom immediately after loading it.
If the rom starts well, whenever you press the right button it will reload
the rom, so to start again and load another rom, apparently you need to
reboot the Chameleon.
Space Manbow is very nice and have a great music! Thanks Alastair for
porting the MSX2 core.
jugac64-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org [chameleon_64]
2014-09-13 23:04:28 UTC
Permalink
Just one more comment :-)


I reflashed the C64 core with Tobias’s rom-menu-sd-abort-hack.zip but I still need to reboot the first time with the right TC64 button. I guess it is an issue with my micro SD card.


Thanks Fierman for the link! A lot of MSX/MSX2 stuff there.


It seems that most Konami’s roms are working well with the core, if you want to find quickly some games to test, download this zipped file and copy the games to your MSX2’s SD card root:


http://www.msxarchive.nl/pub/msx/games/roms/konamigames.zip


I discovered that when you are in the DOS, pressing the TAB key it will print the file names, so there it is no need to type them.


Just write “romload” (press TAB until you find the rom) “/r” and you are done.


Enjoy the MSX2!
Tobias tobias-S0d+oa0fsY4@public.gmane.org [chameleon_64]
2014-10-01 13:14:25 UTC
Permalink
Post by jugac64-***@public.gmane.org [chameleon_64]
Just one more comment :-)
I reflashed the C64 core with Tobias’s rom-menu-sd-abort-hack.zip but I
still need to reboot the first time with the right TC64 button. I guess it
is an issue with my micro SD card.
i am trying to find out how to fix this on the menu side at the moment...
however i wasn't successful yet :( currently i can *sometimes* start the core
directly from the menu, sometimes not. kind of weird and unpredictable :/

i think one thing that could improve the situation would be to make the OSD
retry more often after non successful sd card init... (the tc64 menu system
would keep doing it for a couple of seconds, ie start it all over again if the
card doesn't respond. it seems necessary sometimes, for some cards.)
--
http://www.icomp.de http://wiki.icomp.de


------------------------------------
Posted by: Tobias <tobias-S0d+***@public.gmane.org>
------------------------------------
robinsonb5-/E1597aS9LQAvxtiuMwx3w@public.gmane.org [chameleon_64]
2014-10-01 18:47:00 UTC
Permalink
Hi,

Yes, I plan to do that. Currently I do try several times, but I don't repeat the burst of SPI clocks with the card deselected, which is the first part of the initialisation sequence - that might well help.

How quickly is it giving up and printing the error message? And which message are you getting?

All the best
--
Alastair M. Robinson
Tobias tobias-S0d+oa0fsY4@public.gmane.org [chameleon_64]
2014-10-01 18:54:54 UTC
Permalink
Post by robinsonb5-/***@public.gmane.org [chameleon_64]
Hi,
Yes, I plan to do that. Currently I do try several times, but I don't
repeat the burst of SPI clocks with the card deselected, which is the first
part of the initialisation sequence - that might well help.
How quickly is it giving up and printing the error message? And which
message are you getting?
the message comes up pretty much immediatly (as in, it is there when the
monitor is done resyncing)... and says:

initializing sd card...
sd card reset failed!
loading bios failed
--
http://www.icomp.de http://wiki.icomp.de


------------------------------------
Posted by: Tobias <tobias-S0d+***@public.gmane.org>
------------------------------------
robinsonb5-/E1597aS9LQAvxtiuMwx3w@public.gmane.org [chameleon_64]
2014-10-01 20:00:54 UTC
Permalink
Hi,

And pressing the reset button doesn't help?

What happens if you take the card out, press the reset button, then re-insert the card immediately, while the "Initialising SD card..." message is displayed?

All the best
--
Alastair M. Robinson
Tobias tobias-S0d+oa0fsY4@public.gmane.org [chameleon_64]
2014-10-01 20:11:57 UTC
Permalink
Post by robinsonb5-/***@public.gmane.org [chameleon_64]
Hi,
And pressing the reset button doesn't help?
What happens if you take the card out, press the reset button, then
re-insert the card immediately, while the "Initialising SD card..." message
is displayed?
just pressing the reset (right) button makes it work (always) - which makes me
think that just repeating the init sequence some more times will do the trick
:)
--
http://www.icomp.de http://wiki.icomp.de


------------------------------------
Posted by: Tobias <tobias-S0d+***@public.gmane.org>
------------------------------------
Tobias tobias-S0d+oa0fsY4@public.gmane.org [chameleon_64]
2014-10-03 11:37:52 UTC
Permalink
Post by Tobias tobias-S0d+***@public.gmane.org [chameleon_64]
Post by robinsonb5-/***@public.gmane.org [chameleon_64]
Hi,
And pressing the reset button doesn't help?
What happens if you take the card out, press the reset button, then
re-insert the card immediately, while the "Initialising SD card..." message
is displayed?
just pressing the reset (right) button makes it work (always) - which makes
me think that just repeating the init sequence some more times will do the
trick
:)
mmmh i took a quick peek on the OneChipMSX repository... i am a bit confused
on what part of the code (z80 or ZPU?) handles this stuff... could you give
some hints? :) it seems you are moving from doing it using the z80 to doing it
all in the ZPU? right?
--
http://www.icomp.de http://wiki.icomp.de


------------------------------------
Posted by: Tobias <tobias-S0d+***@public.gmane.org>
------------------------------------
robinsonb5-/E1597aS9LQAvxtiuMwx3w@public.gmane.org [chameleon_64]
2014-10-03 17:22:33 UTC
Permalink
Hi,

That's right - the original OCMSX has a small Z80 ROM which has very rudimentary support for loading the BIOS from SD card, but is really intended to load it from an EPCS flash device.

Since I needed to add an extra CPU to handle the OSD and replace the DIP switches, and since there's no public source for (that version of) the Z80 boot ROM, I migrated the BIOS loading to the ZPU, so Firmware/CtrlROM/spi.c is where the SD initialization code currently lives.

All the best
--
Alastair M. Robinson
robinsonb5-/E1597aS9LQAvxtiuMwx3w@public.gmane.org [chameleon_64]
2014-09-14 11:05:01 UTC
Permalink
HI,

Many thanks for the quick-start guide - that's most helpful! I plan to make a static page on RetroRamblings for the core once it's a bit more complete - and I'll include this information if you've no objection.

(The part about the BIOS needing to be the first file on the card doesn't actually apply to the Chameleon port; that was a limitation of the OCMSX's tiny Z80 boot ROM which I'm bypassing because it expects to be able to talk to a flash chip that the Chameleon doesn't have.)

I'm working on some OSD code at the moment, and will try and get it integrated into the core soon, then we can see some debugging messages during bootup.

I'm not sure yet how to clear a cartridge image so we can get back to MSXDOS without power-cycling the Chameleon, but it's annoying enough that I definitely want to fix it!

All the best
--
Alastair M. Robinson
fierman fierman-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org [chameleon_64]
2014-09-14 13:10:19 UTC
Permalink
Juan, Alastair, all,

It might amuse you to know that diskdrive emulation is already working out
of the box :)
See this page for some explanation:
http://msxbanzai.tni.nl/computers/ese3.html

In short: download http://msxbanzai.tni.nl/computers/ese3.zip , extract the
3 tools in the TOOLS directory to the root of your sd card, and you can
mount/assign diskimages.
usage: EP DISKIMAGE.DSK B: , after which you can address the mounted
diskimage from the B:\ device
You can also use the /r option (EP DISKIMAGE.DSK /B /R) , after which the
MSX will reboot and load from the assigned image.

(The only (minor) disappointment with the core so far: Metal Gear 2 (Solid
Snake) crashes :))
Post by robinsonb5-/***@public.gmane.org [chameleon_64]
HI,
Many thanks for the quick-start guide - that's most helpful! I plan to
make a static page on RetroRamblings for the core once it's a bit more
complete - and I'll include this information if you've no objection.
(The part about the BIOS needing to be the first file on the card doesn't
actually apply to the Chameleon port; that was a limitation of the OCMSX's
tiny Z80 boot ROM which I'm bypassing because it expects to be able to talk
to a flash chip that the Chameleon doesn't have.)
I'm working on some OSD code at the moment, and will try and get it
integrated into the core soon, then we can see some debugging messages
during bootup.
I'm not sure yet how to clear a cartridge image so we can get back to
MSXDOS without power-cycling the Chameleon, but it's annoying enough that I
definitely want to fix it!
All the best
--
Alastair M. Robinson
jugac64-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org [chameleon_64]
2014-09-14 14:09:18 UTC
Permalink
Thanks Fierman! great, now we have diskdrive support also.


And great you are doing these improvements Alastair! Of course you can use the small guide with the core, but some correction must be added to it.


For example, I later understood that the only requested files to boot the MSX2 core are:


bios_m2p.rom
COMMAND2.COM
MSXDOS2.SYS
MSXDOS.SYS


ExecROM and Romload are applications for loading ROM files, more info about them here:


http://sourceforge.net/projects/execrom/


http://www.tni.nl/products/romload.html


By the way, there it is a newer version of Romload, you can download it from the above website.


Some more cool MSX2 tips:


Type “mode 80” to run the core in 80 columns screen.
Type “command2 help” to see all the available MSX-DOS2 commands (pretty nice DOS).
Type “basic” to launch the Basic interpreter.
robinsonb5-/E1597aS9LQAvxtiuMwx3w@public.gmane.org [chameleon_64]
2014-09-14 18:43:58 UTC
Permalink
Hi :)

Brilliant - thanks for the explanation about disk images!

At what point does mgear2 crash, by the way? I've had the cartridge version running here - and was much impressed by the music. I can't figure out how to sneak through the hole in the fence, though - but up to that point it works here.

All the best
--
Alastair M. Robinson
Loading...