+Stephen Moss Posted December 10, 2021 Share Posted December 10, 2021 Hello everyone, I have a non functioning Jaguar, well not fully, it will run software loaded in the RAM via SkunkBaord bit not from a cartridge or a ROM flashed to the SkunkBoard, which leads me to conclude the problem may lie with reading the cartridge space. My plan for testing that theory was to create a ROM that was all known data, flash it to the SkunkBoard, then write a new Skunk Console program that would run in RAM and use that to read the flashed data ROM. However, it has recently occurred to me that probably would not work as the SkunkBoard is probably not be releasing the Cartridge space to the Jaguar until you try to run a flashed ROM. So do any of you more experience SkunkBoard users/programmers know if it is possible to use a program loaded into RAM to read a ROM flashed to the Skunkboard, and can you write code that uses the Skunk Console in JagStudio as that may be easier then relearning a little assembler when it comes to writing my test program. Stephen Quote Link to comment Share on other sites More sharing options...
+CyranoJ Posted December 10, 2021 Share Posted December 10, 2021 What you flash to ROM stays until you erase or overwrite it. Upload a ROM, then upload direct to RAM and run. It used to be how I'd quickly test my games during dev by keeping the static data in ROM and then loading a binary against it. Much quicker than uploading 4mb each time. Note: you can't write to the first 8k of ROM with a skunkboard. 1 Quote Link to comment Share on other sites More sharing options...
+cubanismo Posted December 10, 2021 Share Posted December 10, 2021 Even easier, jcp -d will dump the currently flashed ROM back to the computer, no custom code needed. It basically uploads to RAM and runs a small program built into JCP that reads from the cartridge ROM to RAM, then sends the data back to the USB chip on the cart for download to the host computer. For an example of doing this, see the bring up scripts used to validate new Skunkboards: https://github.com/cubanismo/bjlskunkflash As noted, this won't normally validate the first 8k of ROM space, but if you flash then dump a 6MB cart using the latest version of JCP, it will download the first 8k ROM address space, just not the first 8k of the Skunk flash chip. 1 Quote Link to comment Share on other sites More sharing options...
+Stephen Moss Posted December 13, 2021 Author Share Posted December 13, 2021 On 12/10/2021 at 2:09 PM, cubanismo said: Even easier, jcp -d will dump the currently flashed ROM back to the computer, no custom code needed. Wouldn't the SkunkBoard just do an internal read of the ROM space for that? I want to test if the Jaguar hardware can access the cartridge space so I need to be able to upload and run code in RAM that then use the Jaguars Data and Address bus to access the cartridge space similar to how the Jaguar would when reading a cartridge, i.e. Read data at cartridge address x store in register R1 compare value in R1 with reference in register R2 if there is a match the read was successful otherwise the read failed to try and identify if there is a problem reading the entire cartridge space (possible memory controller issue) or just certain address (possible address bus issue). Quote Link to comment Share on other sites More sharing options...
+cubanismo Posted December 13, 2021 Share Posted December 13, 2021 5 hours ago, Stephen Moss said: Wouldn't the SkunkBoard just do an internal read of the ROM space for that? No. It's just 68k code: https://github.com/cubanismo/skunk_jcp/blob/master/jcp/romdump6.s It moves data directly from ROM address to the USB chip mailbox address on the cartridge, but since that move is an instruction running on the 68k, it's going over the Jag bus in between. 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.