News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_ComSoft6128

Arduino IO card for Amstrad CPC 6128

Started by ComSoft6128, 11:41, 18 February 21

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

ComSoft6128

One for the hardware community.....


https://hackaday.io/project/169565-arduino-io-card-for-amstrad-cpc-6128


I was looking for info on the CPC in Australia when this popped up so I'm assuming that it's Australian in origin.

Gryzor

My favorite part:

QuoteMy floppy emulator has not yet arrived and I have some time to spare so I need to find a way to get software on and off this machine. I could use the cassette port but thats too easy so I need to access one of the ports. The printer port is only an output, the floppy is controlled by the floppy disk controller so would require a long winded deciphering process to use it, so that leaves the expansion port.

VintageAdvantage

#2
Quote from: Gryzor on 13:45, 18 February 21My floppy emulator has not yet arrived and I have some time to spare so I need to find a way to get software on and off this machine. I could use the cassette port but thats too easy so I need to access one of the ports. The printer port is only an output, the floppy is controlled by the floppy disk controller so would require a long winded deciphering process to use it, so that leaves the expansion port.

Oh my, those story tellers... and of course, the Joystick port would have been to straight forward for digital input as well :-) It's a funny read though.

As much as I admire the solution of "capacitor + diode" and pulling Z80 waitstates with the microcontroller, I would nevertheless always prefer a more reliable and fully digital solution. A capacitor might age... an additional latch / tri-state bus driver for latching and managing the databus properly adds only 50 Cents to the design. IMHO having the timing rely on some analog circuitry is a bit "too smart" and hackish. Admittedly, it saves a lot of circuit complexity, but ties down the CPC bus too much by pulling READY all the time. What does that do in combination with other expansions? Scratching my head about the motivation for all of this.

But here is what I really wanted to discuss: what do you guys think? Is this actually the KISS principle at work, or not? One could argue 2 ways:
https://en.wikipedia.org/wiki/KISS_principle

1. yes, because it reduces circuit complexity
2. no, because it is far from obvious how it works, and requires a lot of very precise  microcontroller timing fidling etc. to get right (reasons above)

I would argue, despite having saved a few components, that it actually violates the KISS principle, because it is "too smart"! As I said, I admire the solution (and this is not a backhanded compliment!), but I don't think I would ever go for it or try to replicate it.

Yes, sometimes less is more. However, sometimes a little bit more is needed - like Einstein said: Everything should be as simple as possible, but not simpler ;-)

WacKEDmaN

#3
i was going to build something like this...so i could do stuff like load disks and snapshots directly into ram ...and of course some addition IO to screw around with...(much like the Z80-MBC2 does)

im now thinking about rolling the ps2 keyboard adapter, tzxduino, joystick adapter and this IO all into one device (eg Arduino Mega2560) as it would make things soo much neater.. im probably going to run a bit short on pins on the mega tho..but could maybe use a couple of 16 pin GPIO extenders via i2c for the address and data buses..(all logic will be taken care of in arduino code)


Powered by SMFPacks Menu Editor Mod