TF CD32 Riser Revision 2 Design Complete

TF CD32 Riser

Moderators: terriblefire, Terriblefire Moderator

User avatar
arkadiusz.makarenko
Moderator Team
Moderator Team
Posts: 1208
Joined: Wed Jun 19, 2019 7:36 am
Location: Edinburgh

Re: TF CD32 Riser Revision 2 Design Complete

Post by arkadiusz.makarenko »

CD32 gamepad button support has been implemented.
The only thing is that ATK doesn't detect it. (Buttos still can be tested though, but message on the bottom of the screen say not detected). It is looking at 7+ bits and is looking for gamepad id. I do provide it, but this still doesn't do the trick.
It don't think it is relevant to games anyway.

Now it is time to test it in real life.
Do not trust people. They are capable of greatness.
~ Stanislaw Lem
matt020
Posts: 292
Joined: Sun Sep 29, 2019 9:17 am
Location: West Australia

Re: TF CD32 Riser Revision 2 Design Complete

Post by matt020 »

Just letting you know that this thread so far has reached more than 32 thousand views!!!
theq
Posts: 114
Joined: Tue Dec 18, 2018 7:16 pm
Location: North of the Wall

Re: TF CD32 Riser Revision 2 Design Complete

Post by theq »

And if you have a board to spare, then I can relieve you of it (paid for, of course) ;)
User avatar
arkadiusz.makarenko
Moderator Team
Moderator Team
Posts: 1208
Joined: Wed Jun 19, 2019 7:36 am
Location: Edinburgh

Re: TF CD32 Riser Revision 2 Design Complete

Post by arkadiusz.makarenko »

matt020 wrote: Sat Oct 31, 2020 1:04 pm Just letting you know that this thread so far has reached more than 32 thousand views!!!
... Yes 2/3 of this traffic is me reading left by TF notes, over and over again :D
Do not trust people. They are capable of greatness.
~ Stanislaw Lem
User avatar
arkadiusz.makarenko
Moderator Team
Moderator Team
Posts: 1208
Joined: Wed Jun 19, 2019 7:36 am
Location: Edinburgh

Re: TF CD32 Riser Revision 2 Design Complete

Post by arkadiusz.makarenko »

Mouse clicks do not work in Syndicate (and Populus ... so I assume all Bulfrog games) for some reason.
It may be the same like with Turrican gamepad directions... some unusual math for button calculations.
Do not trust people. They are capable of greatness.
~ Stanislaw Lem
User avatar
arkadiusz.makarenko
Moderator Team
Moderator Team
Posts: 1208
Joined: Wed Jun 19, 2019 7:36 am
Location: Edinburgh

Re: TF CD32 Riser Revision 2 Design Complete

Post by arkadiusz.makarenko »

OK, next weirdness solved!

Bullfrog games (and I assume old titles) might be looking for CIAAPRA values not in BFE001, but BFE0FF - which would be visible in my 5 Address decode as 3F... Took me a while to spot it, even if I did see Bullfrog example assembly to read clicks online, just failed my math, and I wrongly decoded address for 1F, not 3F ...

OK :) I have seen some more weirdness in ATK that this register might be located in shadow register under address BFE003 ...<- I will ignore this for now.
Do not trust people. They are capable of greatness.
~ Stanislaw Lem
User avatar
arkadiusz.makarenko
Moderator Team
Moderator Team
Posts: 1208
Joined: Wed Jun 19, 2019 7:36 am
Location: Edinburgh

Re: TF CD32 Riser Revision 2 Design Complete

Post by arkadiusz.makarenko »

To get most floppy signals I need to do one more CIA register.

I am not sure about DSKINDEX and MTR0

Code: Select all

FLAG  DSKINDEX*    Disk index pulse ($BFDD00, bit 4).  Can be used to
                   create a level 6  interrupt.

Code: Select all

   22  INDEX*  I/O   Index is a pulse generated once per disk revolution,
                     between the end and beginning of cylinders.  The
                     8520 can be programmed to conditionally generate a
                     level 6 interrupt to the 680x0 whenever the INDEX*
                     input goes active.

Code: Select all

BFE001    pra     /FIR1 /FIR0  /RDY /TK0  /WPRO /CHNG /LED  OVL
BFD100    prb     /MTR  /SEL3 /SEL2 /SEL1 /SEL0 /SIDE  DIR  /STEP


CHNG - CIAAPRA BFE001
INUSE - not connected
INDEX - _FLAF CIA  $BFDD00
SEL0 - CIABPRB BFD100
MTR0 - _MTR ? CIABPRB BFD100
DIR  - CIABPRB BFD100
STEP - CIABPRB BFD100 
DKWD - STM32 pin
DKWE - STM32 pin  
TK0  - CIAAPRA BFE001 
WPRO - CIAAPRA BFE001
DKRD - STM32
SIDE - CIABPRB BFD100
RDY - CIAAPRA BFE001
Do not trust people. They are capable of greatness.
~ Stanislaw Lem
terriblefire
Moderator Team
Moderator Team
Posts: 5389
Joined: Mon Aug 28, 2017 10:56 pm
Location: Glasgow, UK

Re: TF CD32 Riser Revision 2 Design Complete

Post by terriblefire »

Not sure you strictly need DSKINDEX but you would send it before you start sending data. its meant to help disks sync when they see an index MFM magic number from memory. i.e. start of a track ?
———
"It is not necessarily a supply voltage at no load, but the amount of current it can provide when touched that
indicates how much hurting you shall receive."
User avatar
arkadiusz.makarenko
Moderator Team
Moderator Team
Posts: 1208
Joined: Wed Jun 19, 2019 7:36 am
Location: Edinburgh

Re: TF CD32 Riser Revision 2 Design Complete

Post by arkadiusz.makarenko »

terriblefire wrote: Sun Nov 01, 2020 8:39 pm Not sure you strictly need DSKINDEX but you would send it before you start sending data. its meant to help disks sync when they see an index MFM magic number from memory. i.e. start of a track ?
Based on this project : http://aminet.net/package/docs/hard/cd3 ... y#contents
Index is generally not used except few cases...
cd32floppydrive.png
cd32floppydrive.png (10.35 KiB) Viewed 3627 times
Similar with Motor On signal... we don't have motor so why we would need motor control signals :D
Do not trust people. They are capable of greatness.
~ Stanislaw Lem
terriblefire
Moderator Team
Moderator Team
Posts: 5389
Joined: Mon Aug 28, 2017 10:56 pm
Location: Glasgow, UK

Re: TF CD32 Riser Revision 2 Design Complete

Post by terriblefire »

arkadiusz.makarenko wrote: Sun Nov 01, 2020 9:16 pm
terriblefire wrote: Sun Nov 01, 2020 8:39 pm Not sure you strictly need DSKINDEX but you would send it before you start sending data. its meant to help disks sync when they see an index MFM magic number from memory. i.e. start of a track ?
Based on this project : http://aminet.net/package/docs/hard/cd3 ... y#contents
Index is generally not used except few cases...

cd32floppydrive.png

Similar with Motor On signal... we don't have motor so why we would need motor control signals :D
You can simply pulse the index before you start sending a tracks worth of MFM data. That would do the job.

Motor on would indicate that you should periodically pulse the index and send a tracks worth of mfm. Really its just used by drivers so they know data is coming.
———
"It is not necessarily a supply voltage at no load, but the amount of current it can provide when touched that
indicates how much hurting you shall receive."
Post Reply

Return to “TF CD32 Riser”