6530 hardware emulator in FPGA in 40 pin DIP

Imagine a true 6530-002 and 6530-003 replacement , the RRIOTs of the KIM-1

Now with modern FPGAs you van do that: a 40 pin PDIP replacement: the reDIP RIOT is made for that purpose.

Here is the code for the reDIP to make it a 6530-002 or 6530-003:

Github with gateware for Commodore MOS 6530 RRIOT

Since the 6532 is in fact a subset of the 6530 (no ROM, more RAM), it seems not too difficult to make a 6532 replacement this way.

The reDIP RIOT is an open source FPGA board which combines the following in a DIP-40 size package:

Lattice iCE40UP5K FPGA
1Mbit FLASH
5V tolerant I/O
The reDIP RIOT provides an open source hardware platform for 6530 RRIOT / MOS 6532 RIOT replacements.

See here the github for this project

https://github.com/daglem/redip-riot

post

PAL-2

4 february 2025 2025 I have built the PAl-2 kit, now designing and building a I/O card.
This information is based upon the available documentation: User manual, Schematic, BOM.
The PAL-2 is for sale by Liu Ganning at Tindie

On this page:


My PAL-2 #1 freshly built

Just followed the interactive BOM, passive components first, ICs last.
Nothing special to note, compare yours with the photo on the PAL-2 Tindie site.
Orientation of IC sockets and IC’s, check twice!
Check your soldering joints, not too much sodler, but covered with the right color solder.
And the three slider switches,: the SST keyboard one has a higher slider that the other two!

Please be careful with the Dupont power cables, double check the polarity! If in error: magic smoke!

I do not like the Dupont wires for power, serial, TTY switch. Too easy to make a mistake in the power connection.
I am now designing and building a simple I/O card for the Application connector, experimenters print, point to point wires, male pin connector to PAL-2, on board female connector for USB to Serial, power switch, TTY/Keypad switch.
That may grow later to SD or 1541 or Corsham SD card interfaces.

Video of PAl-2 #4, by Nils, running!

What is a PAL-2?
The PAL-2 is a kit for an SBC in the now large family of KIM-1 clones. Ranging from the Micro-KIM to the PCB exact replica by Eduardo Casino, all share the KIM-1 ROMs, LED display and TTY interface and the 6532 RIOT instead of the 6530 RRIOT.

What makes the PAL-2 unique:

  • It is a real and complete KIM-1 clone.
  • Available as a DIY kit with high quality components.
  • The layout is close to the KIM-1.
  • The good looking keypad is very close to the KIM-1
  • Application and Expansion connector with all relevant KIM-1 signals.
  • Lots of RAM in many configurable options.
  • Both RRIOTS 6532 on board.
  • TTY interface on TTL level, USB to TTL adapter included in the kit, quality serial!
  • Power can come from the USB to TTL adapter or from external 5V supply (same as for the KIM-1)

The PAL-2 differs from a KIM-1

  • No Audio cassette interface for file I/O circuit, but see below for a solution
  • Application and Expansion connector as 22×2 pinheader instead of PCB edge connectors
  • The signals on the Application connector are not all identical: no audio, TTY instead of 20 mA loop, decoding lines added
  • Not the same size PCB

The PAL-2 differs from the PAL-1:
The many quality improvements and enhancements make the base PAL-2 kit more expensive then a base PAL-1 kit.
If you expand the PAL-1 to the level of a PAL-2 you need to spend money on a motherboard, a RAM 32K, a second RRIOT kit, an RS232 cable and gender changer and a 9V power supply.

  • Improved keypad, with labels and look of the KIM-1
  • No need for a Motherboard
    • No external RAM module required
    • No external RRIOT required
  • E000-FFFF can be used freely from ROM expansion
  • The vectors (Reset, NMI, IRQ) can be placed in external ROM.
  • Looks a lot more like a KIM-1
  • Complete Application and Expansion connector
  • TTY on TTL level instead of (not standard) RS232



Schematic

PAL-2 User Manual


RAM decoding
The PAL-2 has a very flexible RAM memory layout, as shown in the next parts of the schematics:



