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

HARD CORNR PRG4

FILE INFORMATION

FILENAME(S): HARD CORNR PRG4

FILE TYPE(S): PRG

FILE SIZE: 1.3K

FIRST SEEN: 2025-11-30 21:12:59

APPEARS ON: 1 disk(s)

FILE HASH

8cd75d56dafdd6790db8f26da945e87b15602d8bea18744d6d2e408ffd1e5b58

FOUND ON DISKS (1 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
TRANSACTOR 4 HARD CORNR PRG4 PRG DuncanTwain 12 5 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: 01 04 3E 04 00 00 8F 20  54 48 45 20 54 52 41 4E  |..>.... THE TRAN|
00000010: 53 41 43 54 4F 52 20 56  4F 4C 55 4D 45 20 35 20  |SACTOR VOLUME 5 |
00000020: 49 53 53 55 45 20 30 35  20 20 20 20 20 20 20 20  |ISSUE 05        |
00000030: 20 20 20 20 20 20 20 50  41 47 45 20 33 37 00 64  |       PAGE 37.d|
00000040: 04 64 00 8F 2A 20 53 43  41 4E 20 43 36 34 20 4B  |.d..* SCAN C64 K|
00000050: 45 59 42 4F 41 52 44 20  20 20 20 20 20 20 20 20  |EYBOARD         |
00000060: 20 20 20 2A 00 8A 04 6E  00 8F 2A 20 20 20 20 20  |   *...n..*     |
00000070: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000080: 20 20 20 20 20 20 20 20  20 2A 00 B0 04 78 00 53  |         *...x.S|
00000090: 45 4C B2 35 36 33 32 30  3A 8F 2A 20 4B 42 44 20  |EL.56320:.* KBD |
000000A0: 52 4F 57 20 53 45 4C 45  43 54 20 52 45 47 20 2A  |ROW SELECT REG *|
000000B0: 00 D6 04 82 00 49 4E 50  B2 35 36 33 32 31 3A 8F  |.....INP.56321:.|
000000C0: 2A 20 4B 42 44 20 49 4E  50 55 54 20 52 45 47 49  |* KBD INPUT REGI|
000000D0: 53 54 45 52 20 2A 00 F1  04 8C 00 81 20 49 B2 30  |STER *...... I.0|
000000E0: A4 37 3A 20 45 28 49 29  B2 32 AE 49 3A 20 82 20  |.7: E(I).2.I: . |
000000F0: 49 00 17 05 96 00 8F 2A  20 45 28 29 20 49 53 20  |I......* E() IS |
00000100: 45 58 50 4F 4E 45 4E 54  20 41 52 52 41 59 20 28  |EXPONENT ARRAY (|
00000110: 32 5E 58 29 20 20 2A 00  1D 05 A0 00 3A 00 23 05  |2^X)  *.....:.#.|
00000120: AA 00 3A 00 45 05 B4 00  99 22 23 20 4B 45 59 53  |..:.E...."# KEYS|
00000130: 22 2C 22 31 53 54 20 4B  45 59 22 2C 22 32 4E 44  |","1ST KEY","2ND|
00000140: 20 4B 45 59 22 00 4B 05  B5 00 3A 00 60 05 BE 00  | KEY".K...:.`...|
00000150: 81 20 4C 4F 4F 50 B2 30  20 A4 20 31 20 A9 20 30  |. LOOP.0 . 1 . 0|
00000160: 00 7B 05 C8 00 8D 33 37  30 3A 20 8F 2A 20 52 45  |.{....370: .* RE|
00000170: 41 44 20 4B 45 59 42 4F  41 52 44 00 8F 05 D2 00  |AD KEYBOARD.....|
00000180: 99 20 43 2C 20 4B 28 30  29 2C 20 4B 28 31 29 00  |. C, K(0), K(1).|
00000190: 9A 05 DC 00 82 20 4C 4F  4F 50 00 A0 05 E6 00 80  |..... LOOP......|
000001A0: 00 A6 05 F0 00 3A 00 AC  05 FA 00 3A 00 D0 05 04  |.....:.....:....|
000001B0: 01 8F 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |..**************|
000001C0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000001D0: 00 F4 05 0E 01 8F 2A 20  4B 45 59 42 4F 41 52 44  |......* KEYBOARD|
000001E0: 20 53 43 41 4E 20 53 55  42 52 4F 55 54 49 4E 45  | SCAN SUBROUTINE|
000001F0: 20 20 20 2A 00 18 06 18  01 8F 2A 20 53 45 54 20  |   *......* SET |
00000200: 55 50 20 45 28 29 20 42  45 46 4F 52 45 20 43 41  |UP E() BEFORE CA|
00000210: 4C 4C 49 4E 47 2E 20 2A  00 3C 06 22 01 8F 2A 20  |LLING. *.<."..* |
00000220: 20 20 49 4E 50 55 54 20  56 41 52 49 41 42 4C 45  |  INPUT VARIABLE|
00000230: 53 3A 20 20 20 20 20 20  20 20 20 2A 00 60 06 2C  |S:         *.`.,|
00000240: 01 8F 2A 20 22 D3 C5 CC  22 3A 20 52 4F 57 20 53  |..* "...": ROW S|
00000250: 45 4C 45 43 54 20 52 45  47 49 53 54 45 52 20 2A  |ELECT REGISTER *|
00000260: 00 84 06 36 01 8F 2A 20  22 C9 CE D0 22 3A 20 4B  |...6..* "...": K|
00000270: 45 59 42 4F 41 52 44 20  49 4E 50 55 54 20 52 45  |EYBOARD INPUT RE|
00000280: 47 20 20 2A 00 A8 06 40  01 8F 2A 20 20 20 4F 55  |G  *...@..*   OU|
00000290: 54 50 55 54 20 56 41 52  49 41 42 4C 45 53 3A 20  |TPUT VARIABLES: |
000002A0: 20 20 20 20 20 20 20 2A  00 CC 06 4A 01 8F 2A 20  |       *...J..* |
000002B0: 22 C3 22 3A 20 23 20 4F  46 20 4B 45 59 53 20 44  |".": # OF KEYS D|
000002C0: 4F 57 4E 20 28 30 2D 32  29 20 20 2A 00 F0 06 54  |OWN (0-2)  *...T|
000002D0: 01 8F 2A 20 22 CB 28 30  29 22 3A 20 31 53 54 20  |..* ".(0)": 1ST |
000002E0: 4B 45 59 20 44 4F 57 4E  20 4F 52 20 36 34 20 2A  |KEY DOWN OR 64 *|
000002F0: 00 14 07 5E 01 8F 2A 20  22 CB 28 31 29 22 3A 20  |...^..* ".(1)": |
00000300: 32 4E 44 20 4B 45 59 20  44 4F 57 4E 20 4F 52 20  |2ND KEY DOWN OR |
00000310: 36 34 20 2A 00 38 07 68  01 8F 2A 2A 2A 2A 2A 2A  |64 *.8.h..******|
00000320: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000330: 2A 2A 2A 2A 2A 2A 2A 2A  00 59 07 72 01 8F 2D 20  |********.Y.r..- |
00000340: 54 48 49 53 20 49 53 20  54 48 45 20 45 4E 54 52  |THIS IS THE ENTR|
00000350: 59 20 50 4F 49 4E 54 20  2D 00 5F 07 7C 01 3A 00  |Y POINT -._.|.:.|
00000360: 78 07 86 01 97 20 35 36  33 33 34 2C C2 28 35 36  |x.... 56334,.(56|
00000370: 33 33 34 29 AF 32 35 34  00 95 07 90 01 8F 2A 20  |334).254......* |
00000380: 54 55 52 4E 20 49 4E 54  45 52 52 55 50 54 53 20  |TURN INTERRUPTS |
00000390: 4F 46 46 20 2A 00 9B 07  9A 01 3A 00 BF 07 A4 01  |OFF *.....:.....|
000003A0: 43 B2 30 3A 20 8F 2A 20  23 20 4B 45 59 53 20 50  |C.0: .* # KEYS P|
000003B0: 52 45 53 53 45 44 20 28  30 2D 32 29 20 20 2A 00  |RESSED (0-2)  *.|
000003C0: E3 07 AE 01 4B 28 30 29  B2 36 34 3A 20 4B 28 31  |....K(0).64: K(1|
000003D0: 29 B2 36 34 3A 8F 2A 20  36 34 3D 4E 4F 20 4B 45  |).64:.* 64=NO KE|
000003E0: 59 20 2A 00 EF 07 B8 01  97 20 53 45 4C 2C 30 00  |Y *...... SEL,0.|
000003F0: 13 08 C2 01 8F 2A 20 54  45 53 54 20 46 4F 52 20  |.....* TEST FOR |
00000400: 4E 4F 20 4B 45 59 53 20  50 52 45 53 53 45 44 20  |NO KEYS PRESSED |
00000410: 20 20 2A 00 28 08 CC 01  8B 20 C2 28 49 4E 50 29  |  *.(.... .(INP)|
00000420: B2 32 35 35 20 A7 20 8E  00 2E 08 D6 01 3A 00 3E  |.255 . ......:.>|
00000430: 08 E0 01 81 20 52 4F 57  B2 30 20 A4 20 37 00 53  |.... ROW.0 . 7.S|
00000440: 08 EA 01 97 20 53 45 4C  2C 32 35 35 AB 45 28 52  |.... SEL,255.E(R|
00000450: 4F 57 29 00 72 08 F4 01  4B 45 59 53 B2 C2 28 49  |OW).r...KEYS..(I|
00000460: 4E 50 29 3A 8B 20 4B 45  59 53 B2 32 35 35 89 35  |NP):. KEYS.255.5|
00000470: 35 30 00 82 08 FE 01 81  20 43 4F 4C B2 30 20 A4  |50...... COL.0 .|
00000480: 20 37 00 BE 08 08 02 8B  28 4B 45 59 53 20 AF 20  | 7......(KEYS . |
00000490: 45 28 43 4F 4C 29 29 B2  30 20 AF 20 43 B3 32 20  |E(COL)).0 . C.2 |
000004A0: A7 20 20 20 20 20 20 20  20 4B 28 43 29 B2 52 4F  |.        K(C).RO|
000004B0: 57 AC 38 AA 43 4F 4C 3A  20 43 B2 43 AA 31 00 C4  |W.8.COL: C.C.1..|
000004C0: 08 12 02 3A 00 CE 08 1C  02 82 20 43 4F 4C 00 E4  |...:...... COL..|
000004D0: 08 26 02 82 20 52 4F 57  3A 20 8F 2D 2D 45 4E 44  |.&.. ROW: .--END|
000004E0: 49 46 2D 2D 00 EA 08 30  02 3A 00 00 09 3A 02 97  |IF--...0.:...:..|
000004F0: 35 36 33 33 34 2C C2 28  35 36 33 33 34 29 B0 31  |56334,.(56334).1|
00000500: 00 21 09 44 02 8F 2A 20  54 55 52 4E 20 49 4E 54  |.!.D..* TURN INT|
00000510: 45 52 52 55 50 54 53 20  42 41 43 4B 20 4F 4E 20  |ERRUPTS BACK ON |
00000520: 2A 00 27 09 4E 02 8E 00  00 00                    |*.'.N.....      |
..>.... THE TRANSACTOR VOLUME 5 ISSUE 05
               PAGE 37.D.D..* SCAN C64 K
EYBOARD            *...N..*             
                 *...X.SEL.56320:.* KBD 
ROW SELECT REG *.V...INP.56321:.* KBD IN
PUT REGISTER *...... I.0.7: E(I).2.I: . 
I......* E() IS EXPONENT ARRAY (2^X)  *.
.. .:.#...:.E...."# KEYS","1ST KEY","2ND
 KEY".K...:.`.... LOOP.0 . 1 . 0.{.H..37
0: .* READ KEYBOARD...R.. C, K(0), K(1).
..... LOOP. .........:.....:.P....******
************************......* KEYBOARD
 SCAN SUBROUTINE   *......* SET UP E() B
EFORE CALLING. *.<."..*   INPUT VARIABLE
S:         *.`.,..* "SEL": ROW SELECT RE
GISTER *...6..* "INP": KEYBOARD INPUT RE
G  *...@..*   OUTPUT VARIABLES:        *
.L.J..* "C": # OF KEYS DOWN (0-2)  *...T
..* "K(0)": 1ST KEY DOWN OR 64 *...^..* 
"K(1)": 2ND KEY DOWN OR 64 *.8.H..******
************************.Y.R..- THIS IS 
THE ENTRY POINT -._.|.:.X.... 56334,B(56
334).254......* TURN INTERRUPTS OFF *...
..:.....C.0: .* # KEYS PRESSED (0-2)  *.
....K(0).64: K(1).64:.* 64=NO KEY *.....
. SEL,0...B..* TEST FOR NO KEYS PRESSED 
  *.(.L.. B(INP).255 . ....V.:.>.... ROW
.0 . 7.S.... SEL,255.E(ROW).R...KEYS.B(I
NP):. KEYS.255.550...... COL.0 . 7......
(KEYS . E(COL)).0 . C.2 .        K(C).RO
W.8.COL: C.C.1.D...:.N.... COL...&.. ROW
: .--ENDIF--...0.:...:..56334,B(56334).1
.!.D..* TURN INTERRUPTS BACK ON *.'.N...
..
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL