_  __   _  _         _ _     _      _           _           
  __| |/ /_ | || |     __| (_)___| | __ (_)_ __   __| | _____  __
 / _` | '_ \| || |_   / _` | / __| |/ / | | '_ \ / _` |/ _ \ \/ /
| (_| | (_) |__   _| | (_| | \__ \   <  | | | | | (_| |  __/>  < 
 \__,_|\___/   |_|    \__,_|_|___/_|\_\ |_|_| |_|\__,_|\___/_/\_\
                                                                 
            

READKEY

FILE INFORMATION

FILENAME(S): READKEY

FILE TYPE(S): SEQ

FILE SIZE: 552b

FIRST SEEN: 2025-10-19 22:48:27

APPEARS ON: 4 disk(s)

FILE HASH

96c522bbd5cb9241ed80db03fb155a573cdf618a24e3367120322ad3705a0e96

FOUND ON DISKS (4 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
SNAPSHOT64 READKEY SEQ Radd Maxx 23 15 DOWNLOAD FILE
MERLIN READKEY SEQ High Voltage Complete C64 Collection 22 7 DOWNLOAD FILE
MERLIN READKEY SEQ High Voltage Complete C64 Collection 22 7 DOWNLOAD FILE
ICE DISK 28 READKEY SEQ Icebreaker 22 7 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: 2A 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |*---------------|
00000010: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00000020: 2D 2D 2D 2D 2D 2D 2D 0D  2A A0 72 4F 55 54 49 4E  |-------.*.rOUTIN|
00000030: 45 A0 54 4F A0 47 45 54  A0 41 A0 4B 45 59 A0 46  |E.TO.GET.A.KEY.F|
00000040: 52 4F 4D A0 4B 45 59 42  4F 41 52 44 0D 2A A0 28  |ROM.KEYBOARD.*.(|
00000050: 4F 52 A0 49 4E 50 55 54  A0 44 45 56 49 43 45 29  |OR.INPUT.DEVICE)|
00000060: 2E A0 A0 69 54 A0 46 49  52 53 54 A0 54 55 52 4E  |...iT.FIRST.TURN|
00000070: 53 A0 4F 4E 0D 2A A0 54  48 45 A0 43 55 52 53 4F  |S.ON.*.THE.CURSO|
00000080: 52 A0 41 4E 44 A0 54 55  52 4E 53 A0 49 54 A0 42  |R.AND.TURNS.IT.B|
00000090: 41 43 4B A0 4F 46 46 A0  57 48 45 4E 0D 2A A0 43  |ACK.OFF.WHEN.*.C|
000000A0: 48 41 52 41 43 54 45 52  A0 48 41 53 A0 42 45 45  |HARACTER.HAS.BEE|
000000B0: 4E A0 47 41 54 48 45 52  45 44 2E 0D 2A A0 63 48  |N.GATHERED..*.cH|
000000C0: 41 52 41 43 54 45 52 A0  49 53 A0 52 45 54 55 52  |ARACTER.IS.RETUR|
000000D0: 4E 45 44 A0 49 4E A0 61  2D 52 45 47 49 53 54 45  |NED.IN.a-REGISTE|
000000E0: 52 2E 0D 2A 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |R..*------------|
000000F0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00000100: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 0D 0D 72 65 61 64  |----------..read|
00000110: 6B 65 79 20 6C 64 61 20  23 30 0D 20 73 74 61 20  |key lda #0. sta |
00000120: 62 6C 6E 73 77 20 3B 74  55 52 4E A0 4F 4E A0 43  |blnsw ;tURN.ON.C|
00000130: 55 52 53 4F 52 0D 20 73  74 78 20 78 73 61 76 20  |URSOR. stx xsav |
00000140: 3B 70 52 45 53 45 52 56  45 A0 78 0D 72 64 6B 65  |;pRESERVE.x.rdke|
00000150: 79 20 6A 73 72 20 67 65  74 69 6E 20 3B 67 45 54  |y jsr getin ;gET|
00000160: A0 41 A0 4B 45 59 0D 20  74 61 78 20 3B 6F 4E 45  |.A.KEY. tax ;oNE|
00000170: A0 41 56 41 49 4C 41 42  4C 45 3F 0D 20 62 65 71  |.AVAILABLE?. beq|
00000180: 20 72 64 6B 65 79 20 3B  6C 4F 4F 50 A0 49 46 A0  | rdkey ;lOOP.IF.|
00000190: 4E 4F 54 0D 20 6C 64 78  20 23 32 20 3B 69 4E 49  |NOT. ldx #2 ;iNI|
000001A0: 54 A0 53 4D 41 4C 4C A0  42 4C 49 4E 4B A0 43 4F  |T.SMALL.BLINK.CO|
000001B0: 55 4E 54 0D 20 73 74 78  20 62 6C 6E 63 74 0D 77  |UNT. stx blnct.w|
000001C0: 61 74 62 6C 20 6C 64 78  20 62 6C 6E 6F 6E 20 3B  |atbl ldx blnon ;|
000001D0: 77 41 49 54 A0 46 4F 52  A0 43 55 52 53 4F 52 A0  |wAIT.FOR.CURSOR.|
000001E0: 4F 46 46 0D 20 62 6E 65  20 77 61 74 62 6C 0D 20  |OFF. bne watbl. |
000001F0: 69 6E 63 20 62 6C 6E 73  77 20 3B 6C 45 41 56 45  |inc blnsw ;lEAVE|
00000200: A0 49 54 A0 54 48 41 54  A0 57 41 59 0D 20 6C 64  |.IT.THAT.WAY. ld|
00000210: 78 20 78 73 61 76 20 3B  72 45 54 52 49 45 56 45  |x xsav ;rETRIEVE|
00000220: A0 78 0D 20 72 74 73 0D                           |.x. rts.        |
*--------------------------------------.
* ROUTINE TO GET A KEY FROM KEYBOARD.* (
OR INPUT DEVICE).  IT FIRST TURNS ON.* T
HE CURSOR AND TURNS IT BACK OFF WHEN.* C
HARACTER HAS BEEN GATHERED..* CHARACTER 
IS RETURNED IN A-REGISTER..*------------
--------------------------..READKEY LDA 
#0. STA BLNSW ;TURN ON CURSOR. STX XSAV 
;PRESERVE X.RDKEY JSR GETIN ;GET A KEY. 
TAX ;ONE AVAILABLE?. BEQ RDKEY ;LOOP IF 
NOT. LDX #2 ;INIT SMALL BLINK COUNT. STX
 BLNCT.WATBL LDX BLNON ;WAIT FOR CURSOR 
OFF. BNE WATBL. INC BLNSW ;LEAVE IT THAT
 WAY. LDX XSAV ;RETRIEVE X. RTS.
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL