UK Vintage Radio Repair and Restoration Powered By Google Custom Search Vintage Radio and TV Service Data

Go Back   UK Vintage Radio Repair and Restoration Discussion Forum > Specific Vintage Equipment > Vintage Computers

Notices

Vintage Computers Any vintage computer systems, calculators, video games etc., but with an emphasis on 1980s and earlier equipment.

Closed Thread
 
Thread Tools
Old 1st Jan 2023, 3:32 pm   #1
DavidMS
Pentode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 135
Default Mk14 uploader

I am just getting to grips with building an uploader based on the design by SiriusHardware. I will most likely test it out with a Rpi but plan to implement using a Pico in the final design -with it setup to receive Intel hex files via a serial port and decode / post them on to the Mk14. I have done something similar for a 6803 home brew computer I built a while ago.

One thing I have notice looking at my replica PCB is that the row connections on the silk screen don't 'quite' line-up with the uploader documentation. I am assuming I can ignore col 8 and col 9, but row 3 is swapped with row 2 according to the silk screen. I cannot actually remember who I got the PCB from as it was a while ago (but it was via Ebay) - it claims to be a Rolfe 2018 Rev 1.2 ?

Clearly I can buzz out the PCB to confirm the row connections but was interested to understand the origin of my PCB for future reference
Attached Thumbnails
Click image for larger version

Name:	image0 (8).jpeg
Views:	47
Size:	117.4 KB
ID:	270661   Click image for larger version

Name:	image0 (7).jpeg
Views:	46
Size:	109.7 KB
ID:	270662  
DavidMS is offline  
Old 1st Jan 2023, 5:35 pm   #2
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,482
Default Re: Mk14 uploader

If you just build the interface with the connections as physically detailed in the diagram for the interface ignoring whatever is on the replica PCB edge connector screen print, it will work with original MK14s, the Czech issue V replica, Slothie's issue VI and the 'Oddy' all of which have the same keypad row and column connections to the physical edge connector.

The odd man out is the JMP replica PCB which actually has its keypad edge connector connections laid out more sensibly and straightforwardly than all of the others. There is a separate version of the opto interface for that PCB only, but I don't think yours is a JMP replica. It looks like a 'Slothie' issue VI.
SiriusHardware is online now  
Old 1st Jan 2023, 5:45 pm   #3
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,482
Default Re: Mk14 uploader

Quote:
I will most likely test it out with a Rpi but plan to implement using a Pico in the final design -with it setup to receive Intel hex files via a serial port and decode / post them on to the Mk14. I have done something similar for a 6803 home brew computer I built a while ago.
There is already a Serial Hex-MK14 version quite like that, but for Arduino.

I don't know if Arduino ever got around to incorporating native 'board support' for the Pico but if they did you may be able to run the Arduino code from this project on the Pico with very little modification.

https://www.vintage-radio.net/forum/...d.php?t=175912

I used a cheap 8-pin serial SRAM as a serial receive buffer on that project, I don't know how much RAM the Pico has but you may be able to dispense with the 'external' RAM buffer chip and use internal Pico RAM instead.
SiriusHardware is online now  
Old 1st Jan 2023, 5:45 pm   #4
DavidMS
Pentode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 135
Default Re: Mk14 uploader

Quote:
Originally Posted by SiriusHardware View Post
If you just build the interface with the connections as physically detailed in the diagram for the interface ignoring whatever is on the replica PCB edge connector screen print, it will work with original MK14s, the Czech issue V replica, Slothie's issue VI and the 'Oddy' all of which have the same keypad row and column connections to the physical edge connector.
Thanks that is easy
DavidMS is offline  
Old 1st Jan 2023, 5:54 pm   #5
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,482
Default Re: Mk14 uploader

One other thing to note, the connections from the single opto which provides the reset output to the MK14 are polarity conscious, so the reset opto output emitter needs to go to the edge connector '0V' contact finger and the reset opto output collector needs to go to the edge connector reset_in contact finger.

Also be aware that while all the other resistors on the PCB are stated to be 330R, the one for the reset output is 120R. (Anything between that value and 82R is probably OK).
SiriusHardware is online now  
Old 2nd Jan 2023, 11:20 am   #6
DavidMS
Pentode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 135
Default Re: Mk14 uploader

Quote:
Originally Posted by SiriusHardware View Post
One other thing to note, the connections from the single opto which provides the reset output to the MK14 are polarity conscious, so the reset opto output emitter needs to go to the edge connector '0V' contact finger and the reset opto output collector needs to go to the edge connector reset_in contact finger.

Also be aware that while all the other resistors on the PCB are stated to be 330R, the one for the reset output is 120R. (Anything between that value and 82R is probably OK).
Thanks, will keep this in mind - have gone for the Din connector as per your suggestion
Attached Thumbnails
Click image for larger version

Name:	233F05C7-835B-4CE1-863F-29B9E254C05B.jpg
Views:	44
Size:	87.3 KB
ID:	270708  
DavidMS is offline  
Old 2nd Jan 2023, 7:41 pm   #7
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,482
Default Re: Mk14 uploader

To be precise, using the DIN connectors was Tim's brainwave originally (I use the original edge type connectors because one of my MK14s is an original).

One other thing you may find is that you might have to slightly increase the timing values which are set up as constants near the start of the 'send14' script in order to get 100% reliable loading - I 'tuned' those values for maximum loading speed consistent with reliable operation on my original MK14. It has a 4.43MHz clock, so it scans all of the keypad keys a little bit faster than a 4.00MHz machine does.

If your build uses a 4.00MHz clock you may have to lengthen the key press length / after key release wait times a little bit as the keys will need to be 'pressed' for a slightly longer minimum amount of time in order to register reliably.
SiriusHardware is online now  
Old 2nd Jan 2023, 9:46 pm   #8
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,482
Default Re: Mk14 uploader

It looks like you are having a go to drive a DIP LED Bargraph with the 8154 pins - the I/O ports on old I/O devices like this don't have the same sort of grunt as the I/O port pins on modern microcontrollers and are best regarded as something which can output a logic state rather than something which can source or sink any significant amount of current.

Given the cost of replacement 8154s it might be better in the long term to buffer loads like LEDs with a ULN28xx driver IC . I can appreciate you just wanted to get something as simple as possible up and running.

If this is going to be a 'Knight Rider' display (a single LED sweeping back and forth) then that can be the first thing to go into the 'Fun with the MK14' thread...
SiriusHardware is online now  
Old 2nd Jan 2023, 10:47 pm   #9
DavidMS
Pentode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 135
Default Re: Mk14 uploader

Quote:
Originally Posted by SiriusHardware View Post
It looks like you are having a go to drive a DIP LED Bargraph with the 8154 pins - the I/O ports on old I/O devices like this don't have the same sort of grunt as the I/O port pins on modern microcontrollers and are best regarded as something which can output a logic state rather than something which can source or sink any significant amount of current.
Yes I was just having a quick play. I intentionally used relatively high series resistors, but looking at the datasheet (which does not provide much detail in this area) the outputs really don't have much drive capacity so will be careful - potentially 1mA on a good day !
DavidMS is offline  
Old 2nd Jan 2023, 11:23 pm   #10
DavidMS
Pentode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 135
Default Re: Mk14 uploader

Quote:
Originally Posted by DavidMS View Post
Quote:
Originally Posted by SiriusHardware View Post
It looks like you are having a go to drive a DIP LED Bargraph with the 8154 pins - the I/O ports on old I/O devices like this don't have the same sort of grunt as the I/O port pins on modern microcontrollers and are best regarded as something which can output a logic state rather than something which can source or sink any significant amount of current.
Yes I was just having a quick play. I intentionally used relatively high series resistors, but looking at the datasheet (which does not provide much detail in this area) the outputs really don't have much drive capacity so will be careful - potentially 1mA on a good day !
Update - buffer added using a UDN2981 I had to hand, slight overkill I know
Attached Thumbnails
Click image for larger version

Name:	08DAD866-8C95-4FA2-A70D-2C6DC55732AB.jpg
Views:	36
Size:	93.2 KB
ID:	270775  
DavidMS is offline  
Old 3rd Jan 2023, 12:40 am   #11
Mark1960
Octode
 
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 1,264
Default Re: Mk14 uploader

Another possibility to drive leds is to use the 9th digit multiplexed output to the seven segment display.

If you have a 9 digit display this can be connected by a wire link from the 7445 to the display connection. The ninth digit memory location is not initialised by the SoC monitor, but it is still multiplexed onto the display if the wire link is added.

If you only have an 8 digit display the extra multiplexed output could be used to drive 8 leds instead.

I guess the 10th output of the 7445 could also be used if you control the output directly instead of using the SoC display routine.
Mark1960 is offline  
Old 3rd Jan 2023, 8:22 am   #12
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,482
Default Re: Mk14 uploader

Reading back, I suspect the main point of the exercise was to try out something using the 8154 port.
SiriusHardware is online now  
Old 3rd Jan 2023, 10:08 am   #13
DavidMS
Pentode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 135
Default Re: Mk14 uploader

Quote:
Originally Posted by SiriusHardware View Post
Reading back, I suspect the main point of the exercise was to try out something using the 8154 port.
Yes- really just getting to grips with the 8154, ‘features’ - I am somewhat more used to Z80 PIO chips. I was particularly interested in the bit set/reset registers - I guess with newer processors that have bit control as part of the core instruction set this became a somewhat redundant feature in parallel interface adaptors .
DavidMS is offline  
Old 3rd Jan 2023, 10:20 am   #14
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,482
Default Re: Mk14 uploader

I have a Maplin Z80 system with added on PIO, SIO, CTC support chips - whenever I take it out for a spin, I'm always struck by how luxurious the Z80 instruction set is.

On the SC/MP I particularly miss the CALL and RET instructions and associated stack which were virtually standard on other microprocessors of the same era - calling subroutines on SC/MP is a very clumsy process by comparison.

One good thing about the 8154 is that it requires very little setup by the uP, which can only be a good thing on systems like the MK14 with a tiny default amount of user code memory - the last thing you need is a complex device which takes about 30 bytes of code to set up if you are only going to run that setup code once.

If, later, you feel like connecting a serial UART to the 8154 the 6402 is a good choice because much of the setup, like the number of stop bits, etc, can be set by tying some of its pins in a particular state so it is ready to go and requires no initialisation by the SC/MP.

Last edited by SiriusHardware; 3rd Jan 2023 at 10:26 am.
SiriusHardware is online now  
Old 3rd Jan 2023, 1:20 pm   #15
DavidMS
Pentode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 135
Default Re: Mk14 uploader

Quote:
Originally Posted by SiriusHardware View Post

On the SC/MP I particularly miss the CALL and RET instructions and

One good thing about the 8154 is that it requires very little setup by the uP

If, later, you feel like connecting a serial UART to the 8154 the 6402 is a good choice.
I agree on the call / return it seems very strange these days not to have call and return as instructions - that said for me the really odd-ball is the RCA 1802 processor, where you have sixteen registers of 16 bits registers any of which can be assigned as the program counter 'on-the-fly' which opens up the opportunity to get really confused. As a nice touch you can also program it (slowly) without an operating system, again a feature that has not survived the process of uP 'natural selection'.

I used the 6402 on my NASCOM so very familiar with it - as you say these older interface ics have the advantage on little or no s/w setup
DavidMS is offline  
Old 3rd Jan 2023, 5:40 pm   #16
Mark1960
Octode
 
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 1,264
Default Re: Mk14 uploader

Call and return is the old way of handling subroutines. The more recent RISC type processors are more like the sc/mp. They have a JALR that saves the PC to a register and updates the PC to the subroutine target address. For a leaf subroutine there is no need to save the old PC to a stack, for all other cases the start of the subroutine will save the old PC onto the stack, using another dedicated register as a pointer. This avoids complex instructions that take more than one clock cycle. Although the sc/mp has auto index unfortunately it doesn’t have a way to store a pointer to the address of another pointer, so its clumsy transferring the pointer via the accumulator.
Mark1960 is offline  
Old 5th Jan 2023, 12:30 am   #17
DavidMS
Pentode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 135
Default Re: Mk14 uploader

Initial uploader h/w build complete and working, now to starting thinking about the PICO element.
Attached Thumbnails
Click image for larger version

Name:	6D115F51-E126-41C3-854C-D00742A75D8A.jpg
Views:	37
Size:	84.8 KB
ID:	270920  
DavidMS is offline  
Old 5th Jan 2023, 12:38 am   #18
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,482
Default Re: Mk14 uploader

Good going! Did you have any problems, did you need to slow it down at all?

Funnily enough I have just been writing some code to download Intel Hex over USB serial into my Pi Pico, as I discovered that the Arduino IDE now supports it properly as 'a board'.

I'll race you

(I'm not serious, I'm trying to focus on getting the same Intel download code working on an Arduino Micro so I can use that to control one of Chris Oddy's Tesla MH74S571 PROM programmer PCBs).
SiriusHardware is online now  
Old 5th Jan 2023, 10:15 am   #19
DavidMS
Pentode
 
Join Date: Nov 2022
Location: Chesham, Buckinghamshire, UK.
Posts: 135
Default Re: Mk14 uploader

Quote:
Originally Posted by SiriusHardware View Post
Good going! Did you have any problems, did you need to slow it down at all?
Thanks, no need to reduce the speed. I did manage to muck-up the vero layout slightly causing a bit of re-work. The other perennial problem you can see in the picture. She (Pinky) has a thing about the jumper wires and will pull them out and run the house with them - we suspect she thinks I am collecting mouse tails, not the cleverest of cats.

One question, is there a site that has the source or intel hex files for all the example programs in the manuals that I can download ?
Attached Thumbnails
Click image for larger version

Name:	image0 (9).jpeg
Views:	26
Size:	127.7 KB
ID:	270928  
DavidMS is offline  
Old 5th Jan 2023, 11:24 am   #20
SiriusHardware
Dekatron
 
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,482
Default Re: Mk14 uploader

This thread may float your boat - most if not all of the programs from the manual as SBASM source and the hex generated from them thanks to Slothie, plus a few more.

https://www.vintage-radio.net/forum/...d.php?t=183689

Bear in mind that some of them are intended as subroutines and have to be called from your own added code in order to do anything.
SiriusHardware is online now  
Closed Thread

Thread Tools



All times are GMT +1. The time now is 11:11 am.


All information and advice on this forum is subject to the WARNING AND DISCLAIMER located at https://www.vintage-radio.net/rules.html.
Failure to heed this warning may result in death or serious injury to yourself and/or others.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Copyright ©2002 - 2023, Paul Stenning.