Electron Joystick interface and 'pokable' ports

for bbc micro/electron hardware, peripherals & programming issues (NOT emulators!)
Regj
Posts: 14
Joined: Wed Oct 25, 2017 7:54 pm

Electron Joystick interface and 'pokable' ports

Postby Regj » Thu Oct 26, 2017 4:32 pm

Hi guys,
I would like to start a project for a 'baby step' joystick interface board for the Electron, along the lines of the 'First Byte' Joystick interface board.
I have in mind a relatively simple board with an Atari switched joystick stick port and perhaps a couple of 'pokable port's for leds etc.
I believe this would be a nice project for Electron owners who do not have access to expansion modules such as the Plus 1.

I have scoured the net for a diagram of the 'first bytes Joystick board' as a starter but to no avail.

I would appreciate some help from the membership in getting this project of the ground.

kind regards,
Reg.

User avatar
1024MAK
Posts: 6791
Joined: Mon Apr 18, 2011 4:46 pm
Location: Looking forward to summer in Somerset, UK...

Re: Electron Joystick interface and 'pokable' ports

Postby 1024MAK » Thu Oct 26, 2017 4:44 pm

I have a "Atari" standard digital switched joystick interface, I can't remember if it is a First Byte one though. Mine is faulty :( and may stay that way, as the design uses a custom chip (which may be a PAL) rather than general 74LSXXX 'TTL' logic chips.

However, it should not be too difficult to come up with a design that does use general 74LSXXX 'TTL' logic chips.

Mark
For a "Complete BBC Games Archive" visit www.bbcmicro.co.uk NOW!
BeebWiki‬ - for answers to many questions...

Regj
Posts: 14
Joined: Wed Oct 25, 2017 7:54 pm

Re: Electron Joystick interface and 'pokable' ports

Postby Regj » Thu Oct 26, 2017 5:13 pm

Chris Acorns site has a jpg of the firstBytes interface. I cant quite see the TTL logic chips used though.
Is there better diagrams images or perhaps someone has already reverse engineered this - that would be nice start :)

I have to say I don't even know the memory address space it used or the software it utilised to redirect loaded games.

I do like the idea of 'pokable ports' to play with though.
R.

User avatar
Pernod
Posts: 1001
Joined: Fri Jun 08, 2012 10:01 pm
Location: Croydon, UK

Re: Electron Joystick interface and 'pokable' ports

Postby Pernod » Thu Oct 26, 2017 8:58 pm

I emulated the First Byte joystick quite recently in MAME so am fairly familiar with it.

It is mapped at &FCC0 with active low bits 111FRLDU. There was also the Power Software Joystick Interface which was identical but also included a ROM to map keys to the joystick. The ROM is at viewtopic.php?f=32&t=12924.
- Nigel

BBC Model B, ATPL Sidewise, Acorn Speech, 2xWatford Floppy Drives, AMX Mouse, Viglen case, etc.

User avatar
CMcDougall
Posts: 5622
Joined: Wed Feb 02, 2005 3:13 pm
Location: Shadow in a Valley of Scotland

Re: Electron Joystick interface and 'pokable' ports

Postby CMcDougall » Thu Oct 26, 2017 9:03 pm

pics of mine:
Attachments
100_5841.JPG
c
100_5840.JPG
b
100_5839.JPG
a
ImageImageImage

User avatar
1024MAK
Posts: 6791
Joined: Mon Apr 18, 2011 4:46 pm
Location: Looking forward to summer in Somerset, UK...

Re: Electron Joystick interface and 'pokable' ports

Postby 1024MAK » Thu Oct 26, 2017 9:27 pm

Ahh, there must be more than one version, here's mine:
IMG_5505.JPG
First Byte Electron Joystick I/F Tape & Case
IMG_5504.JPG
First Byte Electron Joystick I/F Case
IMG_5503.JPG
First Byte Electron Joystick I/F PCB top
IMG_5502.JPG
First Byte Electron Joystick I/F PCB bottom


Mark
For a "Complete BBC Games Archive" visit www.bbcmicro.co.uk NOW!
BeebWiki‬ - for answers to many questions...

Regj
Posts: 14
Joined: Wed Oct 25, 2017 7:54 pm

Re: Electron Joystick interface and 'pokable' ports

Postby Regj » Fri Oct 27, 2017 7:59 pm

Well, how suburb is that - thanks for the high-res images guys.
I'm now in the process of drawing out the circuit and logic.
Good fun :D
I'll post the circuit when I have it.
The 2nd FB board seems to use a PAL for some of the logic otherwise pretty much the same

Thanks again.

