Difference between revisions of "KIM-1 Cassette Tapes"
Jump to navigation
Jump to search
Line 27: | Line 27: | ||
[[File:KIM1-CassettePulseTrain.png|480px]] | [[File:KIM1-CassettePulseTrain.png|480px]] | ||
− | Data is stored as a series of 2415 and 3623 Hz tones. | + | Data is stored as a series of 2415 and 3623 Hz tones. The duration of one bit takes 7.452 milliseconds. |
Information sources: | Information sources: |
Revision as of 19:14, 8 March 2019
A collection at Makerspace Nanaimo of data cassette tapes for late-1970's KIM-1 microcomputers.
KIM-1
Micro-KIM
Micro-KIM is a nearly-100%-compatible KIM-1 clone, made in 2007. (no longer sold)
- Micro-KIM at Briel Computers
- Micro-KIM Manual (PDF)
- Includes listings of the monitor program in EPROM from MOS Technology, Inc.
- 6530-003 I.C. IS AN AUDIO CASSETTE TAPE RECORDER ENTENSION OF THE BASIC KIM MONITOR
- Oct 18, 1975 Rev-D
- Includes listings of the monitor program in EPROM from MOS Technology, Inc.
- [http://forum.6502.org/viewtopic.php?f=1&t=4438 Forum thread on 6502.org - What happened to Briel Computers?
- retro.hansotten.nl Micro-KIM information and software
- http://aartbik.blogspot.com blog post about Micro-KIM
- [http://www.aartbik.com/MISC/microKIM.pdf Micro-KIM Tutorial by Aart J.C. Bik
- Solid State Tape Device for the (micro)KIM
- ns4.reboot.net.au MOS/CBM/Micro KIM-1 Rumblings
- KimStar - a Parallax Propeller connected to the bus of the 1 MHz 6502, emulating memory and IO devices
Cassette Data Storage
Data is stored as a series of 2415 and 3623 Hz tones. The duration of one bit takes 7.452 milliseconds.
Information sources:
Program: TONES A0 - Sound Effect
Source: TONES, FF, DAN OLIVER MAKES MUSIC WITH KIM COMPUTER - side 1
YouTube - TONES, FF, DAN OLIVER MAKES MUSIC WITH KIM COMPUTER.
This program starts around 1:36 into cassette tape - it's the first program stored on the tape.
Audio on the tape preceeding this program:
This is a sound effect subroutine at address 0200 to address 022C. It can be varied to go up or down in frequency in any number of repeats. Start with a jump to subroutine at address 0200. ID is A0.
Cassette tape data: TONES A0 - Sound Effect
Timestamp Binary Hex ASCII Description 0:00.055 01101000 0x16 SYN 0:00.114 01101000 0x16 SYN 0:00.173 01101000 0x16 SYN 0:00.233 01101000 0x16 SYN 0:00.292 01101000 0x16 SYN 0:00.352 01101000 0x16 SYN 0:00.411 01101000 0x16 SYN 0:00.471 01101000 0x16 SYN 0:00.530 01101000 0x16 SYN 0:00.590 01101000 0x16 SYN 0:00.649 01101000 0x16 SYN 0:00.709 01101000 0x16 SYN 0:00.768 01101000 0x16 SYN 0:00.828 01101000 0x16 SYN 0:00.887 01101000 0x16 SYN 0:00.947 01101000 0x16 SYN 0:01.006 01101000 0x16 SYN 0:01.066 01101000 0x16 SYN 0:01.125 01101000 0x16 SYN 0:01.185 01101000 0x16 SYN 0:01.244 01101000 0x16 SYN 0:01.304 01101000 0x16 SYN 0:01.363 01101000 0x16 SYN 0:01.423 01101000 0x16 SYN 0:01.482 01101000 0x16 SYN 0:01.542 01101000 0x16 SYN 0:01.601 01101000 0x16 SYN 0:01.661 01101000 0x16 SYN 0:01.720 01101000 0x16 SYN 0:01.780 01101000 0x16 SYN 0:01.839 01101000 0x16 SYN 0:01.898 01101000 0x16 SYN 0:01.957 01101000 0x16 SYN 0:02.017 01101000 0x16 SYN 0:02.077 01101000 0x16 SYN 0:02.136 01101000 0x16 SYN 0:02.195 01101000 0x16 SYN 0:02.255 01101000 0x16 SYN 0:02.314 01101000 0x16 SYN 0:02.374 01101000 0x16 SYN 0:02.434 01101000 0x16 SYN 0:02.493 01101000 0x16 SYN 0:02.553 01101000 0x16 SYN 0:02.612 01101000 0x16 SYN 0:02.672 01101000 0x16 SYN 0:02.731 01101000 0x16 SYN 0:02.790 01101000 0x16 SYN 0:02.850 01101000 0x16 SYN 0:02.909 01101000 0x16 SYN 0:02.969 01101000 0x16 SYN 0:03.028 01101000 0x16 SYN 0:03.088 01101000 0x16 SYN 0:03.147 01101000 0x16 SYN 0:03.207 01101000 0x16 SYN 0:03.266 01101000 0x16 SYN 0:03.326 01101000 0x16 SYN 0:03.385 01101000 0x16 SYN 0:03.445 01101000 0x16 SYN 0:03.504 01101000 0x16 SYN 0:03.563 01101000 0x16 SYN 0:03.623 01101000 0x16 SYN 0:03.682 01101000 0x16 SYN 0:03.742 01101000 0x16 SYN 0:03.801 01101000 0x16 SYN 0:03.861 01101000 0x16 SYN 0:03.920 01101000 0x16 SYN 0:03.980 01101000 0x16 SYN 0:04.039 01101000 0x16 SYN 0:04.099 01101000 0x16 SYN 0:04.158 01101000 0x16 SYN 0:04.218 01101000 0x16 SYN 0:04.277 01101000 0x16 SYN 0:04.337 01101000 0x16 SYN 0:04.396 01101000 0x16 SYN 0:04.455 01101000 0x16 SYN 0:04.515 01101000 0x16 SYN 0:04.574 01101000 0x16 SYN 0:04.634 01101000 0x16 SYN 0:04.693 01101000 0x16 SYN 0:04.753 01101000 0x16 SYN 0:04.812 01101000 0x16 SYN 0:04.872 01101000 0x16 SYN 0:04.932 01101000 0x16 SYN 0:04.991 01101000 0x16 SYN 0:05.050 01101000 0x16 SYN 0:05.110 01101000 0x16 SYN 0:05.169 01101000 0x16 SYN 0:05.229 01101000 0x16 SYN 0:05.288 01101000 0x16 SYN 0:05.348 01101000 0x16 SYN 0:05.407 01101000 0x16 SYN 0:05.467 01101000 0x16 SYN 0:05.526 01101000 0x16 SYN 0:05.586 01101000 0x16 SYN 0:05.645 01101000 0x16 SYN 0:05.705 01101000 0x16 SYN 0:05.764 01101000 0x16 SYN 0:05.824 01101000 0x16 SYN 0:05.883 01101000 0x16 SYN 0:05.943 01101000 0x16 SYN 0:06.002 01010100 0x2A '*' SOF 0:06.062 10000010 0x41 'A' ID1 0:06.121 00001100 0x30 '0' ID2 0:06.180 00001100 0x30 '0' START_ADDR_L1 0:06.240 00001100 0x30 '0' START_ADDR_L2 0:06.299 00001100 0x30 '0' START_ADDR_H1 0:06.359 01001100 0x32 '2' START_ADDR_H2 0:06.418 10000010 0x41 'A' END_ADDR_L1 0:06.478 00001100 0x30 '0' END_ADDR_L2 0:06.537 00001100 0x30 '0' END_ADDR_H1 0:06.597 00101100 0x34 '4' END_ADDR_H2 0:06.656 10000010 0x41 'A' DATA 0:06.716 10011100 0x39 '9' DATA 0:06.775 00001100 0x30 '0' DATA 0:06.835 00001100 0x30 '0' DATA 0:06.894 00011100 0x38 '8' DATA 0:06.954 10101100 0x35 '5' DATA 0:07.013 10100010 0x45 'E' DATA 0:07.073 10100010 0x45 'E' DATA 0:07.132 10000010 0x41 'A' DATA 0:07.192 10011100 0x39 '9' DATA 0:07.251 00001100 0x30 '0' DATA 0:07.311 10001100 0x31 '1' DATA 0:07.370 00011100 0x38 '8' DATA 0:07.430 00100010 0x44 'D' DATA 0:07.489 00001100 0x30 '0' DATA 0:07.549 01101100 0x36 '6' DATA 0:07.608 10001100 0x31 '1' DATA 0:07.668 11101100 0x37 '7' DATA 0:07.727 10000010 0x41 'A' DATA 0:07.787 10011100 0x39 '9' DATA 0:07.846 00001100 0x30 '0' DATA 0:07.905 10001100 0x31 '1' DATA 0:07.965 00011100 0x38 '8' DATA 0:08.024 00100010 0x44 'D' DATA 0:08.083 00001100 0x30 '0' DATA 0:08.143 10001100 0x31 '1' DATA 0:08.202 10001100 0x31 '1' DATA 0:08.262 11101100 0x37 '7' DATA 0:08.321 10100010 0x45 'E' DATA 0:08.381 10100010 0x45 'E' DATA 0:08.440 00001100 0x30 '0' DATA 0:08.499 00001100 0x30 '0' DATA 0:08.559 10001100 0x31 '1' DATA 0:08.619 11101100 0x37 '7' DATA 0:08.678 10000010 0x41 'A' DATA 0:08.738 01101100 0x36 '6' DATA 0:08.797 10100010 0x45 'E' DATA 0:08.857 10100010 0x45 'E' DATA 0:08.916 11000010 0x43 'C' DATA 0:08.976 10000010 0x41 'A' DATA 0:09.035 00100010 0x44 'D' DATA 0:09.094 00001100 0x30 '0' DATA 0:09.154 01100010 0x46 'F' DATA 0:09.214 00100010 0x44 'D' DATA 0:09.273 01001100 0x32 '2' DATA 0:09.332 11000010 0x43 'C' DATA 0:09.391 00001100 0x30 '0' DATA 0:09.451 11101100 0x37 '7' DATA 0:09.511 10001100 0x31 '1' DATA 0:09.570 11101100 0x37 '7' DATA 0:09.629 10001100 0x31 '1' DATA 0:09.689 00001100 0x30 '0' DATA 0:09.748 01100010 0x46 'F' DATA 0:09.807 11001100 0x33 '3' DATA 0:09.867 10100010 0x45 'E' DATA 0:09.927 01101100 0x36 '6' DATA 0:09.986 10100010 0x45 'E' DATA 0:10.045 10100010 0x45 'E' DATA 0:10.105 10000010 0x41 'A' DATA 0:10.164 10101100 0x35 '5' DATA 0:10.224 10100010 0x45 'E' DATA 0:10.283 10100010 0x45 'E' DATA 0:10.342 11000010 0x43 'C' DATA 0:10.402 10011100 0x39 '9' DATA 0:10.461 01100010 0x46 'F' DATA 0:10.521 01100010 0x46 'F' DATA 0:10.580 01100010 0x46 'F' DATA 0:10.640 00001100 0x30 '0' DATA 0:10.699 00001100 0x30 '0' DATA 0:10.758 01001100 0x32 '2' DATA 0:10.818 00100010 0x44 'D' DATA 0:10.877 00001100 0x30 '0' DATA 0:10.936 00100010 0x44 'D' DATA 0:10.996 01100010 0x46 'F' DATA 0:11.055 00011100 0x38 '8' DATA 0:11.115 00011100 0x38 '8' DATA 0:11.174 01100010 0x46 'F' DATA 0:11.233 00001100 0x30 '0' DATA 0:11.293 00001100 0x30 '0' DATA 0:11.353 01001100 0x32 '2' DATA 0:11.412 00100010 0x44 'D' DATA 0:11.471 00001100 0x30 '0' DATA 0:11.531 00100010 0x44 'D' DATA 0:11.590 10000010 0x41 'A' DATA 0:11.649 00101100 0x34 '4' DATA 0:11.709 11000010 0x43 'C' DATA 0:11.769 11110100 0x2F '/' EOF 0:11.828 01001100 0x32 '2' CSUML1 0:11.887 01001100 0x32 '2' CSUML2 0:11.947 10001100 0x31 '1' CSUMH2 0:12.006 11101100 0x37 '7' CSUMH2 0:12.066 00100000 0x04 ? EOT1 (EOT2 missing due to .wav file being cut short)
Disassembly: TONES A0 - Sound Effect
Disassembled using https://www.masswerk.at/6502/disassembler.html.
* = 0200 0200 A9 00 LDA #$00 0202 85 EE STA $EE 0204 A9 01 LDA #$01 0206 8D 06 17 STA $1706 0209 A9 01 LDA #$01 020B 8D 01 17 STA $1701 020E EE 00 17 INC $1700 0211 A6 EE LDX $EE 0213 CA DEX 0214 D0 FD BNE $0213 0216 2C 07 17 BIT $1707 0219 10 F3 BPL $020E 021B E6 EE INC $EE 021D A5 EE LDA $EE 021F C9 FF CMP #$FF 0221 F0 02 BEQ $0225 0223 D0 DF BNE $0204 0225 88 DEY 0226 F0 02 BEQ $022A 0228 D0 DA BNE $0204 022A 4C 00 00 JMP $0000 022D .END