Prototype #3?

Chat about anything CX16 related that doesn't fit elsewhere
User avatar
Cyber
Posts: 482
Joined: Mon Apr 27, 2020 7:36 am

Prototype #3?

Post by Cyber »



1 hour ago, EMwhite said:




PETSCII Robots.  The Channel is hosted on Apple2Infinitum



Thank you! There is actually some cool stuff there to see.

BruceMcF
Posts: 1336
Joined: Fri Jul 03, 2020 4:27 am

Prototype #3?

Post by BruceMcF »



On 7/14/2021 at 12:10 AM, ZeroByte said:




It's a shame that PS/2 doesn't quite lend itself to using the built-in shift register functionality of the VIA 6522 chips. ...



That seems to be going around ... the VIA serial clock register is not the right clock/shift polarity for SD card SPI mode, either.

ZeroByte
Posts: 714
Joined: Wed Feb 10, 2021 2:40 pm

Prototype #3?

Post by ZeroByte »


You could make the SNES controllers work with it, but only one per VIA, and still having to use at least one GPIO pin to act as the strobe line. The VIA could shift in 8 bits and then automatically shift in the next 8 bits after each read. You'd just have to pulse the strobe yourself - I think you'd be able to pulse the strobe, then read the upper 8 bits so it would go ahead and shift in the first 8 low-order bits. It'd be nominally faster than doing it manually with the CPU, but not so much faster that it'd make noticeable savings on the VSYNC IRQ routine's performance.

BruceMcF
Posts: 1336
Joined: Fri Jul 03, 2020 4:27 am

Prototype #3?

Post by BruceMcF »



On 7/15/2021 at 5:09 AM, ZeroByte said:




You could make the SNES controllers work with it, but only one per VIA, and still having to use at least one GPIO pin to act as the strobe line. The VIA could shift in 8 bits and then automatically shift in the next 8 bits after each read. You'd just have to pulse the strobe yourself - I think you'd be able to pulse the strobe, then read the upper 8 bits so it would go ahead and shift in the first 8 low-order bits. It'd be nominally faster than doing it manually with the CPU, but not so much faster that it'd make noticeable savings on the VSYNC IRQ routine's performance.



Yes, the SNES controller is very close to half of an SPI port, where you typically need one GPIO per selectable device. The main difference is you strobe the select line rather than holding it in the selected state.

But it can't read 4 SNES controllers that way with 2VIA's.



With a dual 2x4 demultiplexor maybe you could have one GPIO select the controller to strobe and read, and also select which clock line gets the clock signal. I don't recall offhand whether the SNES Data line works correctly to be bussed in that situation, or whether the controller selector has to also isolate the pin it is trying to read ... obviously an active high 3x8 demux with the correct outputs wired-or together can do that if necessary.

For four controllers, you'd need two 3x8 demuxes for the select and SCLK lines and it would be REALLY handy if the MISO can work bussed. But that would use 3GPIO plus the serial shift register, so it would take the serial shift register off of the User Port, but free up one GPIO.

User avatar
Strider
Posts: 522
Joined: Thu Sep 03, 2020 4:34 pm
Location: In my time machine, Circa 1985.
Contact:

Prototype #3?

Post by Strider »


I simply want to say ....

That's a beautiful thing!

Looking at a newly designed, modern 1980's motherboard, going through the dev process.

Keep up the great work!

Image
A classic geek & family man who enjoys all things retro! Computers, hardware, games, electronics, etc. Expert at nothing, professional hobbyist, and old-school blogger!
ZeroByte
Posts: 714
Joined: Wed Feb 10, 2021 2:40 pm

Prototype #3?

Post by ZeroByte »


image.png.3a882fc0a9f06799da69759cebc1d62b.png

(someone had to do it)

Post Reply