Regj
Posts: 14
Joined: Wed Oct 25, 2017 7:54 pm

Re: Electron Joystick interface and 'pokable' ports

Postby Regj » Thu Nov 02, 2017 7:43 pm

Ok. I've not had so much fun with logic for 40 years...
This is the circuit for the FirstByte Joystick interface revision 3.
Figured the circuit out from the excellent pictures above.
Painstakenly drawn in TinyCAD.

I have made only one assumption - that 74LS367 pin 10 is tied to 5v - logic seems good. (Can anyone confirm).
It would be nice if you guys gave it the once over since this is revisited ground for me.

Now need to source an edge connector (how hard can that be, I wonder...)
Regards
Attachments
FB_JS_Logic.png

User avatar
1024MAK
Posts: 6791
Joined: Mon Apr 18, 2011 4:46 pm
Location: Looking forward to summer in Somerset, UK...

Re: Electron Joystick interface and 'pokable' ports

Postby 1024MAK » Thu Nov 02, 2017 9:37 pm

And this is the reverse engineered schematic from the other version (the version that uses a PAL).
First Byte Electron Joystick Interface (PAL version).png
First Byte Electron Joystick Interface schematic
Mark
For a "Complete BBC Games Archive" visit www.bbcmicro.co.uk NOW!
BeebWiki‬ - for answers to many questions...

User avatar
daveejhitchins
Posts: 3691
Joined: Wed Jun 13, 2012 5:23 pm
Location: Newton Aycliffe, County Durham

Re: Electron Joystick interface and 'pokable' ports

Postby daveejhitchins » Fri Nov 03, 2017 7:59 am

Regj wrote:Now need to source an edge connector (how hard can that be, I wonder...)
There used to be someone selling a suitable connector on eBay. Haven't seen them for a while, however, I grabbed a few for repairing a Mode 7 box - so I should either have a spare or, at least, the address of the seller. Give me a shout after the 12th Nov. when I'm back home, if you're still looking at that time!

Dave H :D
Parts: UM6502CE, GAL22V10D, GAL16V8D, AS6C62256A, TC514400AZ, WD1772, R6522, TMS27C512, AT28C256
Products: ARA II, ABR, ATI, AP6, MGC, AP5 . . .
For a price list, contact me at: Retro Hardware AT dave ej hitchins DOT plus DOT com

Regj
Posts: 14
Joined: Wed Oct 25, 2017 7:54 pm

Re: Electron Joystick interface and 'pokable' ports

Postby Regj » Fri Nov 03, 2017 4:55 pm

1024MAK,
Nice one, although it threw me at first. You actually have two versions shown 74LS367 and 74LS244 rolled into one diagram (neat).
I also notice that the 74LS367 has different configuration of the buffers to the data bus compared to my version 3 (interesting); logic is the same though.
D5 is held high through a pull up resistor in your diagram, whereas with my, obviously early version 3, it is just connected to 5v it seems.
D6,7 are not connected when using the 367 but are when using the 244 and held high via pull-up resistors. A much better arrangement.

Also I'm intrigued as to why they decided to pass +5v through to the joystick yet its not used!
Thanks again for posting your diagram.
R.

User avatar
1024MAK
Posts: 6791
Joined: Mon Apr 18, 2011 4:46 pm
Location: Looking forward to summer in Somerset, UK...

Re: Electron Joystick interface and 'pokable' ports

Postby 1024MAK » Fri Nov 03, 2017 9:12 pm

On some auto-fire joysticks, pin 7 is used for a +5V supply to power the electronics.

On other designs of auto-fire joystick, the power is "stolen" from the fire button circuit via the pull-up resistor. But this arrangement can be unreliable if either no pull-up resistor is used, or the value is too high.

On my board, the +5V supply to pin 7 of the joystick port was obviously an after thought, as the connection is made with a piece of wire. My board has an earlier date than the board that you reverse engineered. So presumably three 74LSXXX series chips were cheaper or easier to use than a PAL chip plus one 74LS367 chip.

Mark
For a "Complete BBC Games Archive" visit www.bbcmicro.co.uk NOW!
BeebWiki‬ - for answers to many questions...

Regj
Posts: 14
Joined: Wed Oct 25, 2017 7:54 pm

Re: Electron Joystick interface and 'pokable' ports

Postby Regj » Sun Nov 05, 2017 4:31 pm

OK,
Here is my simple way to use the existing Address decoding of the FirstByte Joystick board to provide output ports for driving LEDs or whatever - Just for fun.

It seems that some of the addresses map to areas used by the OS or ULA. So only three additional 8bit ports can be used.
This is my naive understanding though so any thoughts from the membership would be appreciated.

