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

D&H-ADAPTER /D&H

FILE INFORMATION

FILENAME(S): D&H-ADAPTER /D&H

FILE TYPE(S): SEQ

FILE SIZE: 12.2K

FIRST SEEN: 2025-11-30 19:10:57

APPEARS ON: 3 disk(s)

FILE HASH

ce900dd34883c3c3ec4576b4831177c9f49d1ff7d758d52a9f61c1c6ee751505

FOUND ON DISKS (3 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
ASPHODEL D&H-ADAPTER /D&H SEQ Commodore 64 Extras 5 15 DOWNLOAD FILE
ASPHODEL D&H-ADAPTER /D&H SEQ Commodore 64 Extras 5 15 DOWNLOAD FILE
ASS PRESENTS D&H-ADAPTER /D&H SEQ Commodore 64 Extras 23 5 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: 2D 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 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00000030: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00000040: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 0D  |---------------.|
00000050: 0A 20 20 20 20 20 20 2A  2A 2A 20 20 20 54 48 45  |.      ***   THE|
00000060: 20 44 49 47 49 54 41 4C  20 45 58 43 45 53 53 20  | DIGITAL EXCESS |
00000070: 26 20 48 49 54 4D 45 4E  20 34 2D 50 4C 41 59 45  |& HITMEN 4-PLAYE|
00000080: 52 20 4A 4F 59 53 54 49  43 4B 20 41 44 41 50 54  |R JOYSTICK ADAPT|
00000090: 45 52 20 20 2A 2A 2A 0D  0A 0D 0A 20 20 20 4F 52  |ER  ***....   OR|
000000A0: 20 22 34 20 50 4C 41 59  45 52 53 20 57 49 54 48  | "4 PLAYERS WITH|
000000B0: 20 45 41 53 45 20 2D 20  48 4F 57 20 53 4D 41 52  | EASE - HOW SMAR|
000000C0: 54 20 50 52 4F 47 52 41  4D 4D 49 4E 47 20 43 41  |T PROGRAMMING CA|
000000D0: 4E 20 53 55 42 53 54 49  54 55 54 45 20 48 41 52  |N SUBSTITUTE HAR|
000000E0: 44 57 41 52 45 22 0D 0A  2D 2D 2D 2D 2D 2D 2D 2D  |DWARE"..--------|
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 2D 2D 2D 2D 2D 2D  |----------------|
00000110: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00000120: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00000130: 2D 2D 2D 2D 2D 2D 2D 0D  0A 0D 0A 43 4F 4E 54 45  |-------....CONTE|
00000140: 4E 54 53 3A 0D 0A 2D 2D  2D 2D 2D 2D 2D 2D 2D 0D  |NTS:..---------.|
00000150: 0A 0D 0A 2D 20 43 48 41  4E 47 45 53 20 4C 4F 47  |...- CHANGES LOG|
00000160: 0D 0A 2D 20 50 52 45 4C  55 44 45 0D 0A 2D 20 48  |..- PRELUDE..- H|
00000170: 4F 57 20 49 54 20 57 4F  52 4B 53 0D 0A 2D 20 50  |OW IT WORKS..- P|
00000180: 41 52 54 53 20 4C 49 53  54 0D 0A 2D 20 53 48 45  |ARTS LIST..- SHE|
00000190: 4D 41 54 49 43 53 0D 0A  2D 20 53 41 4D 50 4C 45  |MATICS..- SAMPLE|
000001A0: 20 43 4F 44 45 0D 0A 2D  20 4B 4E 4F 57 4E 20 50  | CODE..- KNOWN P|
000001B0: 52 4F 42 4C 45 4D 53 0D  0A 2D 20 4C 41 53 54 20  |ROBLEMS..- LAST |
000001C0: 57 4F 52 44 53 0D 0A 2D  20 43 52 45 44 49 54 53  |WORDS..- CREDITS|
000001D0: 0D 0A 2D 20 43 4F 4E 54  41 43 54 20 41 44 52 45  |..- CONTACT ADRE|
000001E0: 53 53 0D 0A 0D 0A 0D 0A  43 48 41 4E 47 45 53 3A  |SS......CHANGES:|
000001F0: 0D 0A 2D 2D 2D 2D 2D 2D  2D 2D 0D 0A 0D 0A 56 31  |..--------....V1|
00000200: 2E 32 3A 20 20 20 20 20  20 20 2D 20 53 41 4D 50  |.2:       - SAMP|
00000210: 4C 45 20 43 4F 44 45 20  43 4C 45 41 4E 55 50 0D  |LE CODE CLEANUP.|
00000220: 0A 0D 0A 56 31 2E 31 3A  20 20 20 20 20 20 20 2D  |...V1.1:       -|
00000230: 20 53 41 4D 50 4C 45 20  43 4F 44 45 20 55 50 44  | SAMPLE CODE UPD|
00000240: 41 54 45 44 0D 0A 20 20  20 20 20 20 20 20 20 20  |ATED..          |
00000250: 20 20 2D 20 41 44 44 45  44 20 46 4C 4F 57 2D 4F  |  - ADDED FLOW-O|
00000260: 46 2D 44 41 54 41 20 54  4F 20 54 48 45 20 53 48  |F-DATA TO THE SH|
00000270: 45 4D 41 54 49 43 53 20  46 4F 52 20 54 48 4F 53  |EMATICS FOR THOS|
00000280: 45 20 57 48 4F 20 41 52  45 20 49 4E 54 45 52 49  |E WHO ARE INTERI|
00000290: 53 54 45 44 0D 0A 20 20  20 20 20 20 20 20 20 20  |STED..          |
000002A0: 20 20 2D 20 41 44 44 45  44 20 43 4F 4D 4D 45 4E  |  - ADDED COMMEN|
000002B0: 54 20 4F 4E 20 4B 4E 4F  57 4E 20 50 52 4F 42 4C  |T ON KNOWN PROBL|
000002C0: 45 4D 53 0D 0A 0D 0A 56  31 2E 32 20 50 52 45 4C  |EMS....V1.2 PREL|
000002D0: 55 44 45 0D 0A 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |UDE..-----------|
000002E0: 2D 0D 0A 0D 0A 43 4C 45  41 4E 45 44 20 55 50 20  |-....CLEANED UP |
000002F0: 54 48 45 20 53 41 4D 50  4C 45 20 43 4F 44 45 2C  |THE SAMPLE CODE,|
00000300: 20 46 49 58 49 4E 47 20  41 20 4D 49 4E 4F 52 20  | FIXING A MINOR |
00000310: 42 55 47 2E 0D 0A 0D 0A  56 31 2E 31 20 50 52 45  |BUG.....V1.1 PRE|
00000320: 4C 55 44 45 0D 0A 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |LUDE..----------|
00000330: 2D 2D 0D 0A 0D 0A 48 4F  57 44 59 21 20 43 48 45  |--....HOWDY! CHE|
00000340: 45 52 53 20 46 4F 52 20  54 48 45 20 43 4F 4D 4D  |ERS FOR THE COMM|
00000350: 45 4E 54 53 20 41 4E 44  20 53 55 47 47 45 53 54  |ENTS AND SUGGEST|
00000360: 49 4F 4E 53 20 49 20 47  4F 54 20 49 4E 20 4D 41  |IONS I GOT IN MA|
00000370: 49 4C 2E 20 54 48 49 53  20 49 53 20 57 48 41 54  |IL. THIS IS WHAT|
00000380: 0D 0A 41 43 54 55 41 4C  4C 59 20 4D 41 44 45 20  |..ACTUALLY MADE |
00000390: 4D 45 20 50 55 54 54 49  4E 47 20 4F 55 54 20 54  |ME PUTTING OUT T|
000003A0: 48 49 53 20 55 50 44 41  54 45 20 2D 20 54 48 45  |HIS UPDATE - THE|
000003B0: 20 41 44 44 49 54 49 4F  4E 41 4C 20 49 4E 46 4F  | ADDITIONAL INFO|
000003C0: 20 43 4F 55 4C 44 20 42  45 0D 0A 49 4E 54 45 52  | COULD BE..INTER|
000003D0: 49 53 54 49 4E 47 20 46  4F 52 20 59 4F 55 20 41  |ISTING FOR YOU A|
000003E0: 53 57 45 4C 4C 2E 0D 0A  0D 0A 56 31 2E 30 20 50  |SWELL.....V1.0 P|
000003F0: 52 45 4C 55 44 45 0D 0A  2D 2D 2D 2D 2D 2D 2D 2D  |RELUDE..--------|
00000400: 2D 2D 2D 2D 0D 0A 0D 0A  41 54 20 4D 45 4B 4B 41  |----....AT MEKKA|
00000410: 20 53 59 4D 50 4F 53 49  55 4D 20 39 39 20 57 45  | SYMPOSIUM 99 WE|
00000420: 20 54 4F 4F 4B 20 41 20  4C 4F 4F 4B 20 41 54 20  | TOOK A LOOK AT |
00000430: 54 48 45 20 34 2D 50 4C  41 59 45 52 20 41 44 41  |THE 4-PLAYER ADA|
00000440: 50 54 45 52 20 54 48 41  54 20 49 53 20 53 55 50  |PTER THAT IS SUP|
00000450: 50 4F 52 54 45 44 0D 0A  42 59 20 54 48 45 20 47  |PORTED..BY THE G|
00000460: 41 4D 45 20 22 42 4F 4D  42 20 4D 41 4E 49 41 22  |AME "BOMB MANIA"|
00000470: 2E 20 54 48 4F 4D 41 53  20 41 4E 44 20 42 4A 4F  |. THOMAS AND BJO|
00000480: 45 52 4E 20 48 41 44 20  53 54 41 52 54 45 44 20  |ERN HAD STARTED |
00000490: 57 4F 52 4B 49 4E 47 20  4F 4E 20 54 48 45 49 52  |WORKING ON THEIR|
000004A0: 0D 0A 50 52 4F 4A 45 43  54 20 22 44 45 54 4F 4E  |..PROJECT "DETON|
000004B0: 41 54 4F 52 53 20 32 22  20 41 20 57 48 49 4C 45  |ATORS 2" A WHILE|
000004C0: 20 41 47 4F 20 41 4E 44  20 54 48 45 20 4D 55 4C  | AGO AND THE MUL|
000004D0: 54 49 2D 50 4C 41 59 45  52 20 41 42 49 4C 49 54  |TI-PLAYER ABILIT|
000004E0: 59 20 57 41 53 20 50 55  54 20 4F 4E 20 54 48 45  |Y WAS PUT ON THE|
000004F0: 0D 0A 22 4D 55 53 54 20  48 41 56 45 22 20 4C 49  |.."MUST HAVE" LI|
00000500: 53 54 2E 20 48 4F 57 45  56 45 52 2C 20 41 46 54  |ST. HOWEVER, AFT|
00000510: 45 52 20 57 45 20 43 52  41 43 4B 45 44 20 55 50  |ER WE CRACKED UP|
00000520: 20 54 48 45 20 54 48 49  4E 47 20 57 45 20 4E 4F  | THE THING WE NO|
00000530: 54 49 43 45 44 20 54 48  41 54 20 54 48 49 53 0D  |TICED THAT THIS.|
00000540: 0A 50 41 52 54 49 43 55  4C 41 52 20 41 44 41 50  |.PARTICULAR ADAP|
00000550: 54 45 52 20 4E 45 45 44  45 44 20 53 4F 4D 45 20  |TER NEEDED SOME |
00000560: 45 4C 45 43 54 52 4F 4E  49 43 20 43 4F 4D 50 4F  |ELECTRONIC COMPO|
00000570: 4E 45 4E 54 53 20 54 4F  20 57 4F 52 4B 20 41 4E  |NENTS TO WORK AN|
00000580: 44 20 42 45 43 41 55 53  45 20 4F 46 0D 0A 54 48  |D BECAUSE OF..TH|
00000590: 41 54 20 49 54 20 57 41  53 20 4E 4F 54 20 52 45  |AT IT WAS NOT RE|
000005A0: 41 4C 4C 59 20 53 55 49  54 41 42 4C 45 20 46 4F  |ALLY SUITABLE FO|
000005B0: 52 20 54 48 45 20 41 56  45 52 41 47 45 20 53 43  |R THE AVERAGE SC|
000005C0: 45 4E 45 52 20 54 4F 20  42 55 49 4C 54 20 4F 4E  |ENER TO BUILT ON|
000005D0: 20 48 49 53 20 4F 57 4E  2E 20 57 45 0D 0A 41 4C  | HIS OWN. WE..AL|
000005E0: 4D 4F 53 54 20 46 4F 52  47 4F 54 20 41 42 4F 55  |MOST FORGOT ABOU|
000005F0: 54 20 54 48 45 20 49 44  45 41 20 4F 46 20 43 52  |T THE IDEA OF CR|
00000600: 45 41 54 49 4E 47 20 41  20 34 20 50 4C 41 59 45  |EATING A 4 PLAYE|
00000610: 52 53 20 54 48 49 4E 47  59 2C 20 55 4E 54 49 4C  |RS THINGY, UNTIL|
00000620: 20 57 45 20 4D 45 54 20  41 47 41 49 4E 0D 0A 41  | WE MET AGAIN..A|
00000630: 54 20 54 48 45 20 45 4E  44 20 4F 46 20 4E 4F 56  |T THE END OF NOV|
00000640: 45 4D 42 45 52 20 39 39  2E 20 48 41 56 49 4E 47  |EMBER 99. HAVING|
00000650: 20 4E 4F 20 44 45 43 45  4E 54 20 44 4F 43 55 4D  | NO DECENT DOCUM|
00000660: 45 4E 54 41 54 49 4F 4E  20 45 58 43 45 50 54 20  |ENTATION EXCEPT |
00000670: 53 4F 4D 45 20 53 43 41  4E 4E 45 44 0D 0A 43 36  |SOME SCANNED..C6|
00000680: 34 20 53 48 45 4D 41 54  49 43 53 20 41 4E 44 20  |4 SHEMATICS AND |
00000690: 53 4F 4D 45 20 49 4F 2D  4D 41 50 20 49 54 20 57  |SOME IO-MAP IT W|
000006A0: 41 53 20 51 55 49 54 45  20 41 20 48 41 5A 5A 4C  |AS QUITE A HAZZL|
000006B0: 45 20 54 4F 20 4B 4E 4F  43 4B 20 49 54 20 55 50  |E TO KNOCK IT UP|
000006C0: 20 53 49 4E 43 45 20 57  45 20 48 41 44 0D 0A 54  | SINCE WE HAD..T|
000006D0: 4F 20 44 49 53 43 4F 56  45 52 20 41 20 46 45 57  |O DISCOVER A FEW|
000006E0: 20 28 50 52 4F 42 41 42  4C 59 20 57 45 4C 4C 20  | (PROBABLY WELL |
000006F0: 4B 4E 4F 57 4E 29 20 54  48 49 4E 47 53 20 4F 55  |KNOWN) THINGS OU|
00000700: 52 53 45 4C 56 45 53 2C  20 42 55 54 20 57 45 20  |RSELVES, BUT WE |
00000710: 46 49 4E 41 4C 4C 59 20  57 4F 52 4B 45 44 0D 0A  |FINALLY WORKED..|
00000720: 49 54 20 4F 55 54 2E 20  48 45 52 45 20 49 54 20  |IT OUT. HERE IT |
00000730: 49 53 2C 20 45 41 53 59  20 54 4F 20 42 55 49 4C  |IS, EASY TO BUIL|
00000740: 54 20 46 4F 52 20 45 56  45 52 59 4F 4E 45 20 2D  |T FOR EVERYONE -|
00000750: 20 41 4E 44 20 44 4F 43  55 4D 45 4E 54 45 44 20  | AND DOCUMENTED |
00000760: 41 53 57 45 4C 4C 2E 0D  0A 0D 0A 54 41 4B 45 20  |ASWELL.....TAKE |
00000770: 54 48 49 53 20 41 53 20  4F 55 52 20 43 48 52 49  |THIS AS OUR CHRI|
00000780: 53 54 4D 41 53 20 50 52  45 53 45 4E 54 20 46 4F  |STMAS PRESENT FO|
00000790: 52 20 59 4F 55 20 2D 20  53 49 4E 43 45 20 49 54  |R YOU - SINCE IT|
000007A0: 20 49 53 20 43 48 52 49  53 54 4D 41 53 20 41 4E  | IS CHRISTMAS AN|
000007B0: 59 57 41 59 2C 0D 0A 53  50 45 4E 44 20 59 4F 55  |YWAY,..SPEND YOU|
000007C0: 52 20 54 49 4D 45 20 4F  4E 20 53 4F 4D 45 54 48  |R TIME ON SOMETH|
000007D0: 49 4E 47 20 55 53 45 46  55 4C 20 41 4E 44 20 44  |ING USEFUL AND D|
000007E0: 4F 20 53 4F 4D 45 20 43  48 52 49 53 54 4D 41 53  |O SOME CHRISTMAS|
000007F0: 53 59 20 48 41 4E 44 49  43 52 41 46 54 20 57 4F  |SY HANDICRAFT WO|
00000800: 52 4B 2E 0D 0A 0D 0A 48  4F 57 20 49 54 20 57 4F  |RK.....HOW IT WO|
00000810: 52 4B 53 0D 0A 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |RKS..-----------|
00000820: 2D 0D 0A 0D 0A 54 4F 20  49 4E 54 45 52 46 41 43  |-....TO INTERFAC|
00000830: 45 20 32 20 41 44 44 49  54 49 4F 4E 41 4C 20 4A  |E 2 ADDITIONAL J|
00000840: 4F 59 53 54 49 43 4B 53  20 57 45 20 48 41 44 20  |OYSTICKS WE HAD |
00000850: 54 4F 20 46 49 4E 44 20  31 30 20 41 44 44 49 54  |TO FIND 10 ADDIT|
00000860: 49 4F 4E 41 4C 20 49 4E  50 55 54 2D 4C 49 4E 45  |IONAL INPUT-LINE|
00000870: 53 0D 0A 4F 4E 20 54 48  45 20 43 36 34 2E 20 53  |S..ON THE C64. S|
00000880: 49 4E 43 45 20 57 45 20  57 41 4E 54 45 44 20 54  |INCE WE WANTED T|
00000890: 4F 20 43 52 45 41 54 45  20 53 4F 4D 45 54 48 49  |O CREATE SOMETHI|
000008A0: 4E 47 20 54 48 41 54 20  49 53 20 42 4F 54 48 20  |NG THAT IS BOTH |
000008B0: 43 48 45 41 50 20 41 4E  44 20 43 4F 55 4C 44 0D  |CHEAP AND COULD.|
000008C0: 0A 42 45 20 42 55 49 4C  54 20 42 59 20 50 45 4F  |.BE BUILT BY PEO|
000008D0: 50 4C 45 20 57 49 54 48  20 56 45 52 59 20 4C 49  |PLE WITH VERY LI|
000008E0: 54 54 4C 45 20 28 49 46  20 4E 4F 54 20 4E 4F 4E  |TTLE (IF NOT NON|
000008F0: 45 29 20 53 4F 4C 44 45  52 49 4E 47 20 45 58 50  |E) SOLDERING EXP|
00000900: 45 52 49 45 4E 43 45 2C  20 57 45 0D 0A 4C 49 4D  |ERIENCE, WE..LIM|
00000910: 49 54 45 44 20 4F 55 52  53 45 4C 56 45 53 20 54  |ITED OURSELVES T|
00000920: 4F 20 4A 55 53 54 20 55  53 49 4E 47 20 50 4C 55  |O JUST USING PLU|
00000930: 47 53 20 41 4E 44 20 57  49 52 45 53 2E 20 57 45  |GS AND WIRES. WE|
00000940: 20 4C 4F 4F 4B 45 44 20  41 54 20 54 48 45 20 55  | LOOKED AT THE U|
00000950: 53 45 52 2D 50 4F 52 54  0D 0A 41 4E 44 20 46 4F  |SER-PORT..AND FO|
00000960: 55 4E 44 20 38 20 4C 49  4E 45 53 20 41 54 20 54  |UND 8 LINES AT T|
00000970: 48 45 20 46 49 52 53 54  20 47 4C 41 4E 43 45 20  |HE FIRST GLANCE |
00000980: 2D 20 50 4F 52 54 20 42  20 4F 46 20 43 49 41 20  |- PORT B OF CIA |
00000990: 32 20 2D 20 57 48 49 43  48 20 57 45 52 45 20 55  |2 - WHICH WERE U|
000009A0: 53 45 44 20 54 4F 0D 0A  43 4F 4E 4E 45 43 54 20  |SED TO..CONNECT |
000009B0: 54 48 45 20 34 20 44 49  52 45 43 54 49 4F 4E 41  |THE 4 DIRECTIONA|
000009C0: 4C 20 4C 49 4E 45 53 20  4F 46 20 45 41 43 48 20  |L LINES OF EACH |
000009D0: 4A 4F 59 53 54 49 43 4B  2E 20 46 49 4E 44 49 4E  |JOYSTICK. FINDIN|
000009E0: 47 20 32 20 4D 4F 52 45  20 4C 49 4E 45 53 20 46  |G 2 MORE LINES F|
000009F0: 4F 52 0D 0A 54 48 45 20  42 55 54 54 4F 4E 53 20  |OR..THE BUTTONS |
00000A00: 57 41 53 20 41 20 4C 49  54 54 4C 45 20 4D 4F 52  |WAS A LITTLE MOR|
00000A10: 45 20 54 52 49 43 4B 59  2E 20 49 46 20 59 4F 55  |E TRICKY. IF YOU|
00000A20: 20 4C 4F 4F 4B 20 43 4C  4F 53 45 52 20 41 54 20  | LOOK CLOSER AT |
00000A30: 54 48 45 20 55 53 45 52  2D 50 4F 52 54 2C 0D 0A  |THE USER-PORT,..|
00000A40: 59 4F 55 20 57 49 4C 4C  20 4E 4F 54 49 43 45 20  |YOU WILL NOTICE |
00000A50: 54 48 41 54 20 42 49 54  20 32 20 4F 46 20 43 49  |THAT BIT 2 OF CI|
00000A60: 41 20 32 20 50 4F 52 54  20 41 20 49 53 20 43 4F  |A 2 PORT A IS CO|
00000A70: 4E 4E 45 43 54 45 44 20  54 4F 20 49 54 20 41 53  |NNECTED TO IT AS|
00000A80: 57 45 4C 4C 2C 20 53 4F  0D 0A 54 48 45 52 45 20  |WELL, SO..THERE |
00000A90: 49 53 20 4A 55 53 54 20  4F 4E 45 20 4F 54 48 45  |IS JUST ONE OTHE|
00000AA0: 52 20 4C 49 4E 45 20 4C  45 46 54 20 54 4F 20 46  |R LINE LEFT TO F|
00000AB0: 49 4E 44 20 2D 20 57 48  49 43 48 20 54 55 52 4E  |IND - WHICH TURN|
00000AC0: 45 44 20 4F 55 54 20 54  4F 20 42 45 20 54 48 45  |ED OUT TO BE THE|
00000AD0: 20 4D 4F 53 54 0D 0A 43  48 41 4C 4C 45 4E 47 49  | MOST..CHALLENGI|
00000AE0: 4E 47 20 50 41 52 54 20  4F 46 20 49 54 20 41 4C  |NG PART OF IT AL|
00000AF0: 4C 2E 20 57 48 41 54 20  57 45 20 44 49 44 20 49  |L. WHAT WE DID I|
00000B00: 53 20 41 42 55 53 49 4E  47 20 54 48 45 20 53 59  |S ABUSING THE SY|
00000B10: 4E 43 48 52 4F 4E 4F 55  53 20 53 45 52 49 41 4C  |NCHRONOUS SERIAL|
00000B20: 0D 0A 44 41 54 41 20 52  45 47 49 53 54 45 52 20  |..DATA REGISTER |
00000B30: 4F 46 20 43 49 41 20 32  2C 20 57 48 49 43 48 20  |OF CIA 2, WHICH |
00000B40: 49 53 20 41 4C 53 4F 20  41 56 41 49 4C 41 42 4C  |IS ALSO AVAILABL|
00000B50: 45 20 41 54 20 54 48 45  20 55 53 45 52 2D 50 4F  |E AT THE USER-PO|
00000B60: 52 54 2E 20 54 4F 20 4D  41 4B 45 0D 0A 54 48 49  |RT. TO MAKE..THI|
00000B70: 53 20 57 4F 52 4B 20 57  45 20 48 41 44 20 54 4F  |S WORK WE HAD TO|
00000B80: 20 4C 45 54 20 43 49 41  20 31 20 4F 55 54 50 55  | LET CIA 1 OUTPU|
00000B90: 54 20 41 20 43 4F 55 4E  54 45 52 2D 53 49 47 4E  |T A COUNTER-SIGN|
00000BA0: 41 4C 20 41 54 20 54 48  45 20 43 4F 52 52 45 53  |AL AT THE CORRES|
00000BB0: 50 4F 4E 44 49 4E 47 0D  0A 55 53 45 52 2D 50 4F  |PONDING..USER-PO|
00000BC0: 52 54 20 50 49 4E 20 41  4E 44 20 57 45 20 46 45  |RT PIN AND WE FE|
00000BD0: 44 20 54 48 41 54 20 53  49 47 4E 41 4C 20 42 41  |D THAT SIGNAL BA|
00000BE0: 43 4B 20 49 4E 54 4F 20  43 49 41 20 32 20 53 45  |CK INTO CIA 2 SE|
00000BF0: 52 49 41 4C 2D 43 4F 55  4E 54 45 52 2E 20 4E 4F  |RIAL-COUNTER. NO|
00000C00: 57 20 42 59 0D 0A 55 53  49 4E 47 20 54 48 45 20  |W BY..USING THE |
00000C10: 4D 41 58 49 4D 55 4D 20  43 4F 55 4E 54 45 52 2D  |MAXIMUM COUNTER-|
00000C20: 53 50 45 45 44 20 50 4F  53 53 49 42 4C 45 2C 20  |SPEED POSSIBLE, |
00000C30: 57 45 20 43 4F 55 4C 44  20 55 53 45 20 54 48 45  |WE COULD USE THE|
00000C40: 20 53 59 4E 43 48 52 4F  4E 4F 55 53 0D 0A 53 45  | SYNCHRONOUS..SE|
00000C50: 52 49 41 4C 20 52 45 47  49 53 54 45 52 20 4F 46  |RIAL REGISTER OF|
00000C60: 20 43 49 41 20 32 20 41  53 20 41 4E 4F 54 48 45  | CIA 2 AS ANOTHE|
00000C70: 52 20 27 44 49 47 49 54  41 4C 27 20 49 4E 50 55  |R 'DIGITAL' INPU|
00000C80: 54 20 4C 49 4E 45 20 41  4E 44 20 42 49 4E 47 4F  |T LINE AND BINGO|
00000C90: 20 2D 20 54 48 45 52 45  0D 0A 57 45 20 41 52 45  | - THERE..WE ARE|
00000CA0: 2E 2E 2E 2E 0D 0A 0D 0A  50 41 52 54 53 20 4C 49  |........PARTS LI|
00000CB0: 53 54 0D 0A 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 0D 0A  |ST..----------..|
00000CC0: 0D 0A 41 4D 4F 55 4E 54  20 20 57 48 41 54 3F 20  |..AMOUNT  WHAT? |
00000CD0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000CE0: 20 57 45 20 46 4F 55 4E  44 20 49 54 20 41 54 20  | WE FOUND IT AT |
00000CF0: 20 20 20 20 20 20 20 20  20 20 20 20 20 43 4F 53  |             COS|
00000D00: 54 53 0D 0A 0D 0A 20 20  20 31 20 20 20 20 55 53  |TS....   1    US|
00000D10: 45 52 20 50 4F 52 54 20  50 4C 55 47 20 20 20 20  |ER PORT PLUG    |
00000D20: 20 20 20 20 20 28 43 4F  4E 52 41 44 20 45 4C 45  |     (CONRAD ELE|
00000D30: 43 54 52 4F 4E 49 43 20  37 34 32 32 30 31 29 20  |CTRONIC 742201) |
00000D40: 20 33 2E 39 35 20 44 4D  0D 0A 20 20 20 32 20 20  | 3.95 DM..   2  |
00000D50: 20 20 53 55 42 2D 44 20  39 50 49 4E 20 50 4C 55  |  SUB-D 9PIN PLU|
00000D60: 47 2C 20 4D 41 4C 45 20  20 28 43 4F 4E 52 41 44  |G, MALE  (CONRAD|
00000D70: 20 45 4C 45 43 54 52 4F  4E 49 43 20 37 34 32 30  | ELECTRONIC 7420|
00000D80: 36 36 29 20 20 30 2E 38  35 20 44 4D 20 45 41 43  |66)  0.85 DM EAC|
00000D90: 48 0D 0A 20 20 20 20 20  20 20 20 53 4F 4D 45 20  |H..        SOME |
00000DA0: 57 49 52 45 53 20 20 20  20 20 20 20 20 20 20 20  |WIRES           |
00000DB0: 20 20 52 49 50 20 4F 46  46 20 53 4F 4D 45 57 48  |  RIP OFF SOMEWH|
00000DC0: 45 52 45 20 20 20 20 20  20 20 20 20 20 20 20 20  |ERE             |
00000DD0: 3F 0D 0A 20 20 20 20 20  20 20 20 43 41 53 45 20  |?..        CASE |
00000DE0: 28 4F 50 54 49 4F 4E 41  4C 29 20 20 20 20 20 20  |(OPTIONAL)      |
00000DF0: 20 20 4F 4C 44 20 43 41  52 54 52 49 44 47 45 20  |  OLD CARTRIDGE |
00000E00: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000E10: 3F 0D 0A 0D 0A 20 20 20  20 20 20 20 20 20 20 20  |?....           |
00000E20: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000E30: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000E40: 20 20 20 54 4F 54 41 4C  20 43 4F 53 54 53 3A 20  |   TOTAL COSTS: |
00000E50: 35 2E 36 35 20 44 4D 0D  0A 0D 0A 41 4E 59 4F 4E  |5.65 DM....ANYON|
00000E60: 45 20 53 48 4F 55 4C 44  20 42 45 20 41 42 4C 45  |E SHOULD BE ABLE|
00000E70: 20 54 4F 20 41 53 53 45  4D 42 4C 45 20 45 56 45  | TO ASSEMBLE EVE|
00000E80: 52 59 54 48 49 4E 47 20  49 4E 20 4C 45 53 53 20  |RYTHING IN LESS |
00000E90: 54 48 41 4E 20 41 4E 20  48 4F 55 52 2E 0D 0A 0D  |THAN AN HOUR....|
00000EA0: 0A 54 48 45 20 53 48 45  4D 41 54 49 43 53 3A 0D  |.THE SHEMATICS:.|
00000EB0: 0A 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 0D  |.--------------.|
00000EC0: 0A 0D 0A 44 4F 4E 27 54  20 50 41 4E 49 43 21 20  |...DON'T PANIC! |
00000ED0: 3A 50 20 54 48 45 20 2D  2D 3E 2D 2D 20 2F 20 20  |:P THE -->-- /  |
00000EE0: 2D 2D 3C 2D 2D 20 53 59  4D 42 4F 4C 53 20 44 4F  |--<-- SYMBOLS DO|
00000EF0: 20 4A 55 53 54 20 4D 41  52 4B 20 54 48 45 20 44  | JUST MARK THE D|
00000F00: 49 52 45 43 54 49 4F 4E  20 54 48 45 20 44 41 54  |IRECTION THE DAT|
00000F10: 41 0D 0A 49 53 20 46 4C  4F 57 49 4E 47 21 20 3D  |A..IS FLOWING! =|
00000F20: 29 0D 0A 0D 0A 55 53 45  52 20 50 4F 52 54 20 20  |)....USER PORT  |
00000F30: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000F40: 20 20 20 4A 4F 59 53 54  49 43 4B 53 0D 0A 2D 2D  |   JOYSTICKS..--|
00000F50: 2D 2D 2D 2D 2D 2D 2D 20  20 20 20 20 20 20 20 20  |-------         |
00000F60: 20 20 20 20 20 20 20 20  20 20 20 20 2D 2D 2D 2D  |            ----|
00000F70: 2D 2D 2D 2D 2D 0D 0A 0D  0A 47 4E 44 20 20 20 20  |-----....GND    |
00000F80: 20 31 20 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  | 1 -------------|
00000F90: 2D 2D 2B 2D 2D 2D 20 38  20 20 4A 4F 59 20 33 20  |--+--- 8  JOY 3 |
00000FA0: 20 47 4E 44 0D 0A 43 4E  54 31 20 20 20 20 34 20  | GND..CNT1    4 |
00000FB0: 2D 3E 2D 2B 20 20 20 20  20 20 20 20 20 20 20 2B  |->-+           +|
00000FC0: 2D 2D 2D 20 38 20 20 4A  4F 59 20 34 20 20 47 4E  |--- 8  JOY 4  GN|
00000FD0: 44 0D 0A 43 4E 54 32 20  20 20 20 36 20 2D 3C 2D  |D..CNT2    6 -<-|
00000FE0: 2B 0D 0A 53 50 32 20 20  20 20 20 37 20 2D 2D 2D  |+..SP2     7 ---|
00000FF0: 2D 2D 2D 2D 2D 2D 2D 3C  2D 2D 2D 2D 2D 2D 2D 2D  |-------<--------|
00001000: 20 36 20 20 4A 4F 59 20  34 20 20 42 55 54 54 4F  | 6  JOY 4  BUTTO|
00001010: 4E 0D 0A 50 42 30 20 20  20 20 20 43 20 2D 2D 2D  |N..PB0     C ---|
00001020: 2D 2D 2D 2D 2D 2D 2D 3C  2D 2D 2D 2D 2D 2D 2D 2D  |-------<--------|
00001030: 20 31 20 20 4A 4F 59 20  33 20 20 41 30 0D 0A 50  | 1  JOY 3  A0..P|
00001040: 42 31 20 20 20 20 20 44  20 2D 2D 2D 2D 2D 2D 2D  |B1     D -------|
00001050: 2D 2D 2D 3C 2D 2D 2D 2D  2D 2D 2D 2D 20 32 20 20  |---<-------- 2  |
00001060: 4A 4F 59 20 33 20 20 41  31 0D 0A 50 42 32 20 20  |JOY 3  A1..PB2  |
00001070: 20 20 20 45 20 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 3C  |   E ----------<|
00001080: 2D 2D 2D 2D 2D 2D 2D 2D  20 33 20 20 4A 4F 59 20  |-------- 3  JOY |
00001090: 33 20 20 41 32 0D 0A 50  42 33 20 20 20 20 20 46  |3  A2..PB3     F|
000010A0: 20 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 3C 2D 2D 2D 2D  | ----------<----|
000010B0: 2D 2D 2D 2D 20 34 20 20  4A 4F 59 20 33 20 20 41  |---- 4  JOY 3  A|
000010C0: 33 0D 0A 50 42 34 20 20  20 20 20 48 20 2D 2D 2D  |3..PB4     H ---|
000010D0: 2D 2D 2D 2D 2D 2D 2D 3C  2D 2D 2D 2D 2D 2D 2D 2D  |-------<--------|
000010E0: 20 31 20 20 4A 4F 59 20  34 20 20 41 30 0D 0A 50  | 1  JOY 4  A0..P|
000010F0: 42 35 20 20 20 20 20 4A  20 2D 2D 2D 2D 2D 2D 2D  |B5     J -------|
00001100: 2D 2D 2D 3C 2D 2D 2D 2D  2D 2D 2D 2D 20 32 20 20  |---<-------- 2  |
00001110: 4A 4F 59 20 34 20 20 41  31 0D 0A 50 42 36 20 20  |JOY 4  A1..PB6  |
00001120: 20 20 20 4B 20 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 3C  |   K ----------<|
00001130: 2D 2D 2D 2D 2D 2D 2D 2D  20 33 20 20 4A 4F 59 20  |-------- 3  JOY |
00001140: 34 20 20 41 32 0D 0A 50  42 37 20 20 20 20 20 4C  |4  A2..PB7     L|
00001150: 20 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 3C 2D 2D 2D 2D  | ----------<----|
00001160: 2D 2D 2D 2D 20 34 20 20  4A 4F 59 20 34 20 20 41  |---- 4  JOY 4  A|
00001170: 33 0D 0A 50 41 32 20 20  20 20 20 4D 20 2D 2D 2D  |3..PA2     M ---|
00001180: 2D 2D 2D 2D 2D 2D 2D 3C  2D 2D 2D 2D 2D 2D 2D 2D  |-------<--------|
00001190: 20 36 20 20 4A 4F 59 20  33 20 20 42 55 54 54 4F  | 6  JOY 3  BUTTO|
000011A0: 4E 0D 0A 0D 0A 4E 4F 54  45 3A 20 47 4E 44 20 49  |N....NOTE: GND I|
000011B0: 53 20 43 4F 4E 4E 45 43  54 45 44 20 54 4F 20 42  |S CONNECTED TO B|
000011C0: 4F 54 48 20 4A 4F 59 33  2F 4A 4F 59 34 20 47 4E  |OTH JOY3/JOY4 GN|
000011D0: 44 20 2D 20 41 53 57 45  4C 4C 20 43 4E 54 31 20  |D - ASWELL CNT1 |
000011E0: 41 4E 44 20 43 4E 54 32  20 41 52 45 20 42 52 49  |AND CNT2 ARE BRI|
000011F0: 44 47 45 44 0D 0A 20 20  20 20 20 20 28 53 48 41  |DGED..      (SHA|
00001200: 4D 45 20 54 48 45 52 45  20 41 52 45 20 4E 4F 20  |ME THERE ARE NO |
00001210: 44 45 43 45 4E 54 20 47  46 58 20 43 48 41 52 41  |DECENT GFX CHARA|
00001220: 43 54 45 52 53 20 49 4E  20 41 53 43 49 49 20 3A  |CTERS IN ASCII :|
00001230: 50 29 0D 0A 0D 0A 55 53  45 52 20 50 4F 52 54 20  |P)....USER PORT |
00001240: 50 4C 55 47 20 28 42 41  43 4B 20 56 49 45 57 20  |PLUG (BACK VIEW |
00001250: 2D 20 53 4F 4C 44 45 52  49 4E 47 20 53 49 44 45  |- SOLDERING SIDE|
00001260: 29 0D 0A 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |)..-------------|
00001270: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001280: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 0D 0A  |--------------..|
00001290: 0D 0A 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
000012A0: 20 20 20 20 20 20 20 20  20 20 20 20 20 28 54 4F  |             (TO|
000012B0: 50 29 0D 0A 2B 2D 2D 2D  2D 2B 2D 2D 2D 2D 2D 2D  |P)..+----+------|
000012C0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
000012D0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
000012E0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2B 2D 2D 2D 2D 2B 0D  |---------+----+.|
000012F0: 0A 7C 20 20 20 20 7C 20  31 20 20 20 32 20 20 20  |.|    | 1   2   |
00001300: 33 20 20 20 34 20 20 20  35 20 20 20 36 20 20 20  |3   4   5   6   |
00001310: 37 20 20 20 38 20 20 20  39 20 20 31 30 20 20 31  |7   8   9  10  1|
00001320: 31 20 20 31 32 20 7C 20  20 20 20 7C 0D 0A 7C 20  |1  12 |    |..| |
00001330: 2B 2B 20 7C 20 20 20 20  20 20 20 20 20 20 20 20  |++ |            |
00001340: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001350: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001360: 20 20 20 7C 20 2B 2B 20  7C 0D 0A 7C 20 2B 2B 20  |   | ++ |..| ++ |
00001370: 7C 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  ||               |
00001380: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001390: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000013A0: 7C 20 2B 2B 20 7C 0D 0A  7C 20 20 20 20 7C 20 41  || ++ |..|    | A|
000013B0: 20 20 20 42 20 20 20 43  20 20 20 44 20 20 20 45  |   B   C   D   E|
000013C0: 20 20 20 46 20 20 20 48  20 20 20 4A 20 20 20 4B  |   F   H   J   K|
000013D0: 20 20 20 4C 20 20 20 4D  20 20 20 4E 20 7C 20 20  |   L   M   N |  |
000013E0: 20 20 7C 0D 0A 2B 2D 2D  2D 2D 2B 2D 2D 2D 2D 2D  |  |..+----+-----|
000013F0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001400: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001410: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2B 2D 2D 2D 2D 2B  |----------+----+|
00001420: 0D 0A 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |..              |
00001430: 20 20 20 20 20 20 20 20  20 20 20 20 28 42 4F 54  |            (BOT|
00001440: 54 4F 4D 29 0D 0A 0D 0A  4A 4F 59 53 54 49 43 4B  |TOM)....JOYSTICK|
00001450: 20 50 4F 52 54 20 50 4C  55 47 20 28 42 41 43 4B  | PORT PLUG (BACK|
00001460: 20 56 49 45 57 20 2D 20  53 4F 4C 44 45 52 49 4E  | VIEW - SOLDERIN|
00001470: 47 20 53 49 44 45 29 0D  0A 2D 2D 2D 2D 2D 2D 2D  |G SIDE)..-------|
00001480: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001490: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
000014A0: 2D 2D 2D 2D 2D 2D 2D 2D  0D 0A 0D 0A 20 20 20 20  |--------....    |
000014B0: 20 20 20 20 20 20 20 20  20 20 28 54 4F 50 29 0D  |          (TOP).|
000014C0: 0A 20 2D 2D 2D 5C 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |. ---\----------|
000014D0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2F 2D 2D  |-------------/--|
000014E0: 2D 0D 0A 20 7C 20 20 20  5C 20 20 35 20 20 20 34  |-.. |   \  5   4|
000014F0: 20 20 20 33 20 20 20 32  20 20 20 31 20 20 2F 20  |   3   2   1  / |
00001500: 20 20 7C 0D 0A 20 7C 20  2A 20 20 5C 20 20 20 20  |  |.. | *  \    |
00001510: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 2F  |               /|
00001520: 20 20 2A 20 7C 0D 0A 20  7C 20 20 20 20 20 5C 20  |  * |.. |     \ |
00001530: 20 39 20 20 20 38 20 20  20 37 20 20 20 36 20 20  | 9   8   7   6  |
00001540: 2F 20 20 20 20 20 7C 0D  0A 20 2D 2D 2D 2D 2D 2D  |/     |.. ------|
00001550: 2D 5C 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |-\--------------|
00001560: 2D 2F 2D 2D 2D 2D 2D 2D  2D 0D 0A 20 20 20 20 20  |-/-------..     |
00001570: 20 20 20 20 20 20 20 20  28 42 4F 54 54 4F 4D 29  |        (BOTTOM)|
00001580: 0D 0A 0D 0A 53 41 4D 50  4C 45 20 43 4F 44 45 20  |....SAMPLE CODE |
00001590: 49 4E 20 54 55 52 42 4F  2D 41 53 53 20 53 59 4E  |IN TURBO-ASS SYN|
000015A0: 54 41 58 20 28 53 4B 49  50 20 54 48 49 53 20 49  |TAX (SKIP THIS I|
000015B0: 46 20 59 4F 55 20 43 41  4E 27 54 20 43 4F 44 45  |F YOU CAN'T CODE|
000015C0: 20 2A 47 52 49 4E 2A 29  0D 0A 2D 2D 2D 2D 2D 2D  | *GRIN*)..------|
000015D0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
000015E0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
000015F0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001600: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 0D 0A  |--------------..|
00001610: 0D 0A 3B 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |..;-------------|
00001620: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001630: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 0D 0A 3B 34 20 50  |----------..;4 P|
00001640: 4C 41 59 45 52 20 41 44  41 50 54 45 52 20 53 41  |LAYER ADAPTER SA|
00001650: 4D 50 4C 45 20 43 4F 44  45 20 42 59 20 47 50 5A  |MPLE CODE BY GPZ|
00001660: 2F 48 49 54 0D 0A 3B 2D  2D 2D 2D 2D 2D 2D 2D 2D  |/HIT..;---------|
00001670: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001680: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 0D 0A  |--------------..|
00001690: 0D 0A 4A 4F 59 33 52 45  47 20 20 3D 20 24 30 32  |..JOY3REG  = $02|
000016A0: 20 20 3B 20 45 58 41 4D  50 4C 45 20 4A 4F 59 2D  |  ; EXAMPLE JOY-|
000016B0: 52 45 47 53 0D 0A 4A 4F  59 34 52 45 47 20 20 3D  |REGS..JOY4REG  =|
000016C0: 20 24 30 33 0D 0A 0D 0A  42 54 45 4D 50 20 20 20  | $03....BTEMP   |
000016D0: 20 3D 20 24 30 34 20 20  3B 20 54 45 4D 50 20 46  | = $04  ; TEMP F|
000016E0: 4F 52 20 44 49 53 50 4C  41 59 0D 0A 0D 0A 3B 2D  |OR DISPLAY....;-|
000016F0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001700: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001710: 2D 2D 2D 2D 2D 2D 0D 0A  3B 20 4D 41 49 4E 0D 0A  |------..; MAIN..|
00001720: 3B 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |;---------------|
00001730: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001740: 2D 2D 2D 2D 2D 2D 2D 2D  0D 0A 0D 0A 20 20 20 20  |--------....    |
00001750: 20 20 20 20 20 2A 3D 20  24 31 30 30 30 0D 0A 0D  |     *= $1000...|
00001760: 0A 20 20 20 20 20 20 20  20 20 3B 0D 0A 20 20 20  |.         ;..   |
00001770: 20 20 20 20 20 20 3B 20  55 53 55 41 4C 20 49 52  |      ; USUAL IR|
00001780: 51 20 53 45 54 55 50 0D  0A 20 20 20 20 20 20 20  |Q SETUP..       |
00001790: 20 20 3B 0D 0A 0D 0A 20  20 20 20 20 20 20 20 20  |  ;....         |
000017A0: 53 45 49 0D 0A 20 20 20  20 20 20 20 20 20 4C 44  |SEI..         LD|
000017B0: 41 20 23 3E 49 52 51 0D  0A 20 20 20 20 20 20 20  |A #>IRQ..       |
000017C0: 20 20 53 54 41 20 24 30  33 31 35 0D 0A 20 20 20  |  STA $0315..   |
000017D0: 20 20 20 20 20 20 4C 44  41 20 23 3C 49 52 51 0D  |      LDA #<IRQ.|
000017E0: 0A 20 20 20 20 20 20 20  20 20 53 54 41 20 24 30  |.         STA $0|
000017F0: 33 31 34 0D 0A 20 20 20  20 20 20 20 20 20 4C 44  |314..         LD|
00001800: 41 20 23 24 31 42 0D 0A  20 20 20 20 20 20 20 20  |A #$1B..        |
00001810: 20 53 54 41 20 24 44 30  31 31 0D 0A 20 20 20 20  | STA $D011..    |
00001820: 20 20 20 20 20 4C 44 41  20 23 24 37 46 0D 0A 20  |     LDA #$7F.. |
00001830: 20 20 20 20 20 20 20 20  53 54 41 20 24 44 43 30  |        STA $DC0|
00001840: 44 0D 0A 20 20 20 20 20  20 20 20 20 4C 44 41 20  |D..         LDA |
00001850: 23 24 46 46 0D 0A 20 20  20 20 20 20 20 20 20 53  |#$FF..         S|
00001860: 54 41 20 24 44 30 31 32  0D 0A 20 20 20 20 20 20  |TA $D012..      |
00001870: 20 20 20 4C 44 41 20 23  24 30 31 0D 0A 20 20 20  |   LDA #$01..   |
00001880: 20 20 20 20 20 20 53 54  41 20 24 44 30 31 41 0D  |      STA $D01A.|
00001890: 0A 0D 0A 20 20 20 20 20  20 20 20 20 3B 0D 0A 20  |...         ;.. |
000018A0: 20 20 20 20 20 20 20 20  3B 20 50 52 49 4E 54 20  |        ; PRINT |
000018B0: 49 4E 46 4F 0D 0A 20 20  20 20 20 20 20 20 20 3B  |INFO..         ;|
000018C0: 0D 0A 0D 0A 20 20 20 20  20 20 20 20 20 4C 44 58  |....         LDX|
000018D0: 20 23 24 30 30 0D 0A 4C  4F 4F 50 20 20 20 20 20  | #$00..LOOP     |
000018E0: 2E 56 41 52 20 2A 0D 0A  20 20 20 20 20 20 20 20  |.VAR *..        |
000018F0: 20 4C 44 41 20 53 43 52  45 45 4E 2C 58 0D 0A 20  | LDA SCREEN,X.. |
00001900: 20 20 20 20 20 20 20 20  4A 53 52 20 24 46 46 44  |        JSR $FFD|
00001910: 32 0D 0A 20 20 20 20 20  20 20 20 20 49 4E 58 0D  |2..         INX.|
00001920: 0A 20 20 20 20 20 20 20  20 20 43 50 58 20 23 32  |.         CPX #2|
00001930: 32 0D 0A 20 20 20 20 20  20 20 20 20 42 4E 45 20  |2..         BNE |
00001940: 4C 4F 4F 50 0D 0A 0D 0A  20 20 20 20 20 20 20 20  |LOOP....        |
00001950: 20 4A 53 52 20 53 45 54  55 50 20 20 20 20 3B 20  | JSR SETUP    ; |
00001960: 43 49 41 20 53 45 54 55  50 20 46 4F 52 20 41 44  |CIA SETUP FOR AD|
00001970: 41 50 54 45 52 0D 0A 0D  0A 20 20 20 20 20 20 20  |APTER....       |
00001980: 20 20 43 4C 49 0D 0A 0D  0A 20 20 20 20 20 20 20  |  CLI....       |
00001990: 20 20 4A 4D 50 20 2A 0D  0A 0D 0A 3B 2D 2D 2D 2D  |  JMP *....;----|
000019A0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
000019B0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
000019C0: 2D 2D 2D 0D 0A 3B 20 49  4E 54 45 52 55 50 54 20  |---..; INTERUPT |
000019D0: 43 41 4C 4C 53 20 4F 54  48 45 52 20 52 4F 55 54  |CALLS OTHER ROUT|
000019E0: 49 4E 45 53 0D 0A 3B 2D  2D 2D 2D 2D 2D 2D 2D 2D  |INES..;---------|
000019F0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001A00: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 0D 0A  |--------------..|
00001A10: 49 52 51 0D 0A 0D 0A 20  20 20 20 20 20 20 20 20  |IRQ....         |
00001A20: 49 4E 43 20 24 44 30 32  30 0D 0A 0D 0A 20 20 20  |INC $D020....   |
00001A30: 20 20 20 20 20 20 4A 53  52 20 52 45 41 44 20 20  |      JSR READ  |
00001A40: 20 3B 20 52 45 41 44 20  41 44 41 50 54 45 52 20  | ; READ ADAPTER |
00001A50: 28 54 41 4B 45 53 20 41  42 4F 55 54 20 32 20 52  |(TAKES ABOUT 2 R|
00001A60: 41 53 54 45 52 4C 49 4E  45 53 29 0D 0A 0D 0A 20  |ASTERLINES).... |
00001A70: 20 20 20 20 20 20 20 20  49 4E 43 20 24 44 30 32  |        INC $D02|
00001A80: 30 0D 0A 0D 0A 20 20 20  20 20 20 20 20 20 4C 44  |0....         LD|
00001A90: 58 20 23 28 34 30 2A 31  29 2B 34 0D 0A 20 20 20  |X #(40*1)+4..   |
00001AA0: 20 20 20 20 20 20 4C 44  41 20 24 44 43 30 30 0D  |      LDA $DC00.|
00001AB0: 0A 20 20 20 20 20 20 20  20 20 4A 53 52 20 44 49  |.         JSR DI|
00001AC0: 53 50 4C 41 59 42 49 54  53 0D 0A 0D 0A 20 20 20  |SPLAYBITS....   |
00001AD0: 20 20 20 20 20 20 4C 44  58 20 23 28 34 30 2A 32  |      LDX #(40*2|
00001AE0: 29 2B 34 0D 0A 20 20 20  20 20 20 20 20 20 4C 44  |)+4..         LD|
00001AF0: 41 20 24 44 43 30 31 0D  0A 20 20 20 20 20 20 20  |A $DC01..       |
00001B00: 20 20 4A 53 52 20 44 49  53 50 4C 41 59 42 49 54  |  JSR DISPLAYBIT|
00001B10: 53 0D 0A 0D 0A 20 20 20  20 20 20 20 20 20 4C 44  |S....         LD|
00001B20: 58 20 23 28 34 30 2A 33  29 2B 34 0D 0A 20 20 20  |X #(40*3)+4..   |
00001B30: 20 20 20 20 20 20 4C 44  41 20 4A 4F 59 33 52 45  |      LDA JOY3RE|
00001B40: 47 0D 0A 20 20 20 20 20  20 20 20 20 4A 53 52 20  |G..         JSR |
00001B50: 44 49 53 50 4C 41 59 42  49 54 53 0D 0A 0D 0A 20  |DISPLAYBITS.... |
00001B60: 20 20 20 20 20 20 20 20  4C 44 58 20 23 28 34 30  |        LDX #(40|
00001B70: 2A 34 29 2B 34 0D 0A 20  20 20 20 20 20 20 20 20  |*4)+4..         |
00001B80: 4C 44 41 20 4A 4F 59 34  52 45 47 0D 0A 20 20 20  |LDA JOY4REG..   |
00001B90: 20 20 20 20 20 20 4A 53  52 20 44 49 53 50 4C 41  |      JSR DISPLA|
00001BA0: 59 42 49 54 53 0D 0A 0D  0A 20 20 20 20 20 20 20  |YBITS....       |
00001BB0: 20 20 4C 44 41 20 23 24  30 30 0D 0A 20 20 20 20  |  LDA #$00..    |
00001BC0: 20 20 20 20 20 53 54 41  20 24 44 30 32 30 0D 0A  |     STA $D020..|
00001BD0: 0D 0A 20 20 20 20 20 20  20 20 20 49 4E 43 20 24  |..         INC $|
00001BE0: 44 30 31 39 0D 0A 20 20  20 20 20 20 20 20 20 4A  |D019..         J|
00001BF0: 4D 50 20 24 46 45 42 43  0D 0A 0D 0A 3B 2D 2D 2D  |MP $FEBC....;---|
00001C00: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001C10: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001C20: 2D 2D 2D 2D 0D 0A 3B 20  44 49 53 50 4C 41 59 53  |----..; DISPLAYS|
00001C30: 20 35 20 4C 4F 57 45 53  54 20 42 49 54 53 20 4F  | 5 LOWEST BITS O|
00001C40: 46 20 4A 4F 59 53 54 49  43 4B 2D 52 45 47 0D 0A  |F JOYSTICK-REG..|
00001C50: 3B 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |;---------------|
00001C60: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001C70: 2D 2D 2D 2D 2D 2D 2D 2D  0D 0A 44 49 53 50 4C 41  |--------..DISPLA|
00001C80: 59 42 49 54 53 0D 0A 0D  0A 20 20 20 20 20 20 20  |YBITS....       |
00001C90: 20 20 52 4F 4C 20 41 0D  0A 20 20 20 20 20 20 20  |  ROL A..       |
00001CA0: 20 20 52 4F 4C 20 41 0D  0A 20 20 20 20 20 20 20  |  ROL A..       |
00001CB0: 20 20 52 4F 4C 20 41 0D  0A 0D 0A 20 20 20 20 20  |  ROL A....     |
00001CC0: 20 20 20 20 53 54 41 20  42 54 45 4D 50 0D 0A 0D  |    STA BTEMP...|
00001CD0: 0A 20 20 20 20 20 20 20  20 20 4C 44 59 20 23 24  |.         LDY #$|
00001CE0: 30 30 0D 0A 4C 4F 4F 50  20 20 20 20 20 2E 56 41  |00..LOOP     .VA|
00001CF0: 52 20 2A 0D 0A 0D 0A 20  20 20 20 20 20 20 20 20  |R *....         |
00001D00: 52 4F 4C 20 42 54 45 4D  50 0D 0A 20 20 20 20 20  |ROL BTEMP..     |
00001D10: 20 20 20 20 42 43 43 20  53 4B 49 50 31 0D 0A 0D  |    BCC SKIP1...|
00001D20: 0A 20 20 20 20 20 20 20  20 20 4C 44 41 20 23 22  |.         LDA #"|
00001D30: 2D 22 0D 0A 20 20 20 20  20 20 20 20 20 4A 4D 50  |-"..         JMP|
00001D40: 20 53 4B 49 50 32 0D 0A  53 4B 49 50 31 0D 0A 20  | SKIP2..SKIP1.. |
00001D50: 20 20 20 20 20 20 20 20  4C 44 41 20 23 22 2A 22  |        LDA #"*"|
00001D60: 0D 0A 53 4B 49 50 32 0D  0A 20 20 20 20 20 20 20  |..SKIP2..       |
00001D70: 20 20 53 54 41 20 24 30  34 30 30 2C 58 0D 0A 0D  |  STA $0400,X...|
00001D80: 0A 20 20 20 20 20 20 20  20 20 49 4E 58 0D 0A 20  |.         INX.. |
00001D90: 20 20 20 20 20 20 20 20  49 4E 59 0D 0A 20 20 20  |        INY..   |
00001DA0: 20 20 20 20 20 20 43 50  59 20 23 24 30 35 0D 0A  |      CPY #$05..|
00001DB0: 20 20 20 20 20 20 20 20  20 42 4E 45 20 4C 4F 4F  |         BNE LOO|
00001DC0: 50 0D 0A 0D 0A 20 20 20  20 20 20 20 20 20 52 54  |P....         RT|
00001DD0: 53 0D 0A 0D 0A 3B 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |S....;----------|
00001DE0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001DF0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 0D 0A 53  |-------------..S|
00001E00: 43 52 45 45 4E 0D 0A 20  20 20 20 20 20 20 20 20  |CREEN..         |
00001E10: 2E 54 45 58 54 20 22 7B  43 4C 52 2F 48 4F 4D 45  |.TEXT "{CLR/HOME|
00001E20: 7D 4A 4F 59 20 42 52 4C  44 55 7B 52 45 54 55 52  |}JOY BRLDU{RETUR|
00001E30: 4E 7D 22 0D 0A 20 20 20  20 20 20 20 20 20 2E 54  |N}"..         .T|
00001E40: 45 58 54 20 22 20 31 7B  52 45 54 55 52 4E 7D 22  |EXT " 1{RETURN}"|
00001E50: 0D 0A 20 20 20 20 20 20  20 20 20 2E 54 45 58 54  |..         .TEXT|
00001E60: 20 22 20 32 7B 52 45 54  55 52 4E 7D 22 0D 0A 20  | " 2{RETURN}".. |
00001E70: 20 20 20 20 20 20 20 20  2E 54 45 58 54 20 22 20  |        .TEXT " |
00001E80: 33 7B 52 45 54 55 52 4E  7D 22 0D 0A 20 20 20 20  |3{RETURN}"..    |
00001E90: 20 20 20 20 20 2E 54 45  58 54 20 22 20 34 7B 52  |     .TEXT " 4{R|
00001EA0: 45 54 55 52 4E 7D 22 0D  0A 0D 0A 3B 2D 2D 2D 2D  |ETURN}"....;----|
00001EB0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001EC0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001ED0: 2D 2D 2D 0D 0A 0D 0A 3B  2D 2D 2D 2D 2D 2D 2D 2D  |---....;--------|
00001EE0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001EF0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 0D  |---------------.|
00001F00: 0A 52 45 41 44 0D 0A 3B  2D 2D 2D 2D 2D 2D 2D 2D  |.READ..;--------|
00001F10: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001F20: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 0D  |---------------.|
00001F30: 0A 3B 20 52 45 41 44 53  20 41 44 41 50 54 45 52  |.; READS ADAPTER|
00001F40: 20 41 4E 44 20 43 4F 4D  50 4F 53 45 53 20 54 48  | AND COMPOSES TH|
00001F50: 45 0D 0A 3B 20 41 44 44  49 54 49 4F 4E 41 4C 20  |E..; ADDITIONAL |
00001F60: 56 49 52 54 55 41 4C 20  4A 4F 59 53 54 49 43 4B  |VIRTUAL JOYSTICK|
00001F70: 2D 52 45 47 49 53 54 45  52 53 0D 0A 3B 2D 2D 2D  |-REGISTERS..;---|
00001F80: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001F90: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00001FA0: 2D 2D 2D 2D 0D 0A 3B 54  48 49 53 20 43 4F 44 45  |----..;THIS CODE|
00001FB0: 20 44 45 4D 4F 4E 53 54  52 41 54 45 53 20 48 4F  | DEMONSTRATES HO|
00001FC0: 57 20 54 4F 20 52 45 41  44 20 54 48 45 0D 0A 3B  |W TO READ THE..;|
00001FD0: 41 44 44 49 54 49 4F 4E  41 4C 20 32 20 4A 4F 59  |ADDITIONAL 2 JOY|
00001FE0: 53 54 49 43 4B 53 20 41  4E 44 20 48 4F 57 20 54  |STICKS AND HOW T|
00001FF0: 4F 20 43 4F 4D 2D 0D 0A  3B 50 4F 53 45 20 32 20  |O COM-..;POSE 2 |
00002000: 27 56 49 52 54 55 41 4C  27 20 4A 4F 59 53 54 49  |'VIRTUAL' JOYSTI|
00002010: 43 4B 2D 52 45 47 49 53  54 45 52 53 0D 0A 3B 54  |CK-REGISTERS..;T|
00002020: 48 41 54 20 43 41 4E 20  42 45 20 50 52 4F 43 45  |HAT CAN BE PROCE|
00002030: 53 53 45 44 20 45 58 41  43 54 4C 59 20 4C 49 4B  |SSED EXACTLY LIK|
00002040: 45 20 54 48 45 0D 0A 3B  55 53 55 41 4C 20 28 24  |E THE..;USUAL ($|
00002050: 44 43 30 30 2F 24 44 43  30 31 29 20 4F 4E 45 53  |DC00/$DC01) ONES|
00002060: 2E 0D 0A 3B 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |...;------------|
00002070: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00002080: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 0D 0A 20 20 20  |-----------..   |
00002090: 20 20 20 20 20 20 3B 0D  0A 20 20 20 20 20 20 20  |      ;..       |
000020A0: 20 20 3B 20 53 41 56 45  20 43 49 41 20 32 20 52  |  ; SAVE CIA 2 R|
000020B0: 45 47 49 53 54 45 52 53  0D 0A 20 20 20 20 20 20  |EGISTERS..      |
000020C0: 20 20 20 3B 0D 0A 0D 0A  20 20 20 20 20 20 20 20  |   ;....        |
000020D0: 20 4C 44 41 20 24 44 44  30 30 0D 0A 20 20 20 20  | LDA $DD00..    |
000020E0: 20 20 20 20 20 53 54 41  20 43 49 41 53 41 56 45  |     STA CIASAVE|
000020F0: 31 2B 31 0D 0A 20 20 20  20 20 20 20 20 20 4C 44  |1+1..         LD|
00002100: 41 20 24 44 44 30 32 0D  0A 20 20 20 20 20 20 20  |A $DD02..       |
00002110: 20 20 53 54 41 20 43 49  41 53 41 56 45 32 2B 31  |  STA CIASAVE2+1|
00002120: 0D 0A 0D 0A 20 20 20 20  20 20 20 20 20 3B 0D 0A  |....         ;..|
00002130: 20 20 20 20 20 20 20 20  20 3B 20 52 45 41 44 20  |         ; READ |
00002140: 44 49 52 45 43 54 49 4F  4E 53 20 4A 4F 59 20 33  |DIRECTIONS JOY 3|
00002150: 2B 4A 4F 59 20 34 0D 0A  20 20 20 20 20 20 20 20  |+JOY 4..        |
00002160: 20 3B 0D 0A 0D 0A 20 20  20 20 20 20 20 20 20 4C  | ;....         L|
00002170: 44 41 20 24 44 44 30 31  20 3B 52 45 41 44 20 43  |DA $DD01 ;READ C|
00002180: 49 41 20 32 20 50 4F 52  54 20 42 0D 0A 20 20 20  |IA 2 PORT B..   |
00002190: 20 20 20 20 20 20 53 54  41 20 54 45 4D 50 2B 31  |      STA TEMP+1|
000021A0: 0D 0A 0D 0A 20 20 20 20  20 20 20 20 20 41 4E 44  |....         AND|
000021B0: 20 23 24 30 46 0D 0A 20  20 20 20 20 20 20 20 20  | #$0F..         |
000021C0: 53 54 41 20 4A 4F 59 33  52 45 47 0D 0A 0D 0A 54  |STA JOY3REG....T|
000021D0: 45 4D 50 20 20 20 20 20  4C 44 41 20 23 24 30 30  |EMP     LDA #$00|
000021E0: 0D 0A 20 20 20 20 20 20  20 20 20 4C 53 52 20 41  |..         LSR A|
000021F0: 0D 0A 20 20 20 20 20 20  20 20 20 4C 53 52 20 41  |..         LSR A|
00002200: 0D 0A 20 20 20 20 20 20  20 20 20 4C 53 52 20 41  |..         LSR A|
00002210: 0D 0A 20 20 20 20 20 20  20 20 20 4C 53 52 20 41  |..         LSR A|
00002220: 0D 0A 20 20 20 20 20 20  20 20 20 53 54 41 20 4A  |..         STA J|
00002230: 4F 59 34 52 45 47 0D 0A  0D 0A 20 20 20 20 20 20  |OY4REG....      |
00002240: 20 20 20 3B 0D 0A 20 20  20 20 20 20 20 20 20 3B  |   ;..         ;|
00002250: 20 52 45 41 44 20 42 55  54 54 4F 4E 20 4A 4F 59  | READ BUTTON JOY|
00002260: 20 33 0D 0A 20 20 20 20  20 20 20 20 20 3B 0D 0A  | 3..         ;..|
00002270: 0D 0A 20 20 20 20 20 20  20 20 20 4C 44 41 20 24  |..         LDA $|
00002280: 44 44 30 32 20 20 20 20  20 20 3B 43 49 41 20 32  |DD02      ;CIA 2|
00002290: 20 50 4F 52 54 20 41 0D  0A 20 20 20 20 20 20 20  | PORT A..       |
000022A0: 20 20 41 4E 44 20 23 25  31 31 31 31 31 30 31 31  |  AND #%11111011|
000022B0: 20 3B 44 41 54 41 20 44  49 52 45 43 54 49 4F 4E  | ;DATA DIRECTION|
000022C0: 0D 0A 20 20 20 20 20 20  20 20 20 53 54 41 20 24  |..         STA $|
000022D0: 44 44 30 32 20 20 20 20  20 20 3B 3D 3E 20 42 49  |DD02      ;=> BI|
000022E0: 54 20 32 20 49 4E 50 55  54 0D 0A 0D 0A 20 20 20  |T 2 INPUT....   |
000022F0: 20 20 20 20 20 20 4C 44  41 20 24 44 44 30 30 20  |      LDA $DD00 |
00002300: 20 20 20 20 20 3B 52 45  41 44 20 43 49 41 20 32  |     ;READ CIA 2|
00002310: 20 50 2E 41 0D 0A 20 20  20 20 20 20 20 20 20 41  | P.A..         A|
00002320: 4E 44 20 23 25 30 30 30  30 30 31 30 30 20 3B 43  |ND #%00000100 ;C|
00002330: 48 45 43 4B 20 42 49 54  20 32 0D 0A 20 20 20 20  |HECK BIT 2..    |
00002340: 20 20 20 20 20 41 53 4C  20 41 0D 0A 20 20 20 20  |     ASL A..    |
00002350: 20 20 20 20 20 41 53 4C  20 41 0D 0A 20 20 20 20  |     ASL A..    |
00002360: 20 20 20 20 20 4F 52 41  20 4A 4F 59 33 52 45 47  |     ORA JOY3REG|
00002370: 0D 0A 20 20 20 20 20 20  20 20 20 53 54 41 20 4A  |..         STA J|
00002380: 4F 59 33 52 45 47 0D 0A  0D 0A 20 20 20 20 20 20  |OY3REG....      |
00002390: 20 20 20 3B 0D 0A 20 20  20 20 20 20 20 20 20 3B  |   ;..         ;|
000023A0: 20 52 45 41 44 20 42 55  54 54 4F 4E 20 4A 4F 59  | READ BUTTON JOY|
000023B0: 20 34 0D 0A 20 20 20 20  20 20 20 20 20 3B 0D 0A  | 4..         ;..|
000023C0: 0D 0A 20 20 20 20 20 20  20 20 20 4C 44 41 20 23  |..         LDA #|
000023D0: 24 46 46 20 3B 53 45 52  49 41 4C 20 44 41 54 41  |$FF ;SERIAL DATA|
000023E0: 20 52 45 47 49 53 54 45  52 0D 0A 20 20 20 20 20  | REGISTER..     |
000023F0: 20 20 20 20 53 54 41 20  24 44 43 30 43 3B 3D 3E  |    STA $DC0C;=>|
00002400: 20 57 52 49 54 49 4E 47  20 24 46 46 20 43 41 55  | WRITING $FF CAU|
00002410: 53 45 53 0D 0A 20 20 20  20 20 20 20 20 20 20 20  |SES..           |
00002420: 20 20 20 20 20 20 20 3B  43 49 41 20 54 4F 20 4F  |       ;CIA TO O|
00002430: 55 54 50 55 54 20 53 4F  4D 45 0D 0A 20 20 20 20  |UTPUT SOME..    |
00002440: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 3B 43  |              ;C|
00002450: 4F 55 4E 54 20 53 49 47  4E 41 4C 53 20 41 54 20  |OUNT SIGNALS AT |
00002460: 43 4E 54 31 0D 0A 0D 0A  20 20 20 20 20 20 20 20  |CNT1....        |
00002470: 20 4C 44 41 20 24 44 44  30 43 20 3B 52 45 41 44  | LDA $DD0C ;READ|
00002480: 20 43 49 41 20 32 20 53  45 52 49 41 4C 20 49 4E  | CIA 2 SERIAL IN|
00002490: 0D 0A 20 20 20 20 20 20  20 20 20 42 45 51 20 46  |..         BEQ F|
000024A0: 49 52 45 20 20 3B 42 55  54 54 4F 4E 20 50 52 45  |IRE  ;BUTTON PRE|
000024B0: 53 53 20 49 46 20 5A 45  52 4F 0D 0A 0D 0A 20 20  |SS IF ZERO....  |
000024C0: 20 20 20 20 20 20 20 4C  44 41 20 4A 4F 59 34 52  |       LDA JOY4R|
000024D0: 45 47 0D 0A 20 20 20 20  20 20 20 20 20 4F 52 41  |EG..         ORA|
000024E0: 20 23 25 30 30 30 31 30  30 30 30 0D 0A 20 20 20  | #%00010000..   |
000024F0: 20 20 20 20 20 20 53 54  41 20 4A 4F 59 34 52 45  |      STA JOY4RE|
00002500: 47 0D 0A 0D 0A 46 49 52  45 0D 0A 0D 0A 20 20 20  |G....FIRE....   |
00002510: 20 20 20 20 20 20 3B 0D  0A 20 20 20 20 20 20 20  |      ;..       |
00002520: 20 20 3B 20 52 45 53 54  4F 52 45 20 43 49 41 20  |  ; RESTORE CIA |
00002530: 32 20 52 45 47 49 53 54  45 52 53 0D 0A 20 20 20  |2 REGISTERS..   |
00002540: 20 20 20 20 20 20 3B 0D  0A 0D 0A 43 49 41 53 41  |      ;....CIASA|
00002550: 56 45 31 20 4C 44 41 20  23 24 30 30 0D 0A 20 20  |VE1 LDA #$00..  |
00002560: 20 20 20 20 20 20 20 53  54 41 20 24 44 44 30 30  |       STA $DD00|
00002570: 0D 0A 43 49 41 53 41 56  45 32 20 4C 44 41 20 23  |..CIASAVE2 LDA #|
00002580: 24 30 30 0D 0A 20 20 20  20 20 20 20 20 20 53 54  |$00..         ST|
00002590: 41 20 24 44 44 30 32 0D  0A 0D 0A 20 20 20 20 20  |A $DD02....     |
000025A0: 20 20 20 20 52 54 53 0D  0A 0D 0A 3B 2D 2D 2D 2D  |    RTS....;----|
000025B0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
000025C0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
000025D0: 2D 2D 2D 0D 0A 53 45 54  55 50 0D 0A 3B 2D 2D 2D  |---..SETUP..;---|
000025E0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
000025F0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00002600: 2D 2D 2D 2D 0D 0A 3B 57  41 52 4E 49 4E 47 3A 20  |----..;WARNING: |
00002610: 44 4F 20 4E 4F 54 20 4D  45 53 53 20 41 52 4F 55  |DO NOT MESS AROU|
00002620: 4E 44 20 57 49 54 48 20  54 48 49 53 0D 0A 3B 20  |ND WITH THIS..; |
00002630: 20 20 20 20 20 20 20 20  55 4E 4C 45 53 53 20 59  |        UNLESS Y|
00002640: 4F 55 20 52 45 41 4C 4C  59 20 4B 4E 4F 57 20 57  |OU REALLY KNOW W|
00002650: 48 41 54 0D 0A 3B 20 20  20 20 20 20 20 20 20 59  |HAT..;         Y|
00002660: 4F 55 20 41 52 45 20 44  4F 49 4E 47 21 20 57 52  |OU ARE DOING! WR|
00002670: 4F 4E 47 20 43 49 41 20  53 45 54 55 50 0D 0A 3B  |ONG CIA SETUP..;|
00002680: 20 20 20 20 20 20 20 20  20 4D 41 59 20 54 4F 41  |         MAY TOA|
00002690: 53 54 20 59 4F 55 52 20  43 49 41 27 53 20 21 0D  |ST YOUR CIA'S !.|
000026A0: 0A 3B 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |.;--------------|
000026B0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
000026C0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 0D 0A 0D 0A 20 20 20  |---------....   |
000026D0: 20 20 20 20 20 20 3B 0D  0A 20 20 20 20 20 20 20  |      ;..       |
000026E0: 20 20 3B 20 43 49 41 20  32 20 53 45 54 55 50 0D  |  ; CIA 2 SETUP.|
000026F0: 0A 20 20 20 20 20 20 20  20 20 3B 0D 0A 0D 0A 20  |.         ;.... |
00002700: 20 20 20 20 20 20 20 20  4C 44 41 20 23 24 30 30  |        LDA #$00|
00002710: 20 20 3B 20 50 4F 52 54  20 42 20 44 49 52 45 43  |  ; PORT B DIREC|
00002720: 54 49 4F 4E 0D 0A 20 20  20 20 20 20 20 20 20 53  |TION..         S|
00002730: 54 41 20 24 44 44 30 33  20 3B 20 3D 3E 20 49 4E  |TA $DD03 ; => IN|
00002740: 50 55 54 0D 0A 0D 0A 20  20 20 20 20 20 20 20 20  |PUT....         |
00002750: 4C 44 41 20 23 24 30 31  0D 0A 20 20 20 20 20 20  |LDA #$01..      |
00002760: 20 20 20 53 54 41 20 24  44 44 30 34 20 3B 20 54  |   STA $DD04 ; T|
00002770: 49 4D 45 52 20 41 20 4C  4F 57 42 59 54 45 0D 0A  |IMER A LOWBYTE..|
00002780: 20 20 20 20 20 20 20 20  20 4C 44 41 20 23 24 30  |         LDA #$0|
00002790: 30 0D 0A 20 20 20 20 20  20 20 20 20 53 54 41 20  |0..         STA |
000027A0: 24 44 44 30 35 20 3B 20  54 49 4D 45 52 20 41 20  |$DD05 ; TIMER A |
000027B0: 48 49 47 48 42 59 54 45  0D 0A 0D 0A 20 20 20 20  |HIGHBYTE....    |
000027C0: 20 20 20 20 20 4C 44 41  20 23 25 30 30 30 31 30  |     LDA #%00010|
000027D0: 30 30 31 0D 0A 20 20 20  20 20 20 20 20 20 53 54  |001..         ST|
000027E0: 41 20 24 44 44 30 45 20  3B 20 43 4F 4E 54 52 4F  |A $DD0E ; CONTRO|
000027F0: 4C 20 52 45 47 49 53 54  45 52 20 41 0D 0A 20 20  |L REGISTER A..  |
00002800: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002810: 20 3B 20 54 49 4D 45 52  3A 20 53 54 41 52 54 0D  | ; TIMER: START.|
00002820: 0A 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00002830: 20 20 20 20 3B 20 20 20  20 20 20 20 20 43 4F 4E  |    ;        CON|
00002840: 54 49 4E 4F 55 53 0D 0A  20 20 20 20 20 20 20 20  |TINOUS..        |
00002850: 20 20 20 20 20 20 20 20  20 20 20 3B 20 20 20 20  |           ;    |
00002860: 20 20 20 20 46 4F 52 43  45 44 20 4C 4F 41 44 0D  |    FORCED LOAD.|
00002870: 0A 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |.               |
00002880: 20 20 20 20 3B 20 53 45  52 49 41 4C 20 50 4F 52  |    ; SERIAL POR|
00002890: 54 3A 20 49 4E 50 55 54  0D 0A 0D 0A 20 20 20 20  |T: INPUT....    |
000028A0: 20 20 20 20 20 3B 0D 0A  20 20 20 20 20 20 20 20  |     ;..        |
000028B0: 20 3B 20 43 49 41 20 31  20 53 45 54 55 50 0D 0A  | ; CIA 1 SETUP..|
000028C0: 20 20 20 20 20 20 20 20  20 3B 0D 0A 0D 0A 20 20  |         ;....  |
000028D0: 20 20 20 20 20 20 20 4C  44 41 20 23 24 30 31 0D  |       LDA #$01.|
000028E0: 0A 20 20 20 20 20 20 20  20 20 53 54 41 20 24 44  |.         STA $D|
000028F0: 43 30 34 20 3B 20 54 49  4D 45 52 20 41 20 4C 4F  |C04 ; TIMER A LO|
00002900: 57 42 59 54 45 0D 0A 20  20 20 20 20 20 20 20 20  |WBYTE..         |
00002910: 4C 44 41 20 23 24 30 30  0D 0A 20 20 20 20 20 20  |LDA #$00..      |
00002920: 20 20 20 53 54 41 20 24  44 43 30 35 20 3B 20 54  |   STA $DC05 ; T|
00002930: 49 4D 45 52 20 41 20 48  49 47 48 42 59 54 45 0D  |IMER A HIGHBYTE.|
00002940: 0A 0D 0A 20 20 20 20 20  20 20 20 20 4C 44 41 20  |...         LDA |
00002950: 23 25 30 31 30 31 30 30  30 31 0D 0A 20 20 20 20  |#%01010001..    |
00002960: 20 20 20 20 20 53 54 41  20 24 44 43 30 45 20 3B  |     STA $DC0E ;|
00002970: 20 43 4F 4E 54 52 4F 4C  20 52 45 47 49 53 54 45  | CONTROL REGISTE|
00002980: 52 20 41 0D 0A 20 20 20  20 20 20 20 20 20 20 20  |R A..           |
00002990: 20 20 20 20 20 20 20 20  3B 20 54 49 4D 45 52 3A  |        ; TIMER:|
000029A0: 20 53 54 41 52 54 0D 0A  20 20 20 20 20 20 20 20  | START..        |
000029B0: 20 20 20 20 20 20 20 20  20 20 20 3B 20 20 20 20  |           ;    |
000029C0: 20 20 20 20 43 4F 4E 54  49 4E 4F 55 53 0D 0A 20  |    CONTINOUS.. |
000029D0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000029E0: 20 20 3B 20 20 20 20 20  20 20 20 46 4F 52 43 45  |  ;        FORCE|
000029F0: 44 20 4C 4F 41 44 0D 0A  20 20 20 20 20 20 20 20  |D LOAD..        |
00002A00: 20 20 20 20 20 20 20 20  20 20 20 3B 20 53 45 52  |           ; SER|
00002A10: 49 41 4C 20 50 4F 52 54  3A 20 4F 55 54 50 55 54  |IAL PORT: OUTPUT|
00002A20: 0D 0A 0D 0A 20 20 20 20  20 20 20 20 20 4C 44 41  |....         LDA|
00002A30: 20 23 24 46 46 20 3B 53  45 52 49 41 4C 20 44 41  | #$FF ;SERIAL DA|
00002A40: 54 41 20 52 45 47 49 53  54 45 52 0D 0A 20 20 20  |TA REGISTER..   |
00002A50: 20 20 20 20 20 20 53 54  41 20 24 44 43 30 43 3B  |      STA $DC0C;|
00002A60: 3D 3E 20 57 52 49 54 49  4E 47 20 24 46 46 20 43  |=> WRITING $FF C|
00002A70: 41 55 53 45 53 0D 0A 20  20 20 20 20 20 20 20 20  |AUSES..         |
00002A80: 20 20 20 20 20 20 20 20  20 3B 43 49 41 20 54 4F  |         ;CIA TO|
00002A90: 20 4F 55 54 50 55 54 20  53 4F 4D 45 0D 0A 20 20  | OUTPUT SOME..  |
00002AA0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00002AB0: 3B 43 4F 55 4E 54 20 53  49 47 4E 41 4C 53 20 41  |;COUNT SIGNALS A|
00002AC0: 54 20 43 4E 54 31 0D 0A  20 20 20 20 20 20 20 20  |T CNT1..        |
00002AD0: 20 52 54 53 0D 0A 0D 0A  0D 0A 3B 2D 2D 2D 2D 2D  | RTS......;-----|
00002AE0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00002AF0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00002B00: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00002B10: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 2D 2D 2D  |----------------|
00002B20: 2D 2D 2D 2D 2D 2D 2D 2D  2D 0D 0A 0D 0A 4B 4E 4F  |---------....KNO|
00002B30: 57 4E 20 50 52 4F 42 4C  45 4D 53 3A 0D 0A 2D 2D  |WN PROBLEMS:..--|
00002B40: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 2D 2D 0D 0A 0D  |-------------...|
00002B50: 0A 54 48 45 52 45 20 49  53 2C 20 48 4F 57 45 56  |.THERE IS, HOWEV|
00002B60: 45 52 2C 20 53 4F 4D 45  20 4D 49 4E 4F 52 20 50  |ER, SOME MINOR P|
00002B70: 52 4F 42 4C 45 4D 20 57  49 54 48 20 50 52 4F 47  |ROBLEM WITH PROG|
00002B80: 52 41 4D 4D 49 4E 47 20  41 20 47 41 4D 45 20 54  |RAMMING A GAME T|
00002B90: 48 41 54 20 53 55 50 50  4F 52 54 53 20 54 48 45  |HAT SUPPORTS THE|
00002BA0: 0D 0A 41 44 41 50 54 45  52 2E 20 49 54 20 49 53  |..ADAPTER. IT IS|
00002BB0: 2C 20 54 48 41 54 20 49  46 20 54 48 45 20 41 44  |, THAT IF THE AD|
00002BC0: 41 50 54 45 52 20 49 53  20 4E 4F 54 20 43 4F 4E  |APTER IS NOT CON|
00002BD0: 4E 45 43 54 45 44 20 54  4F 20 54 48 45 20 43 36  |NECTED TO THE C6|
00002BE0: 34 2C 20 54 48 45 20 43  4F 44 45 20 41 53 0D 0A  |4, THE CODE AS..|
00002BF0: 53 48 4F 57 4E 20 48 45  52 45 20 57 49 4C 4C 20  |SHOWN HERE WILL |
00002C00: 41 4C 57 41 59 53 20 52  45 50 4F 52 54 20 46 49  |ALWAYS REPORT FI|
00002C10: 52 45 20 4F 4E 20 4A 4F  59 34 20 50 52 45 53 53  |RE ON JOY4 PRESS|
00002C20: 45 44 2E 20 53 4F 20 49  46 20 59 4F 55 20 57 41  |ED. SO IF YOU WA|
00002C30: 4E 54 20 59 4F 55 52 20  47 41 4D 45 20 54 4F 0D  |NT YOUR GAME TO.|
00002C40: 0A 57 4F 52 4B 20 57 49  54 48 4F 55 54 20 54 48  |.WORK WITHOUT TH|
00002C50: 45 20 41 44 41 50 54 45  52 20 41 53 57 45 4C 4C  |E ADAPTER ASWELL|
00002C60: 2C 20 59 4F 55 20 4E 45  45 44 20 41 20 55 53 45  |, YOU NEED A USE|
00002C70: 52 2D 49 4E 54 45 52 41  43 54 49 56 45 20 4F 50  |R-INTERACTIVE OP|
00002C80: 54 49 4F 4E 20 54 4F 20  53 57 49 54 43 48 0D 0A  |TION TO SWITCH..|
00002C90: 54 48 45 20 41 44 41 50  54 45 52 2D 52 45 41 44  |THE ADAPTER-READ|
00002CA0: 49 4E 47 20 43 4F 44 45  20 4F 46 46 2E 20 28 4F  |ING CODE OFF. (O|
00002CB0: 52 20 49 47 4E 4F 52 45  20 57 48 41 54 20 49 54  |R IGNORE WHAT IT|
00002CC0: 20 52 45 50 4F 52 54 53  20 52 45 53 50 45 43 54  | REPORTS RESPECT|
00002CD0: 49 56 4C 59 2E 20 41 4C  53 4F 2C 0D 0A 59 4F 55  |IVLY. ALSO,..YOU|
00002CE0: 20 53 48 4F 55 4C 44 4E  54 20 55 53 45 20 46 49  | SHOULDNT USE FI|
00002CF0: 52 45 20 4F 4E 20 4A 4F  59 20 34 20 49 4E 20 4D  |RE ON JOY 4 IN M|
00002D00: 45 4E 55 53 20 4F 52 20  53 55 43 48 20 54 48 49  |ENUS OR SUCH THI|
00002D10: 4E 47 53 20 4C 49 4B 45  20 27 53 54 41 52 54 20  |NGS LIKE 'START |
00002D20: 47 41 4D 45 27 20 49 46  0D 0A 54 48 45 52 45 20  |GAME' IF..THERE |
00002D30: 49 53 4E 54 20 41 20 57  41 59 20 54 4F 20 53 57  |ISNT A WAY TO SW|
00002D40: 49 54 43 48 20 54 48 45  20 41 44 41 50 54 45 52  |ITCH THE ADAPTER|
00002D50: 20 4F 46 46 20 42 45 46  4F 52 45 20 28 54 48 45  | OFF BEFORE (THE|
00002D60: 20 47 41 4D 45 20 57 4F  55 4C 44 20 42 45 20 55  | GAME WOULD BE U|
00002D70: 4E 55 53 45 41 42 4C 45  0D 0A 57 49 54 48 4F 55  |NUSEABLE..WITHOU|
00002D80: 54 20 54 48 45 20 41 44  41 50 54 45 52 29 2E 0D  |T THE ADAPTER)..|
00002D90: 0A 0D 0A 4C 41 53 54 20  57 4F 52 44 53 3A 0D 0A  |...LAST WORDS:..|
00002DA0: 2D 2D 2D 2D 2D 2D 2D 2D  2D 2D 2D 0D 0A 0D 0A 57  |-----------....W|
00002DB0: 49 54 48 20 54 48 49 53  20 54 48 49 4E 47 20 57  |ITH THIS THING W|
00002DC0: 45 20 48 4F 50 45 20 54  4F 20 4D 4F 54 49 56 41  |E HOPE TO MOTIVA|
00002DD0: 54 45 20 53 4F 4D 45 20  4D 4F 52 45 20 50 45 4F  |TE SOME MORE PEO|
00002DE0: 50 4C 45 20 54 4F 20 44  45 56 45 4C 4F 50 20 4D  |PLE TO DEVELOP M|
00002DF0: 55 4C 54 49 2D 50 4C 41  59 45 52 0D 0A 43 41 50  |ULTI-PLAYER..CAP|
00002E00: 41 42 4C 45 20 47 41 4D  45 53 20 46 4F 52 20 4F  |ABLE GAMES FOR O|
00002E10: 55 52 20 42 45 4C 4F 56  45 44 20 4D 41 43 48 49  |UR BELOVED MACHI|
00002E20: 4E 45 2E 20 53 45 56 45  52 41 4C 20 47 41 4D 45  |NE. SEVERAL GAME|
00002E30: 20 43 4F 4E 43 45 50 54  53 20 44 4F 20 4A 55 53  | CONCEPTS DO JUS|
00002E40: 54 20 43 52 59 20 46 4F  52 0D 0A 41 4E 20 45 58  |T CRY FOR..AN EX|
00002E50: 50 41 4E 53 49 4F 4E 20  4C 49 4B 45 20 54 48 49  |PANSION LIKE THI|
00002E60: 53 21 20 49 54 27 53 20  55 50 20 54 4F 20 59 4F  |S! IT'S UP TO YO|
00002E70: 55 20 4E 4F 57 2E 2E 2E  20 4D 41 59 20 49 54 20  |U NOW... MAY IT |
00002E80: 42 45 20 50 41 54 43 48  49 4E 47 20 45 58 49 53  |BE PATCHING EXIS|
00002E90: 54 49 4E 47 0D 0A 47 41  4D 45 53 20 28 4C 49 4B  |TING..GAMES (LIK|
00002EA0: 45 20 41 4C 4C 20 54 48  4F 53 45 20 52 4F 55 4E  |E ALL THOSE ROUN|
00002EB0: 44 2D 42 41 53 45 44 20  53 50 4F 52 54 20 47 41  |D-BASED SPORT GA|
00002EC0: 4D 45 53 20 46 4F 52 20  45 58 41 4D 50 4C 45 29  |MES FOR EXAMPLE)|
00002ED0: 20 4F 52 20 43 52 45 41  54 49 4E 47 0D 0A 41 53  | OR CREATING..AS|
00002EE0: 54 4F 4E 49 53 48 49 4E  47 20 4E 45 57 20 4F 4E  |TONISHING NEW ON|
00002EF0: 45 53 20 46 52 4F 4D 20  53 43 52 41 54 43 48 2E  |ES FROM SCRATCH.|
00002F00: 0D 0A 0D 0A 20 20 20 20  20 20 20 20 20 20 20 20  |....            |
00002F10: 20 20 22 49 4D 41 47 49  4E 41 54 49 4F 4E 20 49  |  "IMAGINATION I|
00002F20: 53 20 4D 4F 52 45 20 49  4D 50 4F 52 54 41 4E 54  |S MORE IMPORTANT|
00002F30: 20 54 48 41 4E 20 4B 4E  4F 57 4C 45 44 47 45 2E  | THAN KNOWLEDGE.|
00002F40: 22 20 28 41 4C 42 45 52  54 20 45 49 4E 53 54 45  |" (ALBERT EINSTE|
00002F50: 49 4E 29 0D 0A 0D 0A 43  52 45 44 49 54 53 3A 0D  |IN)....CREDITS:.|
00002F60: 0A 2D 2D 2D 2D 2D 2D 2D  2D 0D 0A 0D 0A 47 52 4F  |.--------....GRO|
00002F70: 45 50 41 5A 2F 48 49 54  4D 45 4E 20 20 20 20 20  |EPAZ/HITMEN     |
00002F80: 20 20 20 20 20 20 20 20  20 20 20 20 3A 20 48 41  |            : HA|
00002F90: 52 44 57 41 52 45 20 53  50 41 4E 4B 49 4E 47 2C  |RDWARE SPANKING,|
00002FA0: 20 54 48 49 53 20 44 4F  43 55 4D 45 4E 54 0D 0A  | THIS DOCUMENT..|
00002FB0: 54 48 4F 4D 41 53 20 4B  4F 4E 43 49 4E 41 2F 44  |THOMAS KONCINA/D|
00002FC0: 49 47 49 54 41 4C 20 45  58 43 45 53 53 20 20 3A  |IGITAL EXCESS  :|
00002FD0: 20 43 4F 44 49 4E 47 2C  20 4D 45 4E 54 41 4C 20  | CODING, MENTAL |
00002FE0: 53 55 50 50 4F 52 54 0D  0A 42 4A 4F 45 52 4E 20  |SUPPORT..BJOERN |
00002FF0: 4F 44 45 4E 44 41 48 4C  2F 44 49 47 49 54 41 4C  |ODENDAHL/DIGITAL|
00003000: 20 45 58 43 45 53 53 20  3A 20 54 45 53 54 20 41  | EXCESS : TEST A|
00003010: 50 50 4C 49 43 41 54 49  4F 4E 20 47 52 41 50 48  |PPLICATION GRAPH|
00003020: 49 43 53 2C 20 52 45 4C  45 41 53 45 20 50 41 43  |ICS, RELEASE PAC|
00003030: 4B 41 47 49 4E 47 0D 0A  0D 0A 43 4F 4E 54 41 43  |KAGING....CONTAC|
00003040: 54 3A 0D 0A 2D 2D 2D 2D  2D 2D 2D 2D 0D 0A 0D 0A  |T:..--------....|
00003050: 47 52 4F 45 50 41 5A 2F  48 49 54 4D 45 4E 20 20  |GROEPAZ/HITMEN  |
00003060: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 3A  |               :|
00003070: 20 47 52 4F 45 50 41 5A  40 47 4D 58 2E 4E 45 54  | GROEPAZ@GMX.NET|
00003080: 0D 0A 42 4A 4F 45 52 4E  20 4F 44 45 4E 44 41 48  |..BJOERN ODENDAH|
00003090: 4C 2F 44 49 47 49 54 41  4C 20 45 58 43 45 53 53  |L/DIGITAL EXCESS|
000030A0: 20 3A 20 53 45 56 45 4E  40 43 52 59 50 54 2E 52  | : SEVEN@CRYPT.R|
000030B0: 55 48 52 2E 44 45 0D 0A                           |UHR.DE..        |
----------------------------------------
---------------------------------------.
.      ***   THE DIGITAL EXCESS & HITMEN
 4-PLAYER JOYSTICK ADAPTER  ***....   OR
 "4 PLAYERS WITH EASE - HOW SMART PROGRA