Internal ROM and external ROM
The PAL-2 has a 2K ROM with the KIM-1 monitor. Since there is no audio in and out circuitry, the ROM from 1800-1BFF could be used for other programs, like the KIM Clone by Corsham Technology (Which also did not have the audio circuitry). The 28C16 is easy to program.

One of the first expansions that is to be expected is an external 8K ROM. The decoding for this ROM, e.g. an 28C64 is already present on the connectors and in the decoding circuit.
The decoding signals are 8K7_SELECT (CE on 28C64) and 8K7_ROM (OE on 28C64). Just the 28C64 IC has to be connected to address and data lines.


DIP Switches
The PAL-2 has a full 64K address decoder onboard, while the KIM-1 has only a 5K onboard address decoder for expansion. These two DIP switches on the PAL-2 are designed both to expand the KIM-1’s RAM and to maintain compatibility with its basic configuration.
On the PAL-2, the 4-bit DIP switch enables the onboard K1 to K4 RAM spaces, with each bit controlling 1K of memory. The K1 to K4 naming follows the definitions in the KIM-1 user manual, covering the address range from $0400 to $13FF. If all four DIP switches are set to ON, the entire 5K RAM space becomes available to the system.
The 8-bit DIP switch controls the “big segment decoder,” with each bit corresponding to an 8K memory block. These blocks range from 8K0 to 8K7, with 8K0 ($0000 to $1FFF) being the KIM-1’s default occupied address space. Since the PAL-2 is a KIM-1 replica, if you want to use it as a KIM-1 system, 8K0 must be set to OFF to allow the onboard KIM-1 logic to function. However, if you’re building a completely new system on the PAL-2, you can set 8K0 to ON to bypass the KIM-1’s onboard logic for the lowest 8K of memory.
The 8K1 block starts at $2000, controlling an 8K space beyond this address, and so on. If a bit is set to ON, the KIM-1 system will be able to access the corresponding address space, which will function as RAM. If a bit is set to OFF, the KIM-1 system will still work, but with reduced available address space. When performing expansion or add-on modifications on the PAL-2, you may need to disable certain address spaces to prevent the onboard logic from accessing the RAM chip.
The 8K7 block, representing the highest 8K memory segment, offers additional flexibility on the PAL-2. If 8K7 is set to ON, you can choose how to use this space—either as RAM or ROM—by adjusting the 8K7 SEL switch. For example, if you write a program (such as a tiny OS for the KIM-1) and burn it onto a ROM chip—similar to the well-known Jim’s ROM (but smaller)—you can connect the ROM to the PAL-2 (with some additional hardware, which is still under development). To boot from your ROM chip, use the VECTOR SEL switch to select ROM, allowing the system to retrieve the top three vectors from the ROM chip instead of the onboard KIM-1 ROM.


Application and Expansion connectors


KIM-1 Application connector


Differences on the Application connector with the KIM-1:

  • AUDIO IN -> 8k7_SELECT
  • AUDIO OUT LO -> 8K7-ROM
  • TTY in and out now at TTL level for USB to TTL converter
  • TTY PTR and KYBD, +1wV, AUDIO OUT LO not connected

This means, even if the edge to pin connector issue is solved, the standard KIM-1 I/O boards will not work for TTY and audio.

The expansion connector is identical to the KIM-1.


KIM-1 Expansion connector


Power supply
Power has to be applied in the standard KIM-1 manner to the application connector Pin 1 = GND, pin A = 5V.
Note that reversing these pins will mean the dead of the PAL-2!


Expansion

As a first suggestion for a PAL-2 extension I see a board connected to Application and Extension connectors with:

KIM-5

The KIM-5 ROM board can hold 8 6540 mask programmable ROMs.
Known are the 3x 6540 Resident Assembler/Editor ($200) and 1x 6540 KIMath (50$)

On this page:


Where is KIM Going?
Richard Simpson, KIM Forum, Kilobaud 1977

One of the questions most frequently asked me was “what are the future plans for KIM?” Most KIM owners are aware that MOS offers a KIM-2 4K RAM expansion board and a KIM-3 8K RAM expansion board. Either of these can be attached directly to a KIM-1. To expand further, a motherboard (KIM-4) must be added and MOS has planned a KIM-5 ROM expansion board, which will hold up to eight MCS6504 (2K by 8) mask-programmed ROMs (the ROMs are not provided with the KIM-5 but must be purchased separately). At present, there are two sets of software which are planned for release in ROMs – KIMath and a resident assembler/editor.

KIMath
KIMath will occupy a single ROM and consists of a set of subroutines for doing floating-point arithmetic. All calculations are done in BCD to avoid the round-off errors which are inherent in binary floatingpoint routines. The subroutine user can specify the precision (in decimal digits) of any calculation. The more precision specified, of course, the longer the computation time. The package will handle a maximum of sixteen decimal digits of precision plus a two digit exponent so numbers in the range of ±1 times 10E±98 can be handled. The subroutines occupy memory locations F800-FFF8 and were written so they could be used with any 650Xbased system – not just KIM. The subroutines include code for addition, subtraction, multiplication, division, square roots, logs, exponents, tangents and arctangents. All the other trig functions can be generated through the use of trigonometric identities. A subroutine is also provided for evaluating user-specified polynomials, so any continuous function can be approximated.The KIMath ROM should be available by the time you read this. If you don’t want to pay $50 for the ROM, the Programming Manual for KIMath is available for $15 and it includes a complete listing of both source and object code. The manual also contains thirtyseven pages of information on using the subroutines, including a worked-out sample application. If you want to use the ROM but balk at paying $80 for the KIM-5 board to hold it, you’ll be happy to know that the 6540 ROM can be attached directly to the KIM address and data busses, although you’ll need a couple of extra ICs to send the right signal to the KIM-1 Decode Enable line. I’ll provide an interface schematic for this in a future issue of the KIM forum.

The Resident Assembler /Editor
To create any large-scale software on a microcomputer, an assembler is a necessity. Industrial microcomputer users can use the crossassemblers available on several commercial timesharing systems, but the expense of going this route is too much for any but the most affluent hobbyist. Thus, the introduction of the KIM resident assembler should facilitate user software generation and make a lot more software available. The assembler and text editor are available as a set of three MCS6540 ROMs – a total of 6K of code. The $150 which MOS charges for the set may seem exorbitant until you realize that you don’t have to buy 6K of RAM to store it in (which would cost as much or more) and you’ll never have to load it or have it clobbered by errant statements in the program you are developing. Like KIMath, the Assembler/ Editor will work on any 650X-based system. Since the program has to do terminal I/O, locations are reserved in memory page zero to contain the address of the terminal input and output routines. These locations are automatically initialized for KIM owners; users of other 6500 systems (JOLT, TIM, Apple, Baby!, OSI, etc.) can preset those locations with the addresses for the device service routines of their own system. The Editor/Assembler occupies the memory space from E000 to F7FF; thus the editor, assembler, and KIMath fit together in the top 8K of memory.The text editor is a standard line-numbered text editor; it provides much the same editing capability you would find in a BASIC system. You can enter or insert new lines, replace old lines, resequence the line numbers, dump the text file to audio cassette or paper tape, list out lines in the file, and locate lines in the file which contain any specified text string. There is also a special command (actually, any command which begins with an X) to allow you to jump to a user-written subroutine so that you can extend the editor’s capabilities to meet your own needs. Naturally, both the editor and assembler require that you have a terminal connected to the serial port on the KIM-1.The assembler is a singlepass assembler; if your source text is on paper tape or audio cassette, you only have to feed it through once. Normally your source text will be in memory and the assembled code is always written to memory. The source code, symbol table, and object code can be located anywhere in memory you wish. You may have several different source files in memory simultaneously. If you have insufficient memory space to store a large source program, you can break it into several segments, store each segment on audio tape, then bring back one segment at a time for assembly. The assembler will assemble the successive segments until it encounters an “END” statement. It will then put out the symbol table and terminate assembly. Although the editor is fairly limited (it has no capability to edit within a given line, for instance) it is quite sufficient for editing assembly language programs. The assembler is very fast and with good error diagnostics. Perhaps its only serious fault is that the printed symbol table is not sorted alphabetically and no crossreferences are given.


