What is the NEC D91317GD's purpose?

Started by Sephirothkefka, 07/31/2014, 02:06 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Sephirothkefka

One day I was curious to see what made the TG16 CD tick after being impressed with Rondo of Blood 3 layer parallax scrolling. I saw 2 main chips: the Oki MSM5205 (which I know of) and the NEC D91317GD which seems to be a very unusual chip. I saw no info on this at all. It also seems to be in the Super CD ROMĀ² dock. Just what is that chips purpose? Is it a graphics chip? A sound controller? I'm just so confused... :cry:

VestCunt

I'm not TG16 technical, but remember that the CD-ROM only adds red-book audio and a media format with more storage space, i.e., CD's. The parallex and graphics processing is all in the core hardware.
Topic Adjourned.

NecroPhile

It adds ADPCM too, which is the Oki chip.
Ultimate Forum Bully/Thief/Saboteur/Clone Warrior! BURN IN HELL NECROPHUCK!!!

Sephirothkefka

Quote from: guest on 07/31/2014, 12:11 PMIt adds ADPCM too, which is the Oki chip.
I know that part as I said.
Quote from: guest on 07/31/2014, 12:05 PMI'm not TG16 technical, but remember that the CD-ROM only adds red-book audio and a media format with more storage space, i.e., CD's. The parallex and graphics processing is all in the core hardware.
Hmm, wgen I looked up the graphics hardware it said it can do only 1 background layer :P

NecroPhile

Ultimate Forum Bully/Thief/Saboteur/Clone Warrior! BURN IN HELL NECROPHUCK!!!

thesteve


Sephirothkefka


Sephirothkefka



Sadler

Quote from: Sephirothkefka on 07/31/2014, 02:05 PMOh sweet! Well now I need to figure out what makes that 3 layer scrolling in Rondo.
Which parts are you thinking of? I don't think there's anything fancy in Rondo. I think some areas use scan line scrolling + dynamic tiles + sprites in a pretty convincing manner though.

Sephirothkefka

Quote from: Sadler on 07/31/2014, 03:22 PM
Quote from: Sephirothkefka on 07/31/2014, 02:05 PMOh sweet! Well now I need to figure out what makes that 3 layer scrolling in Rondo.
Which parts are you thinking of? I don't think there's anything fancy in Rondo. I think some areas use scan line scrolling + dynamic tiles + sprites in a pretty convincing manner though.
So developer tricks is what you are saying?

Sadler

#11
Yeah. I mean, basically the same tricks used for parallax in every PCE game that features parallax. Other ways the PCE can do parallax include using the background color like the first level of Magical Chase (and I'm somewhat convinced the first level rainbows in Star Parodier), and maybe palette rotation. I don't know if palette rotation is used to simulate parallax in any PCE game.

Anyway, Rondo, while a very pretty game, is not doing anything that other PCE games don't do and it's not using any special hardware to do it. :)

Sephirothkefka

Quote from: Sadler on 07/31/2014, 04:50 PMYeah. I mean, basically the same tricks used for parallax in every PCE game that features parallax. Other ways the PCE can do parallax including using the background color like the first level of Magical Chase (and I'm somewhat convinced the first level rainbows in Star Parodier), and maybe palette rotation. I don't know if palette rotation is used to simulate parallax in any PCE game.

Anyway, Rondo, while a very pretty game, is not doing anything that other PCE games don't do and it's not using any special hardware to do it. :)
Ok, thanks! Thought it was that D91317 chip again :P

ccovell

http://forum.fobby.net/index.php?t=msg&goto=2088&

No info about the NEC chip, but it's likely just glue logic or port mapping hardware.

All the magic is in the PCE unit and the programmer's hands. ;-)

Sephirothkefka

Quote from: ccovell on 07/31/2014, 09:57 PMhttp://forum.fobby.net/index.php?t=msg&goto=2088&

No info about the NEC chip, but it's likely just glue logic or port mapping hardware.

All the magic is in the PCE unit and the programmer's hands. ;-)
That website looks very familiar while I was researching about the info of the D91317GD...

thesteve

It's a bit more than simple glue
It takes the CD info and delivers it to different systems
Has a memory mapper that drives CE on the non system ram chips
Calls IRQ to halt CPU,  so it can write to system ram

TurboXray

Quote from: thesteve on 08/01/2014, 03:48 AMIt's a bit more than simple glue
It takes the CD info and delivers it to different systems
Has a memory mapper that drives CE on the non system ram chips
Calls IRQ to halt CPU,  so it can write to system ram
You mean so the main CPU can transfer data to ram? There are no DMA units in the PCE CD setup, that halt the cpu and over write memory directly on the cpu's address bus. All memory transfer to the PCE external mapped ram (8k system, 64k CD, 192k SCD) is done by the CPU.

 Unless you mean ADPCM ram, which isn't on the PCE side - which does have a DMA from the CD unit to ADPCM ram independent of the CPU (cpu keeps running, doesn't have to poll ports, and isn't halted). There's no halting of the cpu because it can only access it via a port, so no need to. The interrupt request, afaik and have seen/used, is for ADPCM DMA streaming from the CD. It's to tell the CPU than the buffer is full and to switch the address in the ADPCM chip to play the new buffer position (continuous streaming). You need this for the ADPCM CPLAY bios routine. So no halting the cpu for transfer. All other interfacing with the CD unit/mcu/logic requires polling status ports by the man CPU.

thesteve

Yes the DMA chip can write directly to CPU ram when the IRQ pin is held low

TurboXray

You mean the /RDY pin? Holding down the IRQ pin does nothing but request a CPU interrupt (which doesn't halt the cpu or address/data bus in anyway). I'm pretty sure the cpu does not have tri-state or even buffered address/data bus lines (this has been talked about quite a few times over the years for making special hardware on the cart port, like a DMA chip to the VDC). So it won't be accessing anything in the base PCE unit (8k system ram, or ram on cart).

 *If* the base 64k CD work ram is behind some sort of bus arbitration logic chip, then the CPU could be halted with /RDY (which is only available on the back plane) and ram safely updated. But if the chip is capable of this, you can't access or use this feature. The system card bios routines have all been disassembled. All the routines manually read from the cd data interface port to transfer to CD work ram/etc. Not even the later updated/new BIOS routines via software (some late gen games did this) that directly access the CD ports/hardware - do anything like requesting some DMA mode.

 Like I said before, the only DMA request available is to ADPCM ram; again, it is not mapped to the cpu address bus so /RDY is not needed (you poll the ADPCM status port for an access slot for read/writes to the PORT. The cpu has no direct connection to ADPCM RAM). The ADPCM request does issue IRQ pin, if streaming mode is enabled, but doesn't halt the CPU. It interrupts main or sub code, and the CPU itself jumped to an interrupt vector to change the pointer of the ADPCM playback state. Again, the cpu isn't halted during ADPCM DMA.

 I think you're using some wrong terms/labels, or maybe thinking about the MCU on the cd base side? IRQ request and DMA are ADPCM functions only. ADPCM ram != CD ram. The only reason I'm making a clarification here, is that it would have been awesome if the CD unit could DMA directly to CD ram, like it can ADPCM ram. That would make realtime streaming data during game logic, soo much more flexible and powerful. As it is, huvideo wastes a lot of cpu resource polling and manually copying data from the CD port to CD ram. And that Warriors of Fate CD game wouldn't have been limited to 30 frame per second, interleaving game logic and reading from the CD unit every other frame.

Sephirothkefka

Quote from: TurboXray on 08/01/2014, 06:45 AMYou mean the /RDY pin? Holding down the IRQ pin does nothing but request a CPU interrupt (which doesn't halt the cpu or address/data bus in anyway). I'm pretty sure the cpu does not have tri-state or even buffered address/data bus lines (this has been talked about quite a few times over the years for making special hardware on the cart port, like a DMA chip to the VDC). So it won't be accessing anything in the base PCE unit (8k system ram, or ram on cart).

 *If* the base 64k CD work ram is behind some sort of bus arbitration logic chip, then the CPU could be halted with /RDY (which is only available on the back plane) and ram safely updated. But if the chip is capable of this, you can't access or use this feature. The system card bios routines have all been disassembled. All the routines manually read from the cd data interface port to transfer to CD work ram/etc. Not even the later updated/new BIOS routines via software (some late gen games did this) that directly access the CD ports/hardware - do anything like requesting some DMA mode.

 Like I said before, the only DMA request available is to ADPCM ram; again, it is not mapped to the cpu address bus so /RDY is not needed (you poll the ADPCM status port for an access slot for read/writes to the PORT. The cpu has no direct connection to ADPCM RAM). The ADPCM request does issue IRQ pin, if streaming mode is enabled, but doesn't halt the CPU. It interrupts main or sub code, and the CPU itself jumped to an interrupt vector to change the pointer of the ADPCM playback state. Again, the cpu isn't halted during ADPCM DMA.

 I think you're using some wrong terms/labels, or maybe thinking about the MCU on the cd base side? IRQ request and DMA are ADPCM functions only. ADPCM ram != CD ram. The only reason I'm making a clarification here, is that it would have been awesome if the CD unit could DMA directly to CD ram, like it can ADPCM ram. That would make realtime streaming data during game logic, soo much more flexible and powerful. As it is, huvideo wastes a lot of cpu resource polling and manually copying data from the CD port to CD ram. And that Warriors of Fate CD game wouldn't have been limited to 30 frame per second, interleaving game logic and reading from the CD unit every other frame.
Well you learn something new everyday.

thesteve

i do know the IRQ is sourced directly from the D91317 not either of the cd side processors
the cd system has 2 processors dedicated to command and data translation between the CD bus and the sony chipset
the D91317 appears to be the interface processor seperating the different systems (CD/ADPCM/syscard)
it also controls a set of tristate bus chips between CPU and interface bus