MMING CAN SUBSTITUTE HARDWARE"..--------
----------------------------------------
-------------------------------....CONTE
NTS:..---------....- CHANGES LOG..- PREL
UDE..- HOW IT WORKS..- PARTS LIST..- SHE
MATICS..- SAMPLE CODE..- KNOWN PROBLEMS.
.- LAST WORDS..- CREDITS..- CONTACT ADRE
SS......CHANGES:..--------....V1.2:     
  - SAMPLE CODE CLEANUP....V1.1:       -
 SAMPLE CODE UPDATED..            - ADDE
D FLOW-OF-DATA TO THE SHEMATICS FOR THOS
E WHO ARE INTERISTED..            - ADDE
D COMMENT ON KNOWN PROBLEMS....V1.2 PREL
UDE..------------....CLEANED UP THE SAMP
LE CODE, FIXING A MINOR BUG.....V1.1 PRE
LUDE..------------....HOWDY! CHEERS FOR 
THE COMMENTS AND SUGGESTIONS I GOT IN MA
IL. THIS IS WHAT..ACTUALLY MADE ME PUTTI
NG OUT THIS UPDATE - THE ADDITIONAL INFO
 COULD BE..INTERISTING FOR YOU ASWELL...
..V1.0 PRELUDE..------------....AT MEKKA
 SYMPOSIUM 99 WE TOOK A LOOK AT THE 4-PL
