Re: [hatari-devel] Dynamic Bus Sizing and I/O Register Access |
[ Thread Index | Date Index | More lists.tuxfamily.org/hatari-devel Archives ]
>The chip is a custom designed chip for direct memory access. It has 32-bit long command/status registers. They
contain readable status bits in 0x00XX0000 and >writeable command bits in 0xXX000000. The registers are always accessed at their base address 0x02000010 using byte access on early 68030-only software and >long access on later software that runs on both 68030
and 68040.
>
>Access on 68030 is for example using MOVE.B (An),Dn or BTST.B #<data>.W,(An) for read and using MOVE.B #<data>.B,(An)
or CLR.B (An) for write.
>
>Correction: Readable status bits at 0xXX000000 and writeable command bits at 0x00XX0000.
More details, please. Same long write compared to byte write (and read) code needed.
Also above byte wide examples misses the address, at least last 2 address bits are needed.
Is it possible status bits are returned in all 4 bytes? (even if officially you are
supposed to use bits 24-31 and ignore others, it might have simplified the internal chip design). Are the all registers similar? Long wide but only return byte wide data?
From: Andreas Grabher <andreas_g86@xxxxxxxxxx>
Sent: 16 January 2024 21:06 To: hatari-devel@xxxxxxxxxxxxxxxxxxx <hatari-devel@xxxxxxxxxxxxxxxxxxx> Subject: Re: [hatari-devel] Dynamic Bus Sizing and I/O Register Access Am 16.01.2024 um 19:19 schrieb Andreas Grabher <andreas_g86@xxxxxxxxxx>: Correction: Readable status bits at 0xXX000000 and writeable command bits at 0x00XX0000. |
Mail converted by MHonArc 2.6.19+ | http://listengine.tuxfamily.org/ |