- Joined: 11 Dec 2019
- Posts: 30
- Location: Finland
|
WLA, Sega WAV-writer and a real SC3000
Posted: Thu Feb 13, 2020 9:21 am
|
Hello again.
In a previous post I mentioned about a game written in assembly which I ported from MSX to SC3000. Game works great in emulators.
But as it's a ROM, I'm unable to get it to the real SC3000. I've tried and tried to compile the source to a non-ROM so that I could create a .WAV of it with SEGA WAV-writer. But I don't really understand how to make non-ROMS with WLA. For example if I want the code to be at &HB000-&HB7FF, how would I do that with WLA?
I tested with SEGA WAV-writer to create a .wav of a binary file with 100 NOP's and a RET. I disabled "BASIC Program Structure" and entered "Start Address" to &hb000. Result is a .wav. But when I try to load it into SC3000, it doesn't load (find) it. Proper tape dumps do load correctly and even run.
That's it. More questions most likely following later.
Thanks for any help.
/helmha
|
- Site Admin
- Joined: 19 Oct 1999
- Posts: 14740
- Location: London
|
Posted: Thu Feb 13, 2020 10:12 am
|
You need to set up your "memory map" with a slot at $b000 and size $100, then the "ROM bank map" with a single bank in that slot. That tells WLA to assemble the code to expect to be at $b000 in memory but at location 0 in the binary.
|
- Joined: 11 Dec 2019
- Posts: 30
- Location: Finland
|
Posted: Thu Feb 13, 2020 1:23 pm
|
Maxim wrote You need to set up your "memory map" with a slot at $b000 and size $100, then the "ROM bank map" with a single bank in that slot. That tells WLA to assemble the code to expect to be at $b000 in memory but at location 0 in the binary.
Thanks, I will try that.
Meanwhile, I relocated the code to $9900. Did a dirty hack with takeda sc3000 emulator with a BASIC-line which calls the machine code, some POKE-stuff (end of BASIC-program, &h8162-&h8163) and then saved to "cassette" with the emulator. And the resulting .wav loads nicely to my real SC3000! Haha, this is so much fun :D
[edit]Maxim's solution did work, thanks![/edit]
|