AYER ADAPTER THAT IS SUPPORTED..BY THE G
AME "BOMB MANIA". THOMAS AND BJOERN HAD 
STARTED WORKING ON THEIR..PROJECT "DETON
ATORS 2" A WHILE AGO AND THE MULTI-PLAYE
R ABILITY WAS PUT ON THE.."MUST HAVE" LI
ST. HOWEVER, AFTER WE CRACKED UP THE THI
NG WE NOTICED THAT THIS..PARTICULAR ADAP
TER NEEDED SOME ELECTRONIC COMPONENTS TO
 WORK AND BECAUSE OF..THAT IT WAS NOT RE
ALLY SUITABLE FOR THE AVERAGE SCENER TO 
BUILT ON HIS OWN. WE..ALMOST FORGOT ABOU
T THE IDEA OF CREATING A 4 PLAYERS THING
Y, UNTIL WE MET AGAIN..AT THE END OF NOV
EMBER 99. HAVING NO DECENT DOCUMENTATION
 EXCEPT SOME SCANNED..C64 SHEMATICS AND 
SOME IO-MAP IT WAS QUITE A HAZZLE TO KNO
CK IT UP SINCE WE HAD..TO DISCOVER A FEW
 (PROBABLY WELL KNOWN) THINGS OURSELVES,
 BUT WE FINALLY WORKED..IT OUT. HERE IT 
IS, EASY TO BUILT FOR EVERYONE - AND DOC
UMENTED ASWELL.....TAKE THIS AS OUR CHRI
STMAS PRESENT FOR YOU - SINCE IT IS CHRI
STMAS ANYWAY,..SPEND YOUR TIME ON SOMETH
ING USEFUL AND DO SOME CHRISTMASSY HANDI
CRAFT WORK.....HOW IT WORKS..-----------
-....TO INTERFACE 2 ADDITIONAL JOYSTICKS
 WE HAD TO FIND 10 ADDITIONAL INPUT-LINE
S..ON THE C64. SINCE WE WANTED TO CREATE
 SOMETHING THAT IS BOTH CHEAP AND COULD.
.BE BUILT BY PEOPLE WITH VERY LITTLE (IF
 NOT NONE) SOLDERING EXPERIENCE, WE..LIM
ITED OURSELVES TO JUST USING PLUGS AND W
IRES. WE LOOKED AT THE USER-PORT..AND FO
UND 8 LINES AT THE FIRST GLANCE - PORT B
 OF CIA 2 - WHICH WERE USED TO..CONNECT 
THE 4 DIRECTIONAL LINES OF EACH JOYSTICK
. FINDING 2 MORE LINES FOR..THE BUTTONS 
WAS A LITTLE MORE TRICKY. IF YOU LOOK CL
OSER AT THE USER-PORT,..YOU WILL NOTICE 
THAT BIT 2 OF CIA 2 PORT A IS CONNECTED 
TO IT ASWELL, SO..THERE IS JUST ONE OTHE
R LINE LEFT TO FIND - WHICH TURNED OUT T
O BE THE MOST..CHALLENGING PART OF IT AL
L. WHAT WE DID IS ABUSING THE SYNCHRONOU
S SERIAL..DATA REGISTER OF CIA 2, WHICH 
IS ALSO AVAILABLE AT THE USER-PORT. TO M
AKE..THIS WORK WE HAD TO LET CIA 1 OUTPU
T A COUNTER-SIGNAL AT THE CORRESPONDING.
.USER-PORT PIN AND WE FED THAT SIGNAL BA
CK INTO CIA 2 SERIAL-COUNTER. NOW BY..US
ING THE MAXIMUM COUNTER-SPEED POSSIBLE, 
WE COULD USE THE SYNCHRONOUS..SERIAL REG
ISTER OF CIA 2 AS ANOTHER 'DIGITAL' INPU
T LINE AND BINGO - THERE..WE ARE........
PARTS LIST..----------....AMOUNT  WHAT? 
                 WE FOUND IT AT         
     COSTS....   1    USER PORT PLUG    
     (CONRAD ELECTRONIC 742201)  3.95 DM
..   2    SUB-D 9PIN PLUG, MALE  (CONRAD
 ELECTRONIC 742066)  0.85 DM EACH..     
   SOME WIRES             RIP OFF SOMEWH
ERE             ?..        CASE (OPTIONA
L)        OLD CARTRIDGE                 
?....                                   
           TOTAL COSTS: 5.65 DM....ANYON
E SHOULD BE ABLE TO ASSEMBLE EVERYTHING 
IN LESS THAN AN HOUR.....THE SHEMATICS:.
.--------------....DON'T PANIC! :P THE -
->-- /  --<-- SYMBOLS DO JUST MARK THE D
IRECTION THE DATA..IS FLOWING! =)....USE
R PORT                     JOYSTICKS..--
-------                     ---------...
.GND     1 ---------------+--- 8  JOY 3 
 GND..CNT1    4 ->-+           +--- 8  J
OY 4  GND..CNT2    6 -<-+..SP2     7 ---
-------<-------- 6  JOY 4  BUTTON..PB0  
   C ----------<-------- 1  JOY 3  A0..P
B1     D ----------<-------- 2  JOY 3  A
1..PB2     E ----------<-------- 3  JOY 
3  A2..PB3     F ----------<-------- 4  
JOY 3  A3..PB4     H ----------<--------
 1  JOY 4  A0..PB5     J ----------<----
---- 2  JOY 4  A1..PB6     K ----------<
-------- 3  JOY 4  A2..PB7     L -------
---<-------- 4  JOY 4  A3..PA2     M ---
-------<-------- 6  JOY 3  BUTTON....NOT
E: GND IS CONNECTED TO BOTH JOY3/JOY4 GN
D - ASWELL CNT1 AND CNT2 ARE BRIDGED..  
    (SHAME THERE ARE NO DECENT GFX CHARA
CTERS IN ASCII :P)....USER PORT PLUG (BA
CK VIEW - SOLDERING SIDE)..-------------
------------------------------....      
                     (TOP)..+----+------
----------------------------------------
-+----+..|    | 1   2   3   4   5   6   
7   8   9  10  11  12 |    |..| ++ |    
                                        
   | ++ |..| ++ |                       
                        | ++ |..|    | A
   B   C   D   E   F   H   J   K   L   M
   N |    |..+----+---------------------
--------------------------+----+..      
                    (BOTTOM)....JOYSTICK
 PORT PLUG (BACK VIEW - SOLDERING SIDE).
.---------------------------------------
--------....              (TOP).. ---\--
---------------------/---.. |   \  5   4
   3   2   1  /   |.. | *  \            
       /  * |.. |     \  9   8   7   6  
/     |.. -------\---------------/------
-..             (BOTTOM)....SAMPLE CODE 
IN TURBO-ASS SYNTAX (SKIP THIS IF YOU CA
N'T CODE *GRIN*)..----------------------
----------------------------------------
------....;-----------------------------
----------..;4 PLAYER ADAPTER SAMPLE COD
E BY GPZ/HIT..;-------------------------
--------------....JOY3REG  = $02  ; EXAM
PLE JOY-REGS..JOY4REG  = $03....BTEMP   
 = $04  ; TEMP FOR DISPLAY....;---------
------------------------------..; MAIN..
;---------------------------------------
....         *= $1000....         ;..   
      ; USUAL IRQ SETUP..         ;.... 
        SEI..         LDA #>IRQ..       
  STA $0315..         LDA #<IRQ..       
  STA $0314..         LDA #$1B..        
 STA $D011..         LDA #$7F..         
STA $DC0D..         LDA #$FF..         S
TA $D012..         LDA #$01..         ST
A $D01A....         ;..         ; PRINT 
INFO..         ;....         LDX #$00..L
OOP     .VAR *..         LDA SCREEN,X.. 
        JSR $FFD2..         INX..       
  CPX #22..         BNE LOOP....        
 JSR SETUP    ; CIA SETUP FOR ADAPTER...
.         CLI....         JMP *....;----
-----------------------------------..; I
NTERUPT CALLS OTHER ROUTINES..;---------
------------------------------..IRQ.... 
        INC $D020....         JSR READ  
 ; READ ADAPTER (TAKES ABOUT 2 RASTERLIN
ES)....         INC $D020....         LD
X #(40*1)+4..         LDA $DC00..       
  JSR DISPLAYBITS....         LDX #(40*2
)+4..         LDA $DC01..         JSR DI
SPLAYBITS....         LDX #(40*3)+4..   
      LDA JOY3REG..         JSR DISPLAYB