Also, can I use the 74LS374 in the manner shown or do I need CLK to RD/WR from 6502 and OC enabled from the decode logic?
R.
Attachments
Output a Byte Logic.png
Is this viable?

User avatar
daveejhitchins
Posts: 3691
Joined: Wed Jun 13, 2012 5:23 pm
Location: Newton Aycliffe, County Durham

Re: Electron Joystick interface and 'pokable' ports

Postby daveejhitchins » Thu Nov 16, 2017 5:38 pm

@ Regj

OK . . . I've found the connectors I bought via eBay - If you're still interested in them? Here are some images:
IMG_2111.jpg
IMG_2112.jpg

When I used one of these for the Mode 7 Box Repair I had to straighten out the pins to solder the connector on the edge of the PCB. No great shakes, however!

Dave H :D
Parts: UM6502CE, GAL22V10D, GAL16V8D, AS6C62256A, TC514400AZ, WD1772, R6522, TMS27C512, AT28C256
Products: ARA II, ABR, ATI, AP6, MGC, AP5 . . .
For a price list, contact me at: Retro Hardware AT dave ej hitchins DOT plus DOT com

User avatar
myelin
Posts: 203
Joined: Tue Apr 26, 2016 9:17 pm
Location: San Francisco, CA, USA
Contact:

Re: Electron Joystick interface and 'pokable' ports

Postby myelin » Fri Nov 17, 2017 7:27 pm

I think I bought the same connector :) The eBay user is https://www.ebay.com/usr/mistabargain, which is JPG Electronics. They don't have any more listed right now but would be worth contacting...

I made a KiCad footprint for the connector: https://github.com/myelin/myelin-kicad. ... .kicad_mod

The matching pinout details are in https://github.com/google/myelin-acorn- ... nus_one.py
SW/EE from New Zealand, now in San Francisco: http://myelin.nz/
Having fun making hardware projects for the Electron!
So far: 32k flash cart, USB cart interface, 3-cart expansion, Elk PiTubeDirect. Later: Dual ported ram cart.

Regj
Posts: 14
Joined: Wed Oct 25, 2017 7:54 pm

Re: Electron Joystick interface and 'pokable' ports

Postby Regj » Sat Nov 18, 2017 3:29 pm

Dave.H, thanks for looking out an edge connector, unfortunatley I ordered one from Rapid Electronics before I started this thread and after much research. The one I now have doesn't have a key though just the full 50 pins. I'll now try printing a blanking key on my lovelly new 3D printer :)

Mylin, Thanks for the info i'll need to look into what your project does and perhaps reserve that for a future delve into the Elk; useful for the pinouts though.

Can you clever guys look at my previous post :idea: for an output port and the address mappings I think are available - question is it a viable circuit to add to the joysticK circuit. My grandchildren can then try 'poking' one or two 8 led DILs with Basic and Assembler.

All good fun.
regards
R.

User avatar
1024MAK
Posts: 6791
Joined: Mon Apr 18, 2011 4:46 pm
Location: Looking forward to summer in Somerset, UK...

Re: Electron Joystick interface and 'pokable' ports

Postby 1024MAK » Sat Nov 18, 2017 11:20 pm

It would be best if the CPU Phase 0 clock (shown in Acorn documentation as phase 2, but the actual signal on the expansion port has been found to be phase 0, it appears Acorn dropped the ball, as it should have been the phase 2 signal...) is included in the control logic.

The reason being, is that the data bus only has valid data from the CPU when phase 2 (and phase 0) clock is high. So your logic needs to include it to ensure that your output latch catches the real data byte from the CPU and not any old decaying value.

It would also be a good idea to include the R/W control line. It does not make much difference for an address where only writes occur, (output port only driving LEDs) but if you were controlling an inportant real world device, you don't want an attempted read messing up the outputs.

The original joystick interface should have included it so that in the event of the CPU writing to the joystick port, the CPU and the joystick chips will not both try to drive the data bus at the same time.

See this 6502 "primer" for more details and help :wink:

Mark
For a "Complete BBC Games Archive" visit www.bbcmicro.co.uk NOW!
BeebWiki‬ - for answers to many questions...

Regj
Posts: 14
Joined: Wed Oct 25, 2017 7:54 pm

Re: Electron Joystick interface and 'pokable' ports

Postby Regj » Sun Nov 19, 2017 4:44 pm

Wow, thanks for the insight Mark; I'll look at doing just that.
I just love the support one gets on this forum.

Cheers
R


Return to “hardware”

Who is online

Users browsing this forum: Bing [Bot], mattyj and 7 guests