MOS 6540 ROM
The MOS Technology 6540 is a 16k (2KByte) ROM. Factory burned. Mask options for specification of chip select equations. 5! chip selects, requires Phi2 6502 system clock. 24 pin, very uncommon for a small ROM.
A strange and uncommon device, AFAIK only used in the KIM-5 Resident Assembler/Editor and early PET computers. Has a bad reputation, and there are many replacement solutions with standard E(E)PROMs for PET computers.
The 6540’s in the KIM-5 Resident Assembler/Editor on a KIM-5 ROM board are in an excellent condition, dumping with the Backbit Pro chip tester was very easy.

MOS Technology 6540 preliminary datasheet 1977




KIM-5 ROM board
The 3 KIM-5 Resident Assembler/Editor ROMs as placed on the KIM-5 ROM board.
Besides the sockets for the ROMs is some glue logic, 2x 74125 buffers, 2x 7485 address decoders, a 7402 TTL IC and some DIP switches.
The KIM-5 ROM board is to be placed in the KIM-4 Motherboard. The manual is not available alas.

KIM-5 Resident Assembler/Editor available!

MOS Technology, part of Commodore in 1977, not only sold the KIM-1 SBC but added hardware and software as KIM System Products.

Not only hardware, a Motherboard (KIM-4), RAM memory expansions (KIM2, -3, -3B) and a prototype board (KIM-6) but also software, like KIM Math subroutines (KIMath), TIM (RRIOT + document).
This has been documented for quite some time now on this website with photos and manuals.

I have been looking for years for the KIM-5 Resident Assembler/Editor. Manuals on Assembler and Editor are already known. The software, delivered in 3 ROMs of type 6540, on a KIM-5 ROM board was never dumped before, and the existence, besides the pricelist shown here and some advertisements, doubted by many, including old Commodore employees.
Many years I searched on the internet on fora, websites and friends in the retro world, it did not lead to a dump of the KIM-5 ROMs.

A couple of years ago I saw a listing on ebay.de of a lot with a a KIM-5 with ROMs and a KIM-3B board. I was too late to bid. I could not contact the seller or buyer afterwards. But now I knew the KIM-5 did exist, and had some photos as proof.

A year later Stefan Hamann approached me to ask for information on KIM-1 material he bought from ebay. He was the buyer of the lot!
Stefan was so nice to lent me the KIM-5 (and KIM-3B) and the EPROMs he obtained. I have finally a KIM-5 in my hands with ROMs!

The ROMS have been dumped, tested in the (updated KIM-1 Simulator to 1.5.1) and source recreated. The KIM-5 Resident Assembler/Editor is preserved!

Read all about this on the newly organized and enhanced KIM System Products pages.


Resident Assembler/Editor at 9000-A7FF

KIM-3B

KIM-3B, a 16K memory module with 2114 SRAM ICs.

KIM-3B (Stefan Hamann)

KIM-3B (Stefan Hamann)

KIM-3B

User’s Manual Memory Expansion Module KIM-3B
User’s Manual Memory Expansion Module KIM-3B

Another update to the Simulators

KIM-1 and TIM Simulator have seen a small update.
Improvements on console handling and little annoyances. Focal added as programming language, for KIM-1 and TIM!
The Apple 1 Monitor, wozmon is now available as a Setting to be added the not used space in the 6530-003 tape ROM.

KIM-1 Simulator 1.4.0
TIM Simulator 0.6beta
Convert Hex Formats 2.8 (bundled also with simulators)

post

Focal-65 V3D for TIM and KIM-1

Focal on the 6502, a page on this small language, originating for Digital Equipment.
A small interpreter (about 5K) for a convenient interpreted language. Floating point 9 digit accuracy. At least two versions were distributed around 1977, one by Aresco, called “Focal V3D” and another by the Program Exchange as representative of the Denver 6502 Group, often called “Focal-65E”

Latest addition is a reconstruction of the source, by Wayne Wall of the Denver 6502 Group in 1977, of Focal V3D for the TIM to binary, and a port to the KIM-1.
Based upon a listing of the TIM Focal-65 from 1977 and a Focal-65 User manual, repaired and cleaned up.
And that enabled the reconstruction of the soource Focal-65 V3D as distributed by Aresco!

Read all about Focal-65 here!

post

Focal-65 V3D for TIM and KIM-1