ITS....         LDX #(40*4)+4..         
LDA JOY4REG..         JSR DISPLAYBITS...
.         LDA #$00..         STA $D020..
..         INC $D019..         JMP $FEBC
....;-----------------------------------
----..; DISPLAYS 5 LOWEST BITS OF JOYSTI
CK-REG..;-------------------------------
--------..DISPLAYBITS....         ROL A.
.         ROL A..         ROL A....     
    STA BTEMP....         LDY #$00..LOOP
     .VAR *....         ROL BTEMP..     
    BCC SKIP1....         LDA #"-"..    
     JMP SKIP2..SKIP1..         LDA #"*"
..SKIP2..         STA $0400,X....       
  INX..         INY..         CPY #$05..
         BNE LOOP....         RTS....;--
-------------------------------------..S
CREEN..         .TEXT "{CLR/HOME}JOY BRL
DU{RETURN}"..         .TEXT " 1{RETURN}"
..         .TEXT " 2{RETURN}"..         
.TEXT " 3{RETURN}"..         .TEXT " 4{R
ETURN}"....;----------------------------
-----------....;------------------------
---------------..READ..;----------------
-----------------------..; READS ADAPTER
 AND COMPOSES THE..; ADDITIONAL VIRTUAL 
JOYSTICK-REGISTERS..;-------------------
--------------------..;THIS CODE DEMONST
RATES HOW TO READ THE..;ADDITIONAL 2 JOY
STICKS AND HOW TO COM-..;POSE 2 'VIRTUAL
' JOYSTICK-REGISTERS..;THAT CAN BE PROCE
SSED EXACTLY LIKE THE..;USUAL ($DC00/$DC
01) ONES...;----------------------------
-----------..         ;..         ; SAVE
 CIA 2 REGISTERS..         ;....        
 LDA $DD00..         STA CIASAVE1+1..   
      LDA $DD02..         STA CIASAVE2+1
....         ;..         ; READ DIRECTIO
NS JOY 3+JOY 4..         ;....         L
DA $DD01 ;READ CIA 2 PORT B..         ST
A TEMP+1....         AND #$0F..         
STA JOY3REG....TEMP     LDA #$00..      
   LSR A..         LSR A..         LSR A
..         LSR A..         STA JOY4REG..
..         ;..         ; READ BUTTON JOY
 3..         ;....         LDA $DD02    
  ;CIA 2 PORT A..         AND #%11111011
 ;DATA DIRECTION..         STA $DD02    
  ;=> BIT 2 INPUT....         LDA $DD00 
     ;READ CIA 2 P.A..         AND #%000
00100 ;CHECK BIT 2..         ASL A..    
     ASL A..         ORA JOY3REG..      
   STA JOY3REG....         ;..         ;
 READ BUTTON JOY 4..         ;....      
   LDA #$FF ;SERIAL DATA REGISTER..     
    STA $DC0C;=> WRITING $FF CAUSES..   
               ;CIA TO OUTPUT SOME..    
              ;COUNT SIGNALS AT CNT1....
         LDA $DD0C ;READ CIA 2 SERIAL IN
..         BEQ FIRE  ;BUTTON PRESS IF ZE
RO....         LDA JOY4REG..         ORA
 #%00010000..         STA JOY4REG....FIR
E....         ;..         ; RESTORE CIA 
2 REGISTERS..         ;....CIASAVE1 LDA 
#$00..         STA $DD00..CIASAVE2 LDA #
$00..         STA $DD02....         RTS.
...;------------------------------------
---..SETUP..;---------------------------
------------..;WARNING: DO NOT MESS AROU
ND WITH THIS..;         UNLESS YOU REALL
Y KNOW WHAT..;         YOU ARE DOING! WR
ONG CIA SETUP..;         MAY TOAST YOUR 
CIA'S !..;------------------------------
---------....         ;..         ; CIA 
2 SETUP..         ;....         LDA #$00
  ; PORT B DIRECTION..         STA $DD03
 ; => INPUT....         LDA #$01..      
   STA $DD04 ; TIMER A LOWBYTE..        
 LDA #$00..         STA $DD05 ; TIMER A 
HIGHBYTE....         LDA #%00010001..   
      STA $DD0E ; CONTROL REGISTER A..  
                 ; TIMER: START..       
            ;        CONTINOUS..        
           ;        FORCED LOAD..       
            ; SERIAL PORT: INPUT....    
     ;..         ; CIA 1 SETUP..        
 ;....         LDA #$01..         STA $D
C04 ; TIMER A LOWBYTE..         LDA #$00
..         STA $DC05 ; TIMER A HIGHBYTE.
...         LDA #%01010001..         STA
 $DC0E ; CONTROL REGISTER A..           
        ; TIMER: START..                
   ;        CONTINOUS..                 
  ;        FORCED LOAD..                
   ; SERIAL PORT: OUTPUT....         LDA
 #$FF ;SERIAL DATA REGISTER..         ST
A $DC0C;=> WRITING $FF CAUSES..         
         ;CIA TO OUTPUT SOME..          
        ;COUNT SIGNALS AT CNT1..        
 RTS......;-----------------------------
----------------------------------------
---------....KNOWN PROBLEMS:..----------
-----....THERE IS, HOWEVER, SOME MINOR P
ROBLEM WITH PROGRAMMING A GAME THAT SUPP
ORTS THE..ADAPTER. IT IS, THAT IF THE AD
APTER IS NOT CONNECTED TO THE C64, THE C
ODE AS..SHOWN HERE WILL ALWAYS REPORT FI
RE ON JOY4 PRESSED. SO IF YOU WANT YOUR 
GAME TO..WORK WITHOUT THE ADAPTER ASWELL
, YOU NEED A USER-INTERACTIVE OPTION TO 
SWITCH..THE ADAPTER-READING CODE OFF. (O
R IGNORE WHAT IT REPORTS RESPECTIVLY. AL
SO,..YOU SHOULDNT USE FIRE ON JOY 4 IN M
ENUS OR SUCH THINGS LIKE 'START GAME' IF
..THERE ISNT A WAY TO SWITCH THE ADAPTER
 OFF BEFORE (THE GAME WOULD BE UNUSEABLE
..WITHOUT THE ADAPTER).....LAST WORDS:..
-----------....WITH THIS THING WE HOPE T
O MOTIVATE SOME MORE PEOPLE TO DEVELOP M
ULTI-PLAYER..CAPABLE GAMES FOR OUR BELOV
ED MACHINE. SEVERAL GAME CONCEPTS DO JUS
T CRY FOR..AN EXPANSION LIKE THIS! IT'S 
UP TO YOU NOW... MAY IT BE PATCHING EXIS
TING..GAMES (LIKE ALL THOSE ROUND-BASED 
SPORT GAMES FOR EXAMPLE) OR CREATING..AS
TONISHING NEW ONES FROM SCRATCH.....    
          "IMAGINATION IS MORE IMPORTANT
 THAN KNOWLEDGE." (ALBERT EINSTEIN)....C
REDITS:..--------....GROEPAZ/HITMEN     
            : HARDWARE SPANKING, THIS DO
CUMENT..THOMAS KONCINA/DIGITAL EXCESS  :
 CODING, MENTAL SUPPORT..BJOERN ODENDAHL
/DIGITAL EXCESS : TEST APPLICATION GRAPH
ICS, RELEASE PACKAGING....CONTACT:..----
----....GROEPAZ/HITMEN                 :
 GROEPAZ@GMX.NET..BJOERN ODENDAHL/DIGITA
L EXCESS : SEVEN@CRYPT.RUHR.DE..
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL