vrijdag 25 oktober 2019

PiDP8 - A replica of the PDP-8/i

Actually, this is neither 8 nor 16 bits. It's the 12 bits PDP-8. Or even more specific: the PiDP-8 replica of the PDP-8, created by Oscar Vermeulen of Obsolescence Guaranteed.

It's sold as a kit, but they are only produced in batches when there is enough interest. I waited a few months after entering my name on the e-mail list. It comes as a bag of components and switches, a huge PCB, a front panel and some wooden parts. The computer core is a Raspberry Pi (not included).
One of the first problems I was faced with was how to check if everything actually works. When you just start the unit, and  the Raspberry Pi runs the SIMH software there will be some blinking LEDs, and it will probably react to switches but it's very hard to find out if all switches are really working, or if all LEDs will light up if required. So I Googled and found a pidp_test program by Paul R. Bernhard: http://downspout.ca/pidp-test.zip.
After downloading and Unzipping you can build the actual program using the 'sudo make' command:

pdp@pidp8:~/usbdrv$ sudo make

After a successful build it can be started with 

pdp@pidp8:~/usbdrv$ sudo ./pidp-test


pdp@pidp8:~$ cd usbdrv
pdp@pidp8:~/usbdrv$ ls
main.c  Makefile 

Power on the unit with the ' STOP'  button pressed. This will boot the Pi, but not start the PDP simulator. 

Some quick tips to get started.

The manual for OS8 V3D (the version used in the simulator) can be found on the DEC section of the 'bitsavers.org'site

Setting the date.
The date can be set using the 'DATE' or 'DA' command. It requires the date in the format dd-mon-yy. So the month should be spelled in it's three letter abbreviated form, and the field must be separated by dashes.  Oh, and the year must be between 1970 and 1999...No year 2000 problem for the PDP-8.

.DA 21-NOV-16
.DA 21-NOV-78

Some good instructions on how to toggle a program are available on the RETROCMP site.

The site of Big Dan the Blogging Man has an excellent series of examples and step by step instructions on writing, assembling and running software on the PDP-8. Not everything seems to work as described though. Probably there are some differences in running the pure SIMH simulator and how it is implemented on the PiDP-8.
He describes how to enter, compile and start a simple program under OS/8. All steps as described work fine on the PiDP-8, except the running itself.

I've tried this program (from the DustyOldComputers site):
isz   delay  / create a delay
jmp   loop
cla          / clear AC so we can load it
tad   value  / get value
mql          / stash AC into MQ
tad   value  / fetch value again
cma          / complement AC
isz   value  / get to next value
nop          / ignore possible "skip" from ISZ
jmp   loop   / and do it all again
delay, 0020
value, 0021

I saved it as 'BLINKR', and then compiled it using the following command:


Which is a shortcut for  'PAL BLINKR,BLINKR<BLINKR/H', and way easier to type...
This creates the BLINKR.LS file which can be viewed by typing: TYPE BLINKR.LS

loop,  0000 2020 isz   delay  / create a delay
       0001 5000 jmp   loop
       0002 7200 cla          / clear AC so we can load it
       0003 1021 tad   value  / get value
       0004 7421 mql          / stash AC into MQ
       0005 1021 tad   value  / fetch value again
       0006 7040 cma          / complement AC
       0007 2021 isz   value  / get to next value
       0010 7000 nop          / ignore possible "skip" from ISZ
       0011 5000 jmp   loop   / and do it all again
delay, 0020
value, 0021

When you type 'LOAD PROG', followed by 'START' it will not work. Somehow the program gets loaded but is immediately overwritten by OS/8. Something you can see by exiting the emulator (Ctrl-E) and type 'ex 000-010'to examine the contents of the memory. None of the just loaded instructions are there. It will only work if you use the  'LOAD PROG/G' which starts the program immediately after loading.
The reason for this is explained by Rick Murphy on the forum:

If you return to OS/8 using a JMP to 7600, your program contents from location 0 to 1777 are saved to dedicated blocks on the system disk, then overwritten by the keyboard monitor. Those will be restored if you run certain commands.
If you halt and examine that memory space while OS/8 is at the "." prompt you're actually viewing the KBM.

dinsdag 20 augustus 2019

Timex Sinclair 1000


Another Sinclair computer. Basically a ZX-81, but this one has a blazing 2K Memory ! It was branded Timex, and mostly sold in North America. Read all about it on the Wikipedia page, or just watch the great documentary on Sinclair computers by The 8-Bit Guy.
Revolutionary Technology !. And 'No user serviceable parts inside'. We'll see about that

I got this one cheap, but it came without PSU, and the box is heavily damaged. Actually only the rear section of the cardboard sleeve is still recognizable.
And, of course, it did not work. That is to say, the start screen comes up, but most of the keys do not respond. As expected, the keyboard cable is broken and cannot be fixed.So I ordered a new ZX81 keyboard on Tindie, including an overlay for the slightly different key texts of the Timex version ('Rubout' vs 'Delete'..).

Removing the old keyboard was surprisingly easy. After some careful heating using a standard hair dryer it was simply pried off using a putty knife.
Stick on the new keyboard membrane ( which is totally black), apply the Times keyboard sticker and the computer looks like new.
Then, when I wanted to re-attach the ribbon cable to the board I found that some remains of the old cable were stuck in the connectors. And when I tried to remove those, the connectors were damaged so they needed replacing too. Ordered two sets from Sell My Retro, and replaced them. Which finally solved all issues, and I can finally start programming...
Two connectors to be replaced, but after that the complete alphabet is available again.

Price [Original] €25,- [US$99,95]
Processor Z80 @ 3.25 MHz
Programming Sinclair Basic
Why ? Complete my collection of Sinclair computers.

maandag 29 april 2019

NEC 8201-A Portable PC

Advertised on eBay as 'one of the first laptops', the NEC 8201-A is actually a surprisingly nice computer, even today. It's got an 8x40 characters LCD screen, built in Basic, Word-processor and Terminal software and  a decent keyboard. With  three serial ports,  a printer port, Cassette interface and a Barcode Reader interface it also has plenty of connection possibilities. And the most appealing feature of all : it can run for almost 20 hours on 4 AA batteries !

The battery pack seems corroded, though not beyond repair. When cleaning there is a lot of green stuff coming off the board. Probably copper oxide, but it could also be remains of leaking batteries.
But after inserting a fresh set of batteries the computer does not turn on. Checking the connection from the battery to the board I soon found out the contacts were still bad. So I first just soldered the pack directly to the board.
The computer turns on, and the display shows text, although hardly visible. Turning the contrast control does not change this except maybe at one end, where I could see an almost black screen sometimes. So it looks like this control may be bad. The schematic shows its a 50K potentiometer so this might need cleaning or replacing. Looking on the internet for details on the control, I also found some notes from people that found the control to be OK, but a fault in the -5V power which could cause the same problem. So I first measured all voltages on the power supply.
On the picture I indicated the GND point used, how the connector is numbered and the voltages that should be present. All seem pretty good, except maybe number 18, which is not really 9V, but this could be due to the fact that it is battery powered.
Anyway, the -5V (which as far as I can see is only used for the LCD contrast) is present, so it must be a problem with the potentiometer.  Following is a detail from the schematic showing how the control is used.

Since I could not figure out from the footprint of the potmeter how it was connected I first measured connections from the adjacent  components R10 and R77. From that I found that R10 is not 100K but 50K. The two big solder squares are connected to the wiper of the potmeter, and the two other small contacts are the outer ends. Since I did not have a 50K model I used a 10K trimmer to test it. And indeed the screen now was readable. The contrast range was still limited so I added a 20K resistor in series with the trimmer and got a good result from that.
Obviously the trimmer that I used was different from the original so there was no way it would fit into the original PCB.

Also the knob would not fit the trimmer. So I decided to print one on my 3D printer. Then I connected the trimmer to the bottom of the PCB using wires, and glued it on the top using hot-glue. All this worked out really nice so and the computer screen is useable now.

Price [Original] €25,- [US$699,-]
Processor Intel 80C85 @ 2.4576 MHz
Programming Microsoft Basic 1.0
Why ? One of the first laptops.

dinsdag 18 december 2018

Philips G7000 - Videopac

My first game console was a Philips Videopac G7000. My father bought it, and I spend hours blasting spaceships, eating square 'dots' and playing tenpin bowling... I remember there were games I played so much that I could finish them with a perfect score every-time (games were not that complicated in those days). And, lets not forget, this computer actually started my programming career. Videopac cartridge nr. 9 turned this game console into truly programmable computer. Programming was limited to 100 bytes, output was a single line of 16 characters and you had to enter your commands in hexadecimal code. Or you could actually enter them in as 'assembler' text, but you could not list your program as such so it was easier to just enter the code .

I spent a lot of my savings on games and as far as I remember we had a box full of them in the end. Then, after not using it for a few years (since I got into PC gaming), we sold it.
But as with everything from this era, the nostalgia kicks in and I felt an urge to add one to my 8-bit collection. Fortunately more than a million were sold at the time so they are not rare and relatively easy to get.

I bought mine for €50, including 6 games which is not bad. The unit definitely looks used. One of the joystick knobs is missing and it has some dents and scratches, but not much more than the one we had 30 years ago.
The Dot Eaters site has a nice story on the Videopac or actually the Odyssey2 as it was known in
other countries. Though many were sold, it is not a hugely popular collectors item these days, and information on the internet is widely scattered with lot of websites that look like they were made in the nineties. There is a list of games on Wikipedia, but only few of them have an actual article or description.

As mentioned, the unit I got was definitely used, and showed some marks of that. So I cleaned it and the first thing I did was to add connectors for the joysticks. This series consoles came with the joysticks hardwired to the console, which is really annoying if you want to pack the system up. The weird thing is that the housing does contain the space for external connectors, they were just not installed, probably to save some money. So I just removed the two pieces of plastic that covered the connector holes and mounted two 9-pin D connectors.
There is a VideoPac forum, and one of the posts shows the wiring of the joystick in detail. The colours match the colours of the wires in the cable, so I just cut the cable and soldered it to pins 1 to 6 of the connector.

Next issue was the missing joystick knob. Which is not a big deal in these days of 3D printing so I designed and printed one that turned out remarkably nice. Its on Thingiverse now, so you can print one if you need it.
Then came the joystick itself. The Videopac joystick is a bit of a unique design, with 8 switches arranged in a circle which are activated by a disc that you tip to a side by means of a large spring.

The switches are just metal strips that you push down to touch another piece of metal on the PCB.
I set out to make a complete new base, now with 8 mini switches as shown here.
That did not really work. When I mounted the disc again and put the spring in place the disc just activated all buttons at once. Clearly the spacing was much more critical than anticipated, so I placed the switches on second board and put that underneath the first board.
Now only the buttons stick out, and this seems better. But it still did not work great. Now the problem was that the centre of some switches was not exactly under the edge of the disc. Since this is a rounded edge it sometimes just hit the side of the button and the switch would not fully close. So I ended up printing a new disc, slightly bigger than the original and with a flat ridge that covered all the switches.
And this works surprisingly well. After reassembling the joystick it works flawlessly, and I immediately used it to set my high score on Munchkin !

maandag 27 augustus 2018


The Mattel Aquarius is something I almost given up on, since most of the the systems offered on EBay are way over my budget. In fact I did not even expect to get this when I placed my €40,- bid for what I thought was only the console itself. To my surprise and great joy I did not only win the bidding, but found myself with a really complete spread. Including the tape recorder, a printer, all the original books and even four original games.
Normally I refer to the articles on The Register, but this time I also recommend reading this section of the RetroArchive since it's got the best story of the Aquarius. As both articles really make clear the Aquarius was one of the biggest flops in the 8-bit computer era.
Multiple sources on the internet report that the standard Basic is supplied even without a FOR NEXT loop, but that's not true.
There's not as much information available on the internet as for the Spectrum or Commodore C64, and it's much more scattered but I found the following sources very useful:
The Aquarius section on the website of M. vd Steenhoven.

Mattel Aquarius Thermal Printer

One of the many peripherals designed for use with the new Mattel Aquarius home computer system is its thermal printer. This is strictly a one-system printer; it connects directly to the Aquarius console without additional interfaces, as do the other Aquarius peripherals.

Mattel Aquarius Printer
The Aquarius printer offers 40, 5 x 7 characters per line (10 cpi) at the rate of 80 cps. It is capable of printing 256 characters including upper- and lowercase letters, numerals, and special graphics characters. The printer will accept special thermal paper 4-3/8 inches wide.
Although the printer looks really fancy and if it was specially designed for the Aquarius, it is in fact a Alphacom 42 VP thermal printer, which was also used for the Commodore C64 or VIC20.

Composite Video

As with all my retro computers, having a composite video output is one one of the first requirements. Geordy Rostat at notANAN has a description of his attempt to do this. Amplifying the existing video signal so it is suitable for a standard monitor is what I've done so far on all my Sinclair computer,so this seemed like a good solution. Ed Snider on 'The Zippster Zone' however mentions the possibility for a different solution, using the raw RGB signals. This seems like a nice option too, when combined with my GBS-8200 video converter board.
Third option would be the composite video modification found on the  Intellivision wiki.

And recently I found this : https://aquarius.1stage.com/aquarius . There are complete instructions on building a video amplifier circuit, and even a link to a ready made PCB.



zondag 24 september 2017

Toshiba HX 10 MSX

The HX-10 was one of the first MSX computers to be introduced in Europe. MSX computers were the final initiative to get to a universal 8-bit computer platform. These Z80 based units were all equipped with Microsoft Basic. And just to illustrate that the HX-10 is really one of the first: it  contains version 1.0.

This unit was sold for a decent price (€20,-),but with the warning that some keys did not work. I expected that some cleaning might solve this problem, but when I tried the unit I found that Q, 3, R,F and V keys don't work. Since they are all close together on the keyboard it is more likely that something is wrong in the connections of the keyboard matrix. To my surprise there does not seem to be a 'Service Manual' or even schematics for the HX10 available online, so I'll have to figure it out myself.

Opening the unit is easy: there are only two screws left, the other four seem 'missing in action'. The keyboard is a very decent and sturdy construction. The key numbers are printed on the rear of the PCB so it's also very easy to find the location of the failing ones.

First I measured on a working key (the Esc key) how the keys are actually connected.
So top two and bottom two contacts are connected, and the switch connects bottom to top.
As with all keyboards from this era it must be some matrix. On the lower left side there are two connectors, a 9 and an 11 pin which are most likely the row and column connections. So I used the multimeter to check which keys each contact was connected to, which soon led to the following schema:

Key Numbers
1 0 1 2 3 [3] 4 5 6 7
2 10 11 12 13 14 15 16 17
3 20 21 22 23-. 24 25 26 27
4 30 31 32 33[F] 34 35 36 37
5 40 41 42 43[N] 44 45 46[Q] 47[R]
6 50 51 52 53[V] 54 55 56 57-[Z]
7 60 61 62 63[Caps] 64 65 66 67
8 70 71 72 73 74 75 76 77
9 80 81 82 83 84 85 86 87

The key numbers that have a letter next to them are the ones that do not work. From this I can see it's not a complete row or column that is missing, but just some section of a row. Closer inspection reveals that it indeed comes down to some broken traces.
So after adding just three wires, all contacts seem fine, and indeed the keyboard is working fine now.

zondag 14 mei 2017

ZX Spectrum+

Following the highly successful Spectrum was the Spectrum+. Basically exactly the same machine but slightly bigger and with a better keyboard.  The Advert on Youtube shows it all.
As with the original Spectrum this one needs the composite video modification to be useful. Easy, since the internal electronics are exactly the same. This time I thought I'd be extra careful, and not damage the keyboard flat-cable as happened with the ZX-81 and Spectrum. So I opened the housing very gently, moved the keyboard part only just as far as required to reach the video section, and avoided touching the cables.
Yet, while looking at the cables I noticed that the top and bottom plastic layer seems detached from the middle one, which carries the conductive traces.Still, they looked undamaged when I closed the housing after installing the composite video mod. 
And..No Luck... The letters B, G and T (all in the same vertical column) do not work. So this proves again that it is just not possible to work on these units without damaging the keyboard. So I'll have to order a new membrane, again from RWAP.