![]() |
![]() |
![]() |
|
Vintage Computers Any vintage computer systems, calculators, video games etc., but with an emphasis on 1980s and earlier equipment. |
![]() |
|
Thread Tools |
![]() |
#81 | |
Pentode
Join Date: Jan 2021
Location: Ashford, Kent, UK
Posts: 249
|
![]() Quote:
|
|
![]() |
![]() |
![]() |
#82 |
Pentode
Join Date: Jan 2021
Location: Ashford, Kent, UK
Posts: 249
|
![]()
Here's the first cut of a schematic for the TELEKIT. The zip file also contains datasheets for the main devices. I haven't bothered adding EPROM and RAM as yet, focusing on the display and key matrix initially.
No guarantee it's correct or complete, so please pick holes in it ![]() |
![]() |
![]() |
![]() |
#83 |
Octode
Join Date: Mar 2019
Location: Barry, Vale of Glamorgan, Wales, UK.
Posts: 1,348
|
![]()
Well the original article suggested that they had been in use in Germany for training to reduce costs of Teletypes for students and implied around 25 were made. Maybe this was indeed the prototype - but, as Phil has shown bit rot can have a significant impact on this code.
Anyway if it helps the effort here is the promised scans from the Paper copy of ETI - it was hard to get the first page without bleed through due to the big advert - I put that as Page 3 on the PDF as I thought it quite ironic with what was being proposed on the next page ![]() |
![]() |
![]() |
![]() |
#84 |
Heptode
Join Date: Mar 2011
Location: North Yorkshire, UK.
Posts: 909
|
![]()
Odd that they have sense A as the inverse of sense B, but then this was a dedicated circuit, so if it makes the code easier, why not
![]() I notice the serial in and out is straightforward, almost straight through connections between the LCDS serial port and the Sense and Flag pins of the Telekit's SC/MP, so we're looking for straightforward async serial I/O with no external shift-register jiggery pokery ![]() |
![]() |
![]() |
![]() |
#85 |
Pentode
Join Date: Jan 2021
Location: Ashford, Kent, UK
Posts: 249
|
![]()
Thanks Tim - much easier on the eyes.
I've had to unplug the keypad flexi from the header. I really didn't want to as the gold contacts are lifting from the substrate, but it was in danger of getting damaged with the continued folding back and forth. Now that it's off what should I expect from the keypad in terms of ohms reading? There are 10K pull downs on the receiving shift register so I guess less than 1K to pull the signal up. These are soft rubber buttons, not metallic click switches. Currently I'm detecting no closed contacts when pressing the keys. |
![]() |
![]() |
![]() |
#86 |
Heptode
Join Date: Mar 2011
Location: North Yorkshire, UK.
Posts: 909
|
![]()
A few more comments, my understanding - usual caveat, may be wrong
![]() Code:
; *** I really think this is a bad bit0, 06 CSA makes more sense *** 002D 07 CAS ; I believe this is setting FLAG1 as an enable for the shift registers ; ; so.... lets say its a CSA... 002D 06 CSA ; read status to get flags & sense A/B ; 002E D4 FD ANI $FD ; 11111101 clear F1 (in A, not the actual flag yet) 0030 19 SIO ; Shift E out on SOUT, shift SIN into E 0031 19 SIO ; this shifts a byte of keypad sense data into E 0032 19 SIO ; very quickly, SR is clocked by opcode read 0033 19 SIO 0034 19 SIO 0035 19 SIO 0036 19 SIO 0037 19 SIO 0038 07 CAS ; reset FLAG1 to disable shift registers 0039 C4 01 LDI $01 ; ready to set SOUT 003B 01 XAE ; now A=keypad sense 003C 19 SIO ; set SOUT 003D 01 XAE ; now E=keypad sense 003E C2 40 LD +$40(P2) ; get count 0040 E4 09 XRI $09 ; count=9? 0042 9C 05 JNZ LAB003 ; to $0049 0044 01 XAE ; now A=keypad sense 0045 CA 43 ST +$43(P2) ; store keypad data at $0244 0047 90 08 JMP LAB004 ; to $0051 . . . LAB004: 0051 01 XAE ; keypad sense into E ; LSB006: 0052 40 LDE ; and into A 0053 D4 1F ANI $1F ; isolate the 5 rows used 0055 9C 45 JNZ LAB007 ; jump if there was a keypress to $009C ; LAB011: 0057 3F XPPC P3 ; call sub at 0x00CD? |
![]() |
![]() |
![]() |
#87 |
Pentode
Join Date: Jan 2021
Location: Ashford, Kent, UK
Posts: 249
|
![]()
That makes a lot of sense and Flag1 now gets cleared in a deterministic way. But what is setting Flag1, or am I missing something?
I think I need to create a "modern-ERPOM-to-MM5404-pinout" adapter to allow some of these bit-rot theories to be tested. Here attached is v0.6 in SBASM format. I haven't made any changes over v0.5 other than to get it to assemble correctly. This of course could be run in MAME, so that may help in understanding the initial start up. |
![]() |
![]() |
![]() |
#88 |
Octode
Join Date: Mar 2020
Location: Kitchener, Ontario, Canada
Posts: 1,194
|
![]()
You might need to try a lot of variations to check if the problem is due to bit rot. Maybe an MM5404 emulator using dual port ram would be better. You could even make one side compatible with issue 6 mk14 edge connector.
|
![]() |
![]() |
![]() |
#89 |
Pentode
Join Date: Jun 2012
Location: Bristol, UK.
Posts: 112
|
![]()
I think the CAS at $002D is correct.
We are back with that 'LD +$47(P2)' variable at $002B. This should hold the Flag bit-pattern to enable Keypad registers. (*) The first CAS 'prepares' a keypad scan. Acc is immediately changed so that second CAS will 'lock' Keypad as soon as E has rippled through. The $47(P2) content isn't changed. (*) It seems $47(P2) isn't set up with the right value when TELEKIT starts.
__________________
x^4 + x^2 + y^2 = 0 |
![]() |
![]() |
![]() |
#90 | |
Octode
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 1,194
|
![]() Quote:
Co-incidentally 'Electronics Tomorrow' was also the name of a one-off Winter 1977 special-edition of ETI, inspired by Star Wars that year. - I re-discovered a copy of this I'd acquired a few years ago and had forgot about, whilst trying to see if I had an original Sep'76 copy of ETI. In this, they tried (Tomorrow's World style) to predict the future in several decades time (They thought only by 1998, that 98% of Hi-Fi amps would be 'Digital' using Class-D PWM of ten's of MHz frequencies into a VFET O/P stage). There's also an interview with Clive Sinclair, discussing what he might be selling in 1984 (Computers and a miniature VDU get a mention). You can read / download it all here: https://worldradiohistory.com/UK/Ele...inter-1977.pdf |
|
![]() |
![]() |
![]() |
#91 | |
Octode
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 1,194
|
![]() Quote:
- The W27C512 'EEPROM', can also be obtained very cheap But an EPROM-Emulator would be easiest. And I believe Realtime has recently built a ChrisOddy replica Softy, then maybe fittingly that could be used as the Emulator (especially as it can substitute the SC/MP) (Although the Softy-2, with its dedicated EPROM Emulator cable, may be even easier to connect to a (albeit 2716 etc pinout, so need some pin re-mapping for MM5204) EPROM socket. However, I think Chris is currently doing work on finishing his replica design of this S2 version, so not quite ready yet). |
|
![]() |
![]() |
![]() |
#92 | |
Pentode
Join Date: Jan 2021
Location: Ashford, Kent, UK
Posts: 249
|
![]() Quote:
I decided to get back to basics and write noddy bits of code to test each feature on board. I started by toggling the flag bits using the E register as a counter (no SRAM interaction). All good. I then shifted data out of SOUT. Again as expected. I then repeated the flag test using SRAM for the counter. It failed to count. Same with shifting data from SRAM to SOUT, spurious results. SRAM is 2x MM2112 devices and It looks like the upper nibble is misbehaving. Tomorrow I’ll run the same bits of code on the mk14 to verify operation before replacing the SRAM. Don’t think I have 2112s but can cludge a 2114 in for now. |
|
![]() |
![]() |
![]() |
#93 | |
Octode
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 1,194
|
![]() Quote:
http://theoddys.com/acorn/replica_bo...ram_board.html I don't recall seeing those CY7C291 2Kx8 35ns CMOS (E)PROM's in 0.3" wide DIL packages before, that are intended to replace high-speed bipolar PROM's. Which I assume you can still get (maybe NOS / used windowed ones) and are supported by some common IC Programmers. - A pity Cypress didn't do 4bit ones that were pin-compatible with the smaller 74S587 etc PROM's, but might be useful for replacing character generator etc PROM's that do require the higher speed and smaller than the high-speed W27C512 0.6" wide DIL28 EEPROM. |
|
![]() |
![]() |
![]() |
#94 | |
Pentode
Join Date: Jun 2012
Location: Bristol, UK.
Posts: 112
|
![]() Quote:
The NOVUS 4515 had a very similar keypad (maybe not the same matrix connections within). I've found a pic of inside the case. Different flexi part number. (Does the keypad unclip from the case-front?)
__________________
x^4 + x^2 + y^2 = 0 |
|
![]() |
![]() |
![]() |
#95 | |
Pentode
Join Date: Jan 2021
Location: Ashford, Kent, UK
Posts: 249
|
![]() Quote:
No the keypad seems to be hot welded as part of the surrounding frame from what I can see. I still can't work out why I'm seeing no switch activity on the keypad. Do the conductive rubber contacts perish over time? |
|
![]() |
![]() |
![]() |
#96 | |
Pentode
Join Date: Jan 2021
Location: Ashford, Kent, UK
Posts: 249
|
![]() Quote:
The upper nibble SRAM has been replaced with a 2114 temporarily and I'm happy to say the routines using RAM are now operating correctly. So that's good. Unfortunately it doesn't take us any further with TELEKIT showing any signs of life. I now know that IC52 is operating correctly as I can see the parallel inputs being shifted out to SIN on the processor (if I avtivate a row manually using a pull-up resistor). This also demonstrates FLAG1 and SOUT are operating correctly. See the attached video clip (yellow = Flag1, magenta = SOUT). The next noddy piece of code will scan the display columns to test IC54 (column shift register) and IC53 the display driver chip. |
|
![]() |
![]() |
![]() |
#97 | |
Dekatron
Join Date: Aug 2011
Location: Newcastle, Tyne and Wear, UK.
Posts: 11,082
|
![]() Quote:
|
|
![]() |
![]() |
![]() |
#98 | |
Pentode
Join Date: Jun 2012
Location: Bristol, UK.
Posts: 112
|
![]() Quote:
Original 6025 calculator has MM5762 chip. The datasheet says a bit about keypads. In the blue, below. So original circuit would tolerate high resistance. Also, I've still been pondering how the keys are shifted to 2nd character. In the diagram below an extra mini-matrix and slide switch are shown for the programmable version. In the red. I finally realised the slide switch has been relabelled for TELEKIT. I have a horrid feeling that to enter say "TYPE" you must - slide to SHIFT, "T/D", "Y/I", slide to NORMAL, "@/P", "U/E" . And so on....
__________________
x^4 + x^2 + y^2 = 0 |
|
![]() |
![]() |
![]() |
#99 | |
Octode
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 1,194
|
![]() Quote:
But it seems there's still many NOS / 'Used-Pulls' UV-EPROM's available, to allow everyone to still use those, like many of the vintage IC's (and even valves), people on here need. Digi-Key do still list these and strangely say they are still active - but only sell them via their marketplace, from Rochester who specialise in buying-up discontinued devices. But Digikey say these aren't RoHS-compliant, which would probably date these stocks as pre-2005? And Rochester have a relatively-high MOQ, even though they are nearly £10 each. But no doubt other online-marketplace sellers, will sell you one-off for less. It's a pity Cypress didn't produce a FLASH etc version of these, which modern ones could have been in a quite small-package, as later 20ns speed versions of these, plus lower power than Bipolar-PROM's, could have been a quite-useful alternative to those -especially with a suitable adaptor board. Last edited by ortek_service; 3rd Oct 2023 at 12:08 am. |
|
![]() |
![]() |
![]() |
#100 | |
Octode
Join Date: May 2018
Location: Northampton, Northamptonshire, UK.
Posts: 1,194
|
![]() Quote:
Many modern remote-control keypads actually often seem less-reliable than the older ones, with some often seemingly leaching a slimy insulating-grease from the rubber, onto the contacts (rather than this just being down to spillages into it). I found a 32" Samsung flat-screen LCD TV had been scrapped just because every-key on the remote had failed, after a few years. But I fixed it by just opening it up and cleaning the PCB & rubber buttons mat with some IPA - Although I've also found just some water is often enough. And is something I've frequently had to periodically do with various remote over the decades. They are sometimes more-prone to packing-up, if not just for many months / years, and if cleaning doesn't resolve the problem then might need to resort to re-applying a conductive surface to the rubber - As Colin on here did with some Commodore PET keys that do use conductive-rubber onto PCB-contacts, rather than 'real' key-switches. Although Casio etc calculator keys usually still work fine after > 40yrs" The 'conductive-rubber' / any carbon-coating on PCB contacts, isn't that conductive, if the pull-up/down resistors on the keypad- matrix are sufficiently-high then should get a decent change in logic-level when these are pressed. But if these resistors are a bit on the low-side, then there may be more chance of having issues in a shorter period of time, when the pressed-contact resistances have risen a bit. |
|
![]() |
![]() |