The IEC-floppy/RAM card is a card connected to the Extension connector of the KIM-1 (any KIM-1, original and replica).
- 28K RAM, with jumpers. Most likely configuration is 24K from $2000.
And 4K can be added at $0400 -$13FF.
- IEC interface, store and load files on a IEC device like a Commodore 1541 (or a SD card based IEC device!)
- IEC ROM at $E000
- All signals from the Extension connector are available on 2×22 pinheader
- Gerber files KIM-1 IEC/RAM card
- KIM-1 IEC/RAM Aufbauanleitung
- Circuit diagram of IEC/RAM card
- ROM image of IEC routines
- source of ROM image of IEC routines
The IEC card has to be connected to the I/O card via a flat-cable to access the Kx address decoding signals.
The IEC interface
Dave McMurtrie, known e.g from the facebook group Commodore International Historical Society, is a KIM-1 and Commodore collector. This year he surprised the KIM-1 users with an implementation of the IEC protocol for the KIM-1. With an IEC interface one can access many Commodore devices like the 1541 floppy disk drive. The interface is simple, a 7406 and some resistors and the typical DIN connector used by Commodore. Dave took the IEC routines from the C64 kernal and added a simple interface to save and load in the KIM-1 method: files have a one byte ID as filename and the same locations as the KIM-1 tape routines 17F5 -17F9 are used for start, end address and ID.
More on the 1541 IEC for KIM-1 can be found here..
How to use (from the German userguide)
Connect a Commodore 1541 floppy drive to the IEC card, Power on the 1541 and Reset the KIM-1, that should also reset the 1541.
The address of the Load/Save routines are:
$17F5 have the Startaddress low byte, $17F6 the Startaddress high.
$17F7 have the Endaddress low byte, $17F8 the Startaddress high.
$17F9 gets the File ID, use $01 – $FE
Do not load or save to/from addresses $0000-$1FF.
Example of storing memory from $0200-$02FF
Enter the following data
00F1 00 (CLD)
17F5 00 SAL
17F6 02 SAH
17F7 00 EAL
17F8 03 EAH
17F9 01 TAPE ID
Now start the save with a ‘Go’ at $E148. The floppy drive should now start and a file with name ’01’ saved.
Load a file into memory
To load the file stored in the example enter the following:
00F1 00 CLD
17F9 01 Tape ID
E000 GO start laod
The 1541 will start and the file “01” loaded into memory.
Press Reset or fill the vectors first:
Netzherpes Nills posted a solution to use the IEC routines from Basic: