1st Jun 2020, 9:03 pm | #21 |
Octode
Join Date: Apr 2018
Location: Newbury, Berkshire, UK.
Posts: 1,287
|
Re: MK14 memory upgrade
A GAL wouldn't have enough gates to replicate a PROM with an OS in. A FPGA or possibly CPLD might do it as they have built in support for lookup tables but they tend to be 3.3v devices. My proposed memory board will have a socket for a 2k EPROM as well as RAM that can be mapped instead of the PROM. It also maps the "lost" 0.5k to the position of the standard RAM if required so you could populate all the memory devices with a 6116 and a 2716/2816. It also buffers the address and data lines for normal and DMA transfers (hopefully)' Without my laptop I can't proceed any further debugging the GAL programming. Hopefully that situation will improve soon if people can restrain themself from going to the beach.
|
1st Jun 2020, 9:26 pm | #22 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,575
|
Re: MK14 memory upgrade
To be honest the who GAL period passed me by so I have literally never looked inside one - it sounds as though they are less complex than I thought they might be.
|
1st Jun 2020, 9:55 pm | #23 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,575
|
Re: MK14 memory upgrade
With regard to the proposed 'complex' expansion PCB there are some issues, especially about what happens to the connections at the VDU end, which might need to be optional / linkable / blobbable otherwise we could end up going to DEFCON 3 over exactly how it should be done.
What to route to the VDU control lines for example - 8154 ports or flags? Or a mixture of both? Provide links to allow choice? Tim seems to want to follow historical canon, where flags 1 and 2 are used to control VDU enable / disable and Graphics / Text modes, I think that is entirely OK and I would prefer to see most (if not all) of the 8154 port pins cut loose and made available - in the right numerical order - on a pin row connector, IDC connector or a row of mini screw terminals so they can be used to interact with the outside world as intended. If you just did one un-canon thing and added a transistor (or an unused gate on the memory decoder logic) to invert Flag 1 on the way to the VDU, that would make life a lot simpler as the VDU would be disabled on reset, and then your software would turn it on if required by setting Flag 1. Or to please everyone, make that optional as well with blobs to either use or bypass the inverter. Remember there really is no historic standard way to add memory and connect a VDU to the MK14, so this proposed expansion / through connector can become the definitive method if it is so well thought out that no-one sees the need to do it any differently. |
1st Jun 2020, 10:11 pm | #24 |
Octode
Join Date: Mar 2019
Location: Barry, Vale of Glamorgan, Wales, UK.
Posts: 1,364
|
Re: MK14 memory upgrade
Agreed on the links for options... I would also like to add connectors for the tape interface / PROM Programmer (although the latter may just be your IO header...). I was also thinking that one or two DIN connectors would allow other small cards to be added vertically. I still like the idea of turning the right angle for the VDU connector to reduce the length a bit. The one used by MrStaff (pong demo) on the cz forum is quite clever as well - especially if they were the easier to get DIN connectors... he also has the RAM as a small expansion card which makes changes easier.
Not visible in that photo but the VDU fits underneath! |
1st Jun 2020, 11:06 pm | #25 |
Octode
Join Date: Apr 2018
Location: Newbury, Berkshire, UK.
Posts: 1,287
|
Re: MK14 memory upgrade
My design had 3-4 din connectors, one laying down the VDU beside the MK14 and the others for vertical cards that don't need supporting.
|
1st Jun 2020, 11:52 pm | #26 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,575
|
Re: MK14 memory upgrade
The system Tim likes looks exceptionally smart and compact but it requires a bit of overhead in non-electronics skills, or to put it another way you'd need good general craft / metalworking / woodworking skills and tools to get it to that degree of finish. (A lot of people on this forum absolutely do have those skills, but I unfortunately don't). If you made it in that form factor there would be relatively few people who could reproduce it and make it look that good.
I favour straight-back-in-a-line but Slothie's turned-around horizontal approach with everything on one layer / level is a fair compromise since all the boards could be plugged together supported by nothing more than rubber feet, if necessary, and the whole setup occupies a depth and width which can be found on most desktops. From an exhibition point of view it also makes all the elements of the system equally visible. Thinking about the original design philosophy of the MK14, it was only ever meant to be thrown down on a bench or desk and used exactly like that, stand-alone, with its integral display and keypad. Like the original MK14 the original VDU PCB does not have mounting holes - it was clearly originally designed to go in a DIN card rack, so its physical design is completely at odds with the design of the MK14 itself, they really weren't well matched at all. To this day they look like components from completely different systems. The VDU and MK14 would have to be supported by the edges if mounted horizontally on some sort of chassis or baseboard, although the front end of the MK14 PCB can be supported by standoffs lined up with the holes originally meant for the keypad rivets as has been done on that build Tim posted a picture of. Mounting the VDU board vertically, unsupported, would be a no-no, it is really quite an end-heavy board especially if it has a modulator fitted as all original VDU boards do. Add to that the trailing weight of the video / RF cable hanging off the top end and it won't be long before something snaps. Since Slothie's expander PCB does have a rear edge that would be where you could put a row of screw terminals or IDC connections for the I/O port and Flag connections to the PROM programmer, Cassette interface etc. |
2nd Jun 2020, 12:05 am | #27 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,575
|
Re: MK14 memory upgrade
I see Slothie's chosen to use female connectors on everything which something else plugs into - so for example a female connector on the MK14 because the expander plugs into that, and a female connector for the (male) connector on the VDU to plug into - that's the convention I would have followed as well (The DIN connector on my VDU PCB is male).
|
4th Jun 2020, 7:32 pm | #28 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,575
|
Re: MK14 memory upgrade
I've made a tentative start on the MK14-to-VDU 'adaptor piece' which will eventually also incorporate Slothie's minimalist memory add-on. It's going to be delayed a bit because, while I did receive a couple of 'Spectrum' edge connectors I somehow overlooked the fact that Spectrums have 28 pins each side, not 32 as needed.
I have instead ordered a couple of these, the only not-stupidly-priced 2 * 32 0.1" edge connectors I could find:- https://www.digikey.co.uk/product-de...9-1-ND/2688514 We use this 'UK' supplier at work and although they give every indication of being USA-based really, anything we order from them usually does come quite quickly. Note the connector I've linked to has closed ends so at least one end will need to be opened up. |
4th Jun 2020, 8:59 pm | #29 | |
Octode
Join Date: Apr 2018
Location: Newbury, Berkshire, UK.
Posts: 1,287
|
Re: MK14 memory upgrade
Quote:
I'd recommend trying out the memory upgrade on breadboard first because it was just a back of the envelope design... ! |
|
4th Jun 2020, 9:14 pm | #30 | |
Octode
Join Date: Apr 2018
Location: Newbury, Berkshire, UK.
Posts: 1,287
|
Re: MK14 memory upgrade
Quote:
As for the "side A" connections (pots A&B, Flags, Sense etc) I was thinking of bringing them out to one side of a 32x2 square pin type connector so that signals can be jumpered across to the corresponding connection on the card connectors, or wires with DuPont sockets used to cross-patch connections if they're on the wrong signal. If you don't have an INS8154, for instance. |
|
4th Jun 2020, 9:21 pm | #31 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,575
|
Re: MK14 memory upgrade
I think there's just a generally accepted convention that where item 'A' feeds power to item 'B', the connector on item 'A' is always female so that the power output is not exposed on bare pins (which could get shorted) when there is nothing plugged into item 'A's connector. Your sketch happens to conform to that convention.
|
5th Jun 2020, 1:10 am | #32 | ||
Octode
Join Date: Mar 2019
Location: Barry, Vale of Glamorgan, Wales, UK.
Posts: 1,364
|
Re: MK14 memory upgrade
Quote:
|
||
9th Jun 2020, 9:42 pm | #33 |
Octode
Join Date: Mar 2019
Location: Barry, Vale of Glamorgan, Wales, UK.
Posts: 1,364
|
Re: MK14 memory upgrade
Well I decided I should knock up a memory card - I did not have any 74LS NOR gates but, I had a good stock of CMOS parts from BITD so knocked up the attached based on the corrected circuit from Slothie.
Sirius mentioned it could be built on a Breadboard and such a system seemed useful for trying out all sorts of things so I put some time into one - it does make the system quite long through... Of course it did not work yesterday (when the photos are from) so corrected some wiring errors but, it still causes very unstable operation and mad activity of the MK14 - unplugging A8 from the RAM seemed to help a little - no idea why. Anyway attempts to put it on the scope this evening were defeated by my posh 1x/10x probe snapping in half... off to try and buy a replacement - I would love to say stuff does not last but, I think we bought it in 1979. More updates moving forward - as far as I was aware there should be no issues using CMOS chips as the TTL will drive them fine and the RAM is a CMOS one anyway I think. |
9th Jun 2020, 10:46 pm | #34 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,575
|
Re: MK14 memory upgrade
That looks remarkably similar to mine except that mine still does not have the required connector for the MK14 end. My memory expansion is built on the copper side of a smaller square of stripboard, untested so far.
I'm still well behind you, I need to get the MK->VDU 'adaptor PCB' basically functional first, then if all is going well at that stage I will wire in the RAM. |
12th Jun 2020, 6:44 pm | #35 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,575
|
Re: MK14 memory upgrade
Quick question for Slothie regarding the revised BATE sketch for the memory expansion in #17 of this thread - the sketch shows A0-A8 going to the RAM IC, but if only those lines are used then I would think the expansion can only uniquely address 512 bytes of the RAM. To get at 1.5K of the 2K available in the chip I would expect that A9 and A10 of the RAM would need to be connected to system A9-A10 as well?
|
12th Jun 2020, 9:16 pm | #36 |
Octode
Join Date: Apr 2018
Location: Newbury, Berkshire, UK.
Posts: 1,287
|
Re: MK14 memory upgrade
Yes that's a typo. If you read my previous version of this post ignore it I was thinking of another sketch!
Last edited by Slothie; 12th Jun 2020 at 9:41 pm. |
12th Jun 2020, 10:10 pm | #37 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,575
|
Re: MK14 memory upgrade
I was under the impression that your sketch in #17 was for a stand alone get-you-going 1.5K memory add on, and wasn't anything to do with the higher spec buffered version you have cooking at the moment.
Looking at the possible states of the address lines in the range of 0x0200 to 0x07FF, Code:
Addr Hex weight A11 0x0800 A10 0x0400 A9 0x0200 A8 0x0100 So possible values for A8, A9, A10, A11 when in the range 0x02xx to 0x07xx Code:
0x200 0x300 0x400 0x500 0x600 0x700 A11 0 0 0 0 0 0 A10 0 0 1 1 1 1 A9 1 1 0 0 1 1 A8 0 1 0 1 0 1 -A11 is low, ie, address less than 0x800 and -A9 or A10 (or both) are high and -Either NWDS or NRDS are low As far as I can make out this is the case your 74LS27 / 74LS00 circuit selects for but, it looks as though system A9-A10 need to be connected directly to the RAM if they are not being supplied by an off-stage GAL? Edit: Just caught your update, OK. |
1st Aug 2020, 2:33 pm | #38 |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,575
|
Re: MK14 memory upgrade
Haven't forgotten about this but unlike Tim who seems able to build a whole project in half an hour, I do most of my construction at work where I have more space, better soldering tools, better light and parts to hand.
However we have had a lot of upheaval there lately and the repairs dept has been reduced to one person-me, so I've been building Slothie's MK14 memory add-on literally one piece of Kynar wire at a time in between proper jobs. I'll hopefully have a working memory add-on very soon. |
3rd Aug 2020, 9:08 pm | #39 |
Octode
Join Date: Mar 2019
Location: Barry, Vale of Glamorgan, Wales, UK.
Posts: 1,364
|
Re: MK14 memory upgrade
I may be able to make them in a few hours which I did with my version of this board but, they do not always work - like my version of this board...
My programming in the 80's was very similar with easy flowing glorious code all through the night even after a night at the pub. The days were full of headaches not only caused by the beer but, also trying to work out the wild logic of code that was so close to working it was annoying... if I could only work out what I meant when I wrote it. You have reminded me I was waiting for new scope probes and put it aside... |
4th Aug 2020, 9:37 am | #40 |
Pentode
Join Date: Jun 2012
Location: Bristol, UK.
Posts: 115
|
Re: MK14 memory upgrade
The CE should be derived from address lines only. That gives widest pulse and allows RAM to 'settle' before NWDS or NRDS enable data transfer.
|