Technical information
Micro-KIM Users Manual
©
)
CARD # LOC CODE CARD
404 19F3 20 24 1A RDBYT JSR RDCHT
405 19F6 20 00 1A JSR PACKT
406 19F9 20 24 1A JSR RDCHT
407 19FC 20 00 1A JSR PACKT
408 19FF 60 RTS
409 ;
410 ; PACK A=ASCII INTO SAVX
411 ; AS HEX DATA
412 ;
413 1A00 C9 30 PACKT CMP #$30
414 1A02 30 1E BMI PACKT3
415 1A04 C9 47 CMP #$47
416 1A06 10 1A BPL PACKT3
417 1A08 C9 40 CMP #$40
418 1A0A 30 03 BMI PACKT1
419 1A0C 18 CLC
420 1A0D 69 09 ADC #$09
421 1A0F 2A PACKT1 ROL A
422 1A10 2A ROL A
423 1A11 2A ROL A
424 1A12 2A ROL A
425 1A13 A0 04 LDY #$04
426 1A15 2A PACKT2 ROL A
427 1A16 2E E9 17 ROL SAVX
428 1A19 88 DEY
429 1A1A D0 F9 BNE PACKT2
430 1A1C AD E9 17 LDA SAVX
431 1A1F A0 00 LDY #$00 Y=0 VALID HEX CHAR
432 1A21 60 RTS
433 1A22 C8 PACKT3 INY Y=1 NOT HEX
434 1A23 60 RTS
435 ;
436 ; GET 1 CHAR FROM TAPE AND RETURN
437 ; WITH CHAR IN A USE SAVX+1 TO ASM CHAR
438 ;
439 1A24 8E EB 17 RDCHT STX SAVX+2
440 1A27 A2 08 LDX #$08 READ 8 BITS
441 1A29 20 41 1A RDCHT1 JSR RDBIT GET NEXT DATA BIT
442 1A2C 4E EA 17 LSR SAVX+1 RIGHT SHIFT CHAR
443 1A2F 0D EA 17 ORA SAVX+1 OR IN SIGN BIT
444 1A32 8D EA 17 STA SAVX+1 REPLACE CHAR
445 1A35 CA DEX
446 1A36 D0 F1 BNE RDCHT1
447 ;
448 1A38 AD EA 17 LDA SAVX+1 MOVE CHAR INTO A
449 1A3B 2A ROL A SHIFT OFF PARITY
450 1A3C 4A LSR A
451 1A3D AE EB 17 LDX SAVX+2
452 1A40 60 RTS
453 ;
454 ; THIS SUB GETS ONE BIT FROM
455 ; TAPE AND RETURNS IT IN SIGN OF A
456 ;
457 1A41 2C 42 17 RDBIT BIT SBD WAIT FOR END OF START BIT
458 1A44 10 FB BPL RDBIT
459 1A46 AD 46 17 LDA CLKRDT GET START BIT TIME
460 1A49 A0 FF LDY #$FF A=256-T1
461 1A4B 8C 46 17 STY CLK64T SET UP TIMER