Page 2 of 4

Re: Atari joystick without ZXpand+

Posted: Thu Mar 14, 2024 4:51 pm
by msknight
1024MAK wrote: Thu Mar 14, 2024 3:31 pm I can point you to the schematic for my Kempston compatible joystick interface. It's in [url=viewtopic.php?f=7&t=3242]this
Thanks. I'll give that a good read.

Re: Atari joystick without ZXpand+

Posted: Thu Mar 14, 2024 4:53 pm
by 1024MAK
msknight wrote: Thu Mar 14, 2024 4:45 pm I had read that, but Kelly's, "last active" came up with just a dash, so I concluded hadn't been around for a while.
Still active, has visited this week.

Mark

Re: Atari joystick without ZXpand+

Posted: Thu Mar 14, 2024 4:55 pm
by msknight
I was looking at the schematic and wondering how external keyboards work via the edge connector if there is no access to the five KBD lines that go to the ULA. Is the ROM checking for keypresses? I haven't yet tripped over how this actually works yet.

Re: Atari joystick without ZXpand+

Posted: Thu Mar 14, 2024 4:56 pm
by 1024MAK
Moggy wrote: Thu Mar 14, 2024 4:36 pm I do Have a Kempston but this I seem to remember, unlike what Mark describes, has the extra tangs as used on a Spectrum interface.
As far as I am aware, all the later Kempston versions did have the longer ZX Spectrum edge-connector sockets.

Mark

Re: Atari joystick without ZXpand+

Posted: Thu Mar 14, 2024 4:59 pm
by Moggy
This be the beast.

Re: Atari joystick without ZXpand+

Posted: Thu Mar 14, 2024 5:04 pm
by Moggy
The Cheetah.

Re: Atari joystick without ZXpand+

Posted: Thu Mar 14, 2024 5:04 pm
by 1024MAK
msknight wrote: Thu Mar 14, 2024 4:55 pm I was looking at the schematic and wondering how external keyboards work via the edge connector if there is no access to the five KBD lines that go to the ULA. Is the ROM checking for keypresses? I haven't yet tripped over how this actually works yet.
That's an entirely new subject...

The simple answer is that for an external keyboard connected to the expansion port/edge-connector, you need a bunch of circuitry that duplicates some of what the ULA does. Hence if you look at the Memotech Keyboard, it has a Keyboard Interface...

Because the ULA has outputs similar to "open collector data bus output drivers", other I/O devices can override its outputs. Hence an external interface can detect when the Z80 (machine code) tries to read the keyboard, then it outputs its data overriding the ULA. The Z80 and hence the code then sees the key pressed on the external keyboard ;-)

Mark

Re: Atari joystick without ZXpand+

Posted: Fri Mar 15, 2024 7:33 am
by msknight
I've been doing something very dangerous... thinking.

Games use keyboard presses. External keyboards, "barge in," to the conversation that's going on.

So why, when the ZXpand+ is programmed with keypresses for joystick maps... do some games need to be re-written?

I believe... and this is very dangerous for me... that the ZXpand+ is putting the keypress in a buffer and is not actually barging in to the ULA-Z80 conversation.

So other joystick solutions that do barge in to the conversation, wouldn't need the games to be re-written?

Re: Atari joystick without ZXpand+

Posted: Fri Mar 15, 2024 8:18 am
by Paul
As long as games use the inkey equivalent they don't need to be rewritten. That's what zxpand offers to the zeddy or otherwise it's own API.
Joy81 on the other hand implemented the exact keyboard behaviour and so games need not be rewritten.

Re: Atari joystick without ZXpand+

Posted: Fri Mar 15, 2024 8:19 am
by Paul
Joy81 is no miracle and we can make new boards if you're interested (or others as well)
It also offers multiple key presses and diagonal keys not only up and down.