Focal on the 6502, a page on this small language, originating for Digital Equipment.
A small interpreter (about 5K) for a convenient interpreted language. Floating point 9 digit accuracy. At least two versions were distributed around 1977, one by Aresco, called “Focal V3D” and another by the Program Exchange as representative of the Denver 6502 Group, “Focal-65″ or FCl_65” or “FCL-65E”

Information from the German 1981 article in MC Magazine, see the articles, indicates the existence and sale of Focal versions by the 6502 Program Exchange:

  • FCL-65 and FCL-65E with Mini userguide
  • My version from Aresco Focal V3D, 1-oct-1977 binary and userguide
  • Focal V3D for TIM, listing known and available on this page
  • Focal-65 V3E 1-oct-1979, Apple II, source listing known at MC Magazine in 1981
  • V4 for Apple, listing known and in possession of Wayne Wall, not public available

I suppose this list is incomplete, other versions may have existed. None but my binary of Aresco Focal-3D, the Aresco V3D Userguide, a User Guide by the Denver 6502 group and a listing of Focal-65 V3D for the TIM survived and is available.

Latest addition to this page is a reconstruction of the sources, of Focal V3D for the TIM to binary, and a port to the KIM-1. Also the Aresco version source is reconstructed and identical to the tape dump of 1978.

On this page you will find:

  1. My experience with Focal-65 as started in 1979
  2. Reference material: User manuals, listings
  3. Magazine articles about Focal-65
  4. Reconstructed sources of Focal-65 for TIM and KIM-1
  5. Reconstructed source of Focal-65 for the KIM-1 Aresco version
  6. On the origin of Focal-65

My experience with Focal-65 started in 1979

In 1979 my good friend Anton Muller, at a meeting of our Dutch 6502 KIM Club, surprised me with a package Anton had imported from the U.S.A. : Focal V3d by Aresco.
The package came with a cassette tape and a user manual. We installed it on the KIM-1 and played with it. Impressive what was done in about 5K!
Floating point, string handling, a trick to suppress the hardware echo of TTY input.
After an article in our club magazine more members of the club became Focal-65 users and published articles about it.

This version of Focal-65 has survived. I have dumped a working version from cassette in 2004 (not the original alas, but a working copy with a bit too much) and scanned the user manual.
Manual and binary version have been available on this website now several years. Also I added DEC Focal manuals, Digital Equipment Corp. developed and sold Focal as a product for the PDP computers. In the KIM/6502 User notes articles were published on making Focal even more interesting, also published here.

When the KIM Simulator became usable, I tested Focal and saw that suppressing the TTY echo worked, but the wait for keyboard input loop preceding the read character routine did not. So I added a setting to let Focal-65 survive that loop. So Focal-65, Aresco version, runs unaltered on the KIM-1 Simulator!

The FOCAL programming language

In 2023 a source listing appeared, thanks to Paul Birkel, of Focal-65, programmed by Wayne Wall and friends in 1977. Target system is a TIM such as Jolt or Superjolt. I typed in that listing exactly with modern assembler syntax and made that version operational.
Here I present several reconstructed versions, for TIM (653-004) such as Jolt and KIM-1 based systems.
– A TIM/Jolt/Superjolt system needs minimum 8K RAM in lower memory.
– The KIM-1 needs memory, minimum 8K, from $2000 and up.
See below for the TIM version and a port to KIM-1. These are 90% identical to the Focal-65 V3D Aresco version, so that was the start to recreate that source too .


Reference material for download

First some downloadable reference material.

DEC-08-AJAB-D PDP-8-I FOCAL Programming Manual.
Focal by DEC is the beginning of all Focal implementations. A typical DEC manual, easy to read, complete, well organized.
DEC-08-AJBB-DL Advanced FOCAL Technical Specification April 69
This manual is where Wayne Wall got his design. From the flowcharts and labels, similar names and concepts can be found in the Focal-65 source
Focal-65 users guide V3D, by Aresco
Focal-65 Users Guide V3D by the Denver 6502 Group.
Cleaned up version made by me.
TIM Focal-65 V3D source listing
Cleaned up version made by me.

Articles on Focal-65

KIM/6502 User notes
Articles from the magazine, Focal corner

  1. Introduction to FOCAL, 6502 User Notes 12
  2. Improve on echo problems with KIM TTY, 6502 User Notes 13
  3. Make room for enhancements, extend to 8K, User Notes 14
  4. Speed it up, 6502 User Notes 15
  5. Cassette save/write an LED display listing, 6502 User Notes 16

KIM Kenner
Introduction to FOCAL, how to program, Dutch

Compute II
Modify and Move FOCAL 65-E into EPROM, Compute II Issue 3

MC Magazine
German article on Focal-65, has interesting information on versions

Working versions, reconstructed from sources

Denver 6502 Group Focal for TIM

In 2023 a listing of Focal-65, by Wayne Wall, for a Focal-65 version for the TIM, showed up, thanks to Paul Birkel.
A low low quality scan, so I cleaned it up, improved contrast, removed artefacts and cropped it. The result is readable, but not fit for OCR.

TIM Focal-65 V3D source listing
Original printed listing 1977 by Wayne Wall. Cleaned up version.

I typed this source in, exactly as the listing: uppercase, same comments, same line numbers.In this way I honor the original author and also enable checking of the binary result.
I did change the assembler syntax to a modern assembler. The original was written for PAL-65, an assembler by Wayne Wall in PDP macro assembler format.
When it assembled I compared the binary out to the binary in the listing by hand. Of course typos and the curse of direct addressing, the #!, caused some extra work.
The result was a binary with the same length. as shown in the listing.

Then the binary was loaded in my TIM Simulator, with a small external patch for the ‘no echo’ input character routine in the source. The TIM has ‘software echo’ hardcoded in the monitor for reading a character from TTY, so the monitor code is copied with optional echo.
It runs!


Focal-65 for the TIM, here the source as typed in, listing, binaries in Intel hex and Papertape format and the TIM Simulator patch.

Denver 6502 Group Focal for the KIM-1

To illustrate how easy it is to adapt Focal to other 6502 systems, I ported the TIM version to the KIM-1.
Changes required:

  1. Program moved from $1000 to $2000
  2. Replaced the TIM I/O package with a KIM-1 version: IRQ/BRK vector, no echo character input (partly taken from the Aresco disassembly for character output
  3. Further no changes, same line numbers, same size

This version runs fine in the KIM-1 Simulator with the Focal V3D setting.



Focal-65 for the KIM-1, here the source as typed in, ported to KIM-1, listing, binaries in Intel hex and Papertape format

Aresco Focal-65 V3D

Here the original Aresco Focal V3D dump from cassette. Note that the dump contains a bit more than necessary. The zeropage is completely dumped, and filled in by a running Focal session.
It runs on a KIM-1 and on the KIM-1 Simulator with the Settings – Type of Break setting set to Focal V3D.

First attempt to get a source, unfinished, does not assemble, but informative.
Disassembled source by Paul R. Santa-Maria (2004) and Hans Otten (more comments) (2022).

Focal-65 users guide V3D, by Aresco

Reconstructed source of Focal-65 for the KIM-1 Aresco version

With the source of the KIM-1/TIM and the binary of the Aresco version I have since 1978, it was an easy job to reconstruct the source of the Aresco version.
By comparing the binary output of the assembled source and the binary of the tape, differences can be seen and fixed in the source.

The interpreter code is 100% identical to the tape dump (minus the extra unused bytes saved at the end). Zero page is clean.

The code runs in the KIM-1 Simulator with the Focal V3D setting. No surprise, the binary of the tape dump also runs and the binaries of the code are identical.

Focal-65 for the KIM-1, Aresco version, here the source , listing, binaries in Intel hex and Papertape

The history of Focal for the 6502

Excerpt from the history of the Denver 6502 Group.
In 1975, Denver was a hotbed of computer activities. There was a new computer club called the Denver Amateur Computer Society (DACS), and every meeting was packed with radio amateurs and hobbyists anxious to learn about this exciting new technology. DACS was dominated by Intel 8080 based computers, but there were a few people interested in the 6502. Wayne Wall was one of the first to appreciate the power and speed of the 6502, and he decided to form a subgroup of DACS for 6502 users.

Wayne was a genius assembly language and systems programmer who worked at the Colorado School of Mines. He began holding meetings every Tuesday night at the School of Mines Computing Center for anyone interested in the 6502. At first it was called the 6502 sub-group of DACS, but as time went on, it became the 6502 Group.

All told, there were probably about 100 members, but on a typical night, 30 to 40 people would crowd into the meeting room, anxious to hear Wayne’s latest ideas and see his demonstrations. He was famous for his magic shows that invariably consisted of doing something hitherto unimaginable like simulating human speech with 13 bytes of assembly code. Wayne quickly gained the well deserved reputation as a computer wizard.

Most members of the group owned Digital Group systems. The Digital Group was a local company that had a short but spectacular career manufacturing computer kits. They were powerful, easy to assemble and way ahead of their time, with memory-addressable video cards, system monitors and relatively large memory boards. In addition to the Digital Group systems, the group had a scattering of Kim’s, Tim’s, Jolt’s and even a few odd homebrew machines.

At the time, there was virtually no software available for the 6502. All programs had to be tediously hand-assembled and typed into the machines. Wayne decided that his first task was to find a way to deal with this problem.

The School of Mines had a huge black mainframe called a PDP-10, and Wayne wanted to use the power and capabilities of this computer to write 6502 code. The first possibility was to use a FORTAN cross-assembler that was available from MOS Technology, but it was slow and buggy. Instead, Wayne chose to write 6502 macros for the PDP-10’s “PAL” assembler. After a few days work, Wayne had a fast new assembler that he called “PAL-65.” Suddenly we had the ability to write relatively large assembly language programs for the 6502.

Initially, Wayne cranked out a series of assembly language games. The first was a simple text based game where you shot arrows at a mythical beast called a Wumpus. Most of our computers had between 512 and two kilobytes of memory, but as Wayne’s games grew in complexity, we struggled to keep up, spending our nights soldering memory chips onto circuit boards.

Wayne now turned his attention to a high level language. The Intel based microprocessors had a version of BASIC written by Microsoft. Wayne decided that we should have a similar language, and he chose to write a version of the DEC language called FOCAL. Even though it was a relatively obscure language, FOCAL had some subtle advantages over BASIC, the biggest was its ability to evaluate strings as expressions.

Wayne wanted FOCAL to be a group project, and one evening he showed up with a stack of photocopies of the DEC flowcharts for the language. His plan was to assign each section of the chart to one of the 6502 Group members. We were supposed to go home, write 6502 assembly code for the section, and in a few weeks, we’d have an operating version of FOCAL. Unfortunately, Wayne had overestimated our skills. Most of us had been assembling code by hand and had no idea how to work from a flow chart. In the end, Wayne and Bob Ulshafer did most of the coding.

When it was finally finished, FOCAL was a big breakthrough. Suddenly we had a true programming language. Complex new games began to appear on our computers including a version of the famous mainframe game Star Trek, written by Larry Fish. Over the next few weeks Wayne wrote a five-byte floating point package for FOCAL based on a Dr. Dobbs article. With the new floating point power, simulations and mathematical programs sprouted up everywhere.

With thanks to Paul Birkel for the scan of the listing.

A TIM (6530-004) Superjolt simulator update, also KIM-1 Simulator

A TIM (6530-004) Superjolt Demon simulator.

Version 0.4. TIM Superjolt Simulator V0.4, Tiny Basic working!

Since the TIM Simulator and the KIM-1 Simulator share a lot of code, also the KIM-1 Simulator got an update, to let Tiny Basic work better: V1.3.8 is available.

The bundled Conversion 8 bit hex formats is now at version 2.6.

I have since yesterday a Raspberry Pi 5. Great little machine. Very grown up installation. Lazarus works fine with the usual trick of first the apt install version and then fpcupdeluxe for a newer version.

The TIM and KIM-1 Simulator work fine on the Pi 5, so a Raspberry Pi 5 is now included in the distributions.

Superjolt and TIM 6530

I have acquired 3! Superjolts. With a Synertek Superjolt CP110 manual and Tiny Basic + RAP (assembler) in ROM.

A good opportunity to update the 6530 and the Jolt SuperJolt pages. Better quality and more documents, more photos, ROMs dumped.