I’ve been completely enamoured with my Tandy 102 Portable Computer since receiving it about a month ago. I can’t believe I’ve gone for so long without picking one up.
The machine itself is great – a nice readable display, excellent keyboard, great battery life, comprehensive BASIC implementation, accurate emulator ( VirtualT) and enthusiastic following. There are a number of after-market solutions for data transfer and storage, and documentation covers all aspects of the machine.
In preparation for my Retrochallenge entry I’ve ordered several books on both the Tandy model and 8085 machine language programming. The 8085 was Intel’s solution to provide a low-power and more tightly integrated version of the 8080. At around the same time the Z80 was released separately by Zilog, so both the 8085 and Z80 share a common ancestor and instruction set in the 8080, but Z80 programs won’t run on the 8085 unless they are written to only use the 8080 instruction set.
As a text editor (and I’m writing this on the Tandy 102 now) I can’t fault the hardware/software combination. It is responsive to both text entry and editing and unlike other comparable tools (such as the Cambridge Z88) the interface and keyboard shortcuts are very intuitive. For example you can use Shift-Left and Shift-Right to move backwards and forwards a word at a time, and Shift-Down and Shift-Up move you a page of text at a time.
As it is summer here one of the truly wonderful benefits is being able to ‘compute’ outside without the problems of screen visibility. I know I’ve harped on about that before with the Z88 and the HX20, but it’s worth re-iterating – the technology used in these early laptops often means they are the only viable outdoor computing options, regardless of age.
- Tandy 200 converted to a Rasperry Pi or other Linux based PC. LiPo based power, Teensy 2++ keyboard to USB converter, custom graphic to LCD driver (possibly).
- VT420 terminal with a Raspberry Pi built in, LiPo powered with DC->DC converter, keyboard shelf, possibly WiFi connectivity.
- Bluetooth serial module for the Tandy 102.
- Arduino built into Tandy 102 with Wifi shield for connectivity? Is this possible?
Introduction to the Model 102
Typed on the Tandy 102 itself…
This is the Tandy 102 Portable Computer. There were three variants of the Tandy Portable computer. The original model 100, the 102 (slightly thinner) and the 200 which had a flip up screen displaying more lines of thext. In order to print from the Tandy 102 you need a cable that has a 26 pin ribbon connector and a standard centronics connector. The cable I am using is for a BBC Micro and is compatible.
The operating system for the 102 was written by Microsoft and is well integrated with the excellent BASIC software. Portions of the code were written by Bill Gates and this software is credited with being the last piece of software that Bill had direct hands on involvement with.
The Model 102 comes with a 32K ROM and 24K RAM as standard. An access panel on the bottom of the machine allows the installation of a custom 32K ROM and an additional 8K of RAM.
This particular example was purchased off eBay recently for #26. My Retrochallenge entry this year features the 102 – I plan on writing several pieces of software, hopefully culminating in a machine code program burnt to an EPROM.
The text has been reformatted from the original 40 columns as was transferred to my laptop via the Linux minicom program.
OK, so I’ve not got off to the best of starts here. My first week, where technology has been involved, has mostly been either repairing self-inflicted damage, fixing other people’s stuff or failing at retrochallenge.
I’ll spare you the details of my dd raid drive saga, or the restoration of my wife’s ageing windows install but will concentrate on what I’ve been trying to achieve.
When I received my Tandy Model 102 recently I was curious about burning an EPROM for it. There are quite a few images available and I like to keep it old school if possible. I had an eraser, burner and EPROMS of the right size 27C256 and felt confident once I’d order the adapter PCB that life would be sweet. I failed to get my existing EPROM burner working, or at least talking to, one of my laptops. In a act of despair I ordered a WILLEM programmer on the basis that the software was more likely to be compatible with more recent machines – certainly it couldn’t be any worse than the poorly translated Chinese software that came with my original burner. All this was around two weeks before RC2015/07 and I had the new programmer and the PCB adapter boards in plenty of time.
In order to construct the adapter PCB I had to find some pins that were long enough to reach into the weird PLCC like but DIP shaped receptacle that is the option ROM socket in the bottom of the Model 102. I found that IDC pins worked just fine, so soldered a load of those into the PCB and then an EPROM.
I have no idea what these images are doing BTW – you spend so much time using these WYSIWIG editors (didn’t that mean something once) only to find when you publish that everything has moved around.
Anyway, long story short all this was for night. I should have read the documentation more carefully, but responses to my post on the Tandy Club 100 Mailing List indicated that I was wrong to try this and that it wouldn’t work. The PCB is primarily for replacing the main ROM in a Model 100 (which is deeper) than the option ROM in a Model 102. When I inserted the adapter into the PCB I could no longer close the trapdoor – I am guessing that the model 100’s deeper housing doesn’t suffer from this failing. And so I moved on…
One of my thoughts was to write a game for the Tandy 102 in assembler. I’d toyed with the idea of targeting a C-compiler, but the more I looked into the Tandy’s ROM and RAM map the more I decided that it was probably going to be a hard thing to achieve. I’d done this previously with my Motorola 68000 SBC, but clearly that is more capable than the rather limited 8085.
At the time I was thinking ‘game’ I both went to the North East Retrogamer (think room full of arcade cabs, pinball tables and consoles/old computers) and also rediscovered my book Supercade. Whilst perusing the book I came across a maze game for a system I’d never heard of, the Channel F. Looked like the right sort of complexity for a first stab.
Here’s the blurb (courtesy of Supercade):
Channel F Fairchild Camera and Instrument
The Channel F Video Entertainment System (VES) was introduced just following the debut of the Coleco Telstar in August 1976. Released by Fairchild and designed by Jerry Lawson, it ws the first home videogame system to use a “Videocat” game cartridge (a plug-in programmable ROM cartridge) in order to play additional
games on the system.
Prior to the release of the Channel F, videogames were selected by a series of switches or dials to toggle between various built-in games. Although the original Magnavox Odyssey did include plug-in cards, they functioned in a similar manner to the switches in that they acted as a circuit “key” to switch between pre-programmed games and didn’t contain any actual game programming. But the Channel F Videocart, with its bright yellow plastic outer casing and bold game label graphics, actually contained program ROM and is now considered the first videogame cartridge.
Designed around the Fairchild F8 8-bit microchip and four RAM chips, the architecture of the Channel F system was revolutionary in that it was the first home videogame system to use a programmable microprocessor with a screen bitmap – basically a scaled down implementation of the technology now being used in coin-op arcade videogames.
The Channel F shipped with the main system console, two game controllers, AC adaptor, and RF box. Two “console” games – Hockey and Tennis – were pre-programmed into the system. The console itself contained a slot for inserting the optional spring-loaded cartridges ( about the size of an 8-track tape), a compartment to store the game controls, and numerous control switches including an innovative “Hold” button for freezing the action on-screen.
The Channel F was also the first home system to include a directional joystick. Videogame controllers – even the control boxes of the Odyssey – usually consisted of knobs to control the horizontal/vertical direction of active objects on-screen, or a light gun attachment for target games. However, the Channel F’s plunger style game controls – hard-wired to the console – contained a knob on top that could be moved in eight directions: forward, backward, left, right, twisted left or right, pulled up, or pushed down. With this configuration it was now possible to control any number of on-screen actions.
The Channel F was incredibly popular following its release in 1976, and by 1977 the system was on back-order for nearly six months. Fairchild released a total of 21 games for the Videocart library throughout the life of the system including Space War, Memory Match, Quadradoodle, Math Quiz, Shooting Gallery, Tic-Tac-Toe, Blackjack, Pinball Challenge and more. Zircon International (the makers of the handy “StudSensor” pocket tool) purchased the videogame division from Fairchild in 1979 and released the Channel F System 2 along with five additional game cartridges.
Unfortunately the revolutionary Channel F was swiftly eclipsed following the release of the technologically superior Atari VCS – and was discontinued in 1980.
It’s in the Game!
So I printed out a screenshot of the maze shown in the youtube video with a view to encoding it as a bit pattern:
I then wrote a quick BASIC programming to check the data was correct (there were a couple of mistakes) before moving into the murky world of 8085 assembler!
110 FOR Y=0 TO 20
120 FOR X=0 TO 4
130 READ B
140 FOR Z=0 TO 7
145 LET PX=(X*8)+8-Z
150 IF B AND (2^Z) THEN GOSUB 2000
160 NEXT Z
170 NEXT X
180 NEXT Y
990 IF INKEY$="" THEN GOTO 990
2000 LET F=3
2010 FOR G=1 TO F
2020 FOR H=1 TO F
2030 PSET (PX*F+G, Y*F+H)
2040 NEXT H
2050 NEXT G
3990 DATA 255,255,255,255,128
4000 DATA 0,0,32,0,128
4010 DATA 191,255,171,255,128
4020 DATA 128,136,138,8,0
4030 DATA 254,170,190,235,128
4040 DATA 138,162,162,34,128
4050 DATA 234,175,170,190,128
4060 DATA 130,40,138,136,128
4070 DATA 190,234,250,234,128
4080 DATA 130,42,2,138,128
4090 DATA 187,187,255,186,128
4100 DATA 162,32,8,34,128
4110 DATA 170,239,235,254,128
4120 DATA 170,136,168,128,128
4130 DATA 174,190,171,187,128
4140 DATA 160,160,162,40,128
4150 DATA 191,174,190,235,128
4160 DATA 160,34,8,8,128
4170 DATA 175,251,235,254,128
4180 DATA 160,2,2,0,128
4190 DATA 255,255,255,255,128
and the resulting display on the Model 102:
Tandy Model 200
I also received a Tandy Model 200 recently, with half an idea to try and replace the internals with something modern whilst keeping the same keyboard and case. Unfortunately there are three keys that don’t work on the keyboard. I originally assumed that this might be down to a connection issue and they were on the same scan row, but I discovered following disassembly that it is the individual key switches themselves that are faulty. Somewhat disappointing! So I’m going to have to look out for a donor machine.
Next up… programming the Virtual Model T in assembler!