Jump to content
IGNORED

Upcoming Jaguar Game Drive Cartridge


SainT

Recommended Posts

I believe that to say make a phrase read/write the GPU would fetch or write twice to the main RAM, I doubt the gateway does a 64bit r/w operation, I don't think it forms part of the RISC core.

 

 

I think you are right. The info is split into little piece throughout the doc:

v8, page 36:

The only difference to the programmer is that only 32-bit transfers are possible within the

GPU local address space, whereas 8, 16, 32 or 64-bit transfers are permitted externally.

 

This even means: No way to phrase load from CD-ROM address range and phrase store to internal RAM. Reading the high-long from the HW register and then storing it separately is complete waste of time.

  • Like 2
Link to comment
Share on other sites

GPU as a 32-bit bus and so, GPU internal access is 32-bit.

 

But, it can do 64-bit external access because the Hi-data register is part of the 64-bit Gateway interconnection.

 

To speed up DRAM memory read/write, i will probably advise to use loadp/storep, but for ROM1 address space, i think it's more easiest to use standard load/store for optimisation.

with loadp you have to be sure that hidata is properly loaded before doing the storep or hidata read, this implies :

- to wait that the destination register is written back using the scoreboard detection

Or

- to insert enough usefull instruction before the storep instruction or hidata read (see my ST2Jag optimised code from Orion_'s original code)

 

 

When it's DRAM memory, you know that the memory controller will take the same number of bus cycle to read the data than standard load/store so it's easy to insert some instructions (supposing the bus is not taken by a highest priority) .

But with ROM1, you don't (generally) know the width of the card and the selected speed, in any case, it will take at least 2x5 cycles to read 64-bit data for highest ROM1 speed with 32-bit size.

 

If you use GPU interrupts :

- don't use external load when using loadp

- if you access ROM1 with loadp and can't do enough instruction, GPU will be in scoreboard wait state as you will probably need the loadp result, and so delay the interrupt

in other word, you will kill GPU performance as it will be very difficult to keep the instruction flow.

Using standard load will reduce the overrall pending time.

 

 

Anyway, the speedest way to copy data will be the Blitter in phrase mode (if there is enough data to copy comparing to the time to set blitter registers), but it also implies that the blitter need to be available to do that.

Edited by SCPCD
  • Like 6
Link to comment
Share on other sites

Is this a BIOS replacement or monitoring the address lines?

I've recompiled the VLM boot ROM present on the JagCD with modifications to run on the JagSD and also written a new bios. It's pretty bare bones, but it would seem enough to run FMV and a game. I'll need to run through all the CD images I can find and see what needs tweaking. But the important thing is the bios is fully under my control, so it can be tweaked without trouble, so it should be possible to get all CD games working now.

  • Like 18
Link to comment
Share on other sites

I've recompiled the VLM boot ROM present on the JagCD with modifications to run on the JagSD and also written a new bios.

(assuming your married...)

Spouse 1

"So what did you do today honey?"

 

Spouse 2

"Oh... Nothing big, just wrote a new working BIOS for the Jaguar CD."

 

Spouse 3

"Really? Is that all?"

 

To us commoners, this seems pretty amazing. I am super excited for this by the way. Thanks to everyone here that has worked with SainT to get through this road block, and of course thanks to SainT for moving mountains.

  • Like 5
Link to comment
Share on other sites

I've recompiled the VLM boot ROM present on the JagCD with modifications to run on the JagSD and also written a new bios. It's pretty bare bones, but it would seem enough to run FMV and a game. I'll need to run through all the CD images I can find and see what needs tweaking. But the important thing is the bios is fully under my control, so it can be tweaked without trouble, so it should be possible to get all CD games working now.

Ok, so all ULS CD images should fail as they reload (And patch to fix cd_swap) the bios.

 

However, this isn't a problem because it loads a track to RAM so just put that on the SD card as a .bin file!

  • Like 1
Link to comment
Share on other sites

(assuming your married...)

Spouse 1

"So what did you do today honey?"

 

Spouse 2

"Oh... Nothing big, just wrote a new working BIOS for the Jaguar CD."

 

Spouse 3

"Really? Is that all?"

...Spouse 3? Feeling a bit polygamous, are we? :D Reminds me of 7:24 from a Ren & Stimpy cartoon...

 

More seriously: this is great news!

 

Link to comment
Share on other sites

...Spouse 3? Feeling a bit polygamous, are we? :D Reminds me of 7:24 from a Ren & Stimpy cartoon...

 

More seriously: this is great news!

 

Me at work yesterday after having to get multiple teams to work on something, "I feel like a mediator for a polygamist family getting a divorce!" Could you imagine how awful that would be?

 

More on topic... Woo hoo! Wonder how close we are to a order list?

Link to comment
Share on other sites

(assuming your married...)

Spouse 1

"So what did you do today honey?"

 

Spouse 2

"Oh... Nothing big, just wrote a new working BIOS for the Jaguar CD."

 

Spouse 3

"Really? Is that all?"

 

To us commoners, this seems pretty amazing. I am super excited for this by the way. Thanks to everyone here that has worked with SainT to get through this road block, and of course thanks to SainT for moving mountains.

 

Lol, sadly it's all too true. I usually get "I wish I understood what you are talking out". Sigh.

Link to comment
Share on other sites

Ok, so all ULS CD images should fail as they reload (And patch to fix cd_swap) the bios.

 

However, this isn't a problem because it loads a track to RAM so just put that on the SD card as a .bin file!

 

Ok, cool, if it's just loading a track and using that I can either patch in the CD image converter or do the patch at runtime on the micro as you suggest. So all good.

 

Not sure if I need to handle CD swapping, though? Are there any multi-cd games?

  • Like 1
Link to comment
Share on other sites

I dont recall if I have asked already, but will it be possible to load mp3 (or other audio) files to use the VLM?

 

You should be able to use direct CD rips converted into JCD's. It will detect the disc type and either boot the CD or boot into VLM. Not tested yet, but I should be able to get it working I believe.

  • Like 4
Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...