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-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

Convert hex formats new version

Bug fix release of the PC utility to convert MOS papertape, Intel hex, Motorola S record, Apple 1 hex etc. Windows and Linux. Source included.

post

Convert to Papertape V2.2

On the Utilities page I have two programs to convert to MOS Technology papertape format: KIMpaper, a command line utility, and ConvertHexFormat, a GUI app.

All in Freepascal/Lazarus source format, and tested on Linux (Raspberry PI OS) and Windows 10 64 bit. So the programs will run everywhere Lazarus is available (MS DOS, WIndows, Linux Mac OS).

KIMPAPER  is written at the time the Micro-KIM appeared. CLI utility.  Supports Binary to/from Papertape.  Still runs fine on all platforms supported by Freepascal (Windows, MS DOS, Linux etc) after a recompilation, source available.

ConvertHexFormat is a more recent GUI utilitilty with many more 8 bit hex formats as input and output.

There were some bugs of course in older versions. V2 added the ability for multipart hex formats, records having a non-consecutive load address. That seems to wok fine since V2.1
In 2.2 a bug in MOS Papertape format for bigger files is fixed, the end-of-file record (record type 00, total line count) had a bug in the checksum calculation. KIMPAPER is and was correct in the calculation.
But in ConvertHexFormat it was wrong (as it still  is in the well known srec utility in the Unix world!).

post

PC utilities updated

The PC utilities page has seen an update of th4 Conversion hex formats utility.

Programs to manipulate the binary and hex formatted files of interest for SBC owners. Intel hex, MOS papertape, Motorola S-record, binary, hex conversion fort eh 8 bit world.
Runs on Windows, Linux, Mac due to Lazarus and Freepascal. Source included.

post

My TEC-1D

I bought a PCB from Ben Grimmett, active on ebay and on the facebook group “Australian Vintage Computer Group”
Parts ordered from China Ali Express and Reichelt Germany. Found very nice 6 mm tactile switches with transparant replaceble caps, so the command letter of the key command can be printed, cutout and inserted.
Also ordered the Writable ROM module Ben designed to replace the 2732 with. Easy to program, test, change system ROMS all from the PC!
This page will document the build.

post

TEC-1 system ROMS

Archive with all ROM images, sources, instructions, articles

## Mon-1
by John Hardy
The orginal ROM that shipped with the TEC-1 in 1983
Included:
– original BIN binary of ROM
listing in HEX format
listing in disassembled LST format
Reconstructed, labelled and annotated listing in Z80 ASM format
Licensed under the GPL public license v3.0

## Mon-1A
by John Hardy with portions written by Ken Stone
This ROM added a sequencer routine at 0x05b0
Included:
– original BIN binary of ROM
– listing in HEX format
– listing in disassembled LST format
– reconstructed, labelled and annotated listing in Z80 ASM format
Licensed under the GPL public license v3.0

## Mon-1B
by John Hardy with portions written by Ken Stone
A maintenance release which cleans up some junk at 0x07E2 that was added with Mon-1A
Included:
– original BIN binary of ROM
– listing in HEX format
– listing in disassembled LST format
– reconstructed, labelled and annotated listing in Z80 ASM format
Licensed under the GPL public license v3.0

## Mon-2
by Ken Stone
A rewrite of the monitor ROM
Included:
– original BIN binary of ROM
– listing in HEX format
– listing in disassembled LST format
– reconstructed, labelled and annotated listing in Z80 ASM format
Licensed under the GPL public license v3.0

## JMON Monitor
by Jim Robertson
Included:
– original BIN binary of ROM
– listing in HEX format
– listing in disassembled LST format
– Listing in Z80 ASM format
– Fully commented source listing by Jim Roberton (PDF)
Licensed under the MIT license

## Utilities / Disassembler ROM
by Jim Robertson and Mike Donaghy
Included:
– original BIN binary of ROM
– Listing in Z80 ASM format (needs more work)
– Fully commented source listing by Jim Roberton (PDF)
Licensed under the MIT license

post

TEC-1D

The TEC-1C and TEC-1D were designed after the last issue of Talking Electronics was published. So no articles to show here, only a component list.

The design is identical to the TEC-1B. Only the PCB had some improvements, simple cheap tactical switches are used for example, function names are printed as part of the silkscreen on the PCB.

While the original TEC-1D is still available as a kit from Talking Electronics, a recent production run of the PCB as Reproduction 2018 is available from Ben Grimmett via ebay e.g. The latest is double sided, so no more wires!

Reproduction TEC-1D by Ben Grimmett, note the nice keycaps available on Ali Express.

 

post

TEC-1B

The TEC-1B is an incremental upgrade to the TEC-1A.
The SHIFT key is now standard. The 8212 latches are replaced with 74LS273 IC’s, easier to buy.
The EPROM socket now accepts a 2732, double the TEC-1B 2716. With a switch either the lower or upper part ar switched into Z80 memory space. This allows the old MON1B and newer MON2 ROM to be used, so compatibility with older programs is achieved.

Publsihed in Talking Electronics issues 13 and 14. PDF of the articles here.

post

TEC-1 addons

Addons published, most of those to be inserted in the expansion connector, so one at a time.
The crystal oscillator gice the TEC-1 a real crystal fixed clock.

 8×8 matrix
Crystal oscillator
EPROM burner
Input Output module
NVRAM
Printer plotter
RAM stack
Relay board
Speech module
TEC Power supply
The DAT board