XMIT.MAE
FILE INFORMATION
FILENAME(S): XMIT.MAE
FILE TYPE(S): SEQ
FILE SIZE: 5.3K
FIRST SEEN: 2025-11-30 21:15:11
APPEARS ON: 1 disk(s)
FILE HASH
e43dc8502cec47a05dee591aead5344f5c837b0e27c35e9eb9ed411e683c1219
FOUND ON DISKS (1 DISKS)
| DISK TITLE | FILENAME | FILE TYPE | COLLECTION | TRACK | SECTOR | ACTIONS |
|---|---|---|---|---|---|---|
| TRANSACTOR DISK | XMIT.MAE | SEQ | DuncanTwain | 25 | 6 | DOWNLOAD FILE |
FILE CONTENT & ANALYSIS
00000000: 30 30 32 30 20 3B 20 43 4F 50 59 52 49 47 48 54 |0020 ; COPYRIGHT| 00000010: 20 31 39 38 36 20 4A 41 43 4B 20 42 45 44 41 52 | 1986 JACK BEDAR| 00000020: 44 0D 30 30 33 30 20 2E 0D 30 30 34 30 20 3B 20 |D.0030 ..0040 ; | 00000030: 4F 55 54 50 55 54 20 41 53 53 45 4D 42 4C 45 44 |OUTPUT ASSEMBLED| 00000040: 20 43 4F 44 45 20 54 4F 20 53 45 52 49 41 4C 20 | CODE TO SERIAL | 00000050: 44 41 54 41 20 50 4F 52 54 0D 30 30 35 30 20 2E |DATA PORT.0050 .| 00000060: 0D 30 30 36 30 20 3B 20 54 48 45 52 45 20 41 52 |.0060 ; THERE AR| 00000070: 45 20 32 20 53 45 50 41 52 41 54 45 20 52 4F 55 |E 2 SEPARATE ROU| 00000080: 54 49 4E 45 53 20 48 45 52 45 3A 0D 30 30 37 30 |TINES HERE:.0070| 00000090: 20 3B 20 54 48 45 20 31 53 54 20 28 43 4F 44 45 | ; THE 1ST (CODE| 000000A0: 2E 53 57 41 50 29 20 4D 4F 44 49 46 49 45 53 20 |.SWAP) MODIFIES | 000000B0: 4D 41 45 20 54 4F 20 54 52 41 4E 53 4D 49 54 20 |MAE TO TRANSMIT | 000000C0: 41 53 53 45 4D 42 4C 45 44 20 43 4F 44 45 0D 30 |ASSEMBLED CODE.0| 000000D0: 30 38 30 20 3B 20 54 4F 20 41 20 32 4E 44 20 43 |080 ; TO A 2ND C| 000000E0: 2D 36 34 20 56 49 41 20 53 2E 52 2E 20 50 4F 52 |-64 VIA S.R. POR| 000000F0: 54 2E 0D 30 30 39 30 20 3B 20 49 54 20 49 53 20 |T..0090 ; IT IS | 00000100: 41 43 54 49 56 41 54 45 44 20 57 49 54 48 20 54 |ACTIVATED WITH T| 00000110: 48 49 53 20 43 4F 4D 4D 41 4E 44 20 46 52 4F 4D |HIS COMMAND FROM| 00000120: 20 4D 41 45 20 27 52 55 20 24 38 35 30 30 27 0D | MAE 'RU $8500'.| 00000130: 30 31 30 30 20 2E 0D 30 31 31 30 20 3B 20 54 48 |0100 ..0110 ; TH| 00000140: 45 20 32 4E 44 20 53 45 4E 44 53 20 54 48 45 20 |E 2ND SENDS THE | 00000150: 41 44 44 52 45 53 53 20 54 4F 20 53 54 4F 52 45 |ADDRESS TO STORE| 00000160: 20 28 4C 4F 57 2F 48 49 47 48 29 0D 30 31 32 30 | (LOW/HIGH).0120| 00000170: 20 3B 20 49 4E 20 54 48 45 20 4F 54 48 45 52 20 | ; IN THE OTHER | 00000180: 43 36 34 20 41 4E 44 20 54 48 45 20 42 59 54 45 |C64 AND THE BYTE| 00000190: 20 54 4F 20 53 54 4F 52 45 20 54 48 45 52 45 2E | TO STORE THERE.| 000001A0: 0D 30 31 33 30 20 2E 0D 30 31 34 30 20 4D 41 45 |.0130 ..0140 MAE| 000001B0: 2E 54 41 42 4C 45 20 20 2E 44 45 20 24 35 31 20 |.TABLE .DE $51 | 000001C0: 20 20 20 20 20 20 3B 53 54 4F 52 45 20 41 44 44 | ;STORE ADD| 000001D0: 52 45 53 53 20 49 53 20 49 4E 20 54 48 49 53 20 |RESS IS IN THIS | 000001E0: 54 41 42 4C 45 0D 30 31 35 30 20 4D 4F 44 2E 41 |TABLE.0150 MOD.A| 000001F0: 44 52 20 20 20 20 2E 44 45 20 24 35 46 45 42 20 |DR .DE $5FEB | 00000200: 20 20 20 20 3B 4D 59 20 50 41 54 43 48 20 47 4F | ;MY PATCH GO| 00000210: 45 53 20 48 45 52 45 0D 30 31 36 30 20 55 32 2E |ES HERE.0160 U2.| 00000220: 54 49 4D 41 2E 4C 4F 20 2E 44 45 20 24 44 44 30 |TIMA.LO .DE $DD0| 00000230: 34 0D 30 31 37 30 20 55 32 2E 54 49 4D 41 2E 48 |4.0170 U2.TIMA.H| 00000240: 49 20 2E 44 45 20 24 44 44 30 35 0D 30 31 38 30 |I .DE $DD05.0180| 00000250: 20 55 32 2E 4F 55 54 20 20 20 20 20 2E 44 45 20 | U2.OUT .DE | 00000260: 24 44 44 30 43 20 20 20 20 20 3B 53 45 52 49 41 |$DD0C ;SERIA| 00000270: 4C 20 44 41 54 41 20 50 4F 52 54 0D 30 31 39 30 |L DATA PORT.0190| 00000280: 20 55 32 2E 49 43 52 20 20 20 20 20 2E 44 45 20 | U2.ICR .DE | 00000290: 24 44 44 30 44 20 20 20 20 20 3B 49 4E 54 45 52 |$DD0D ;INTER| 000002A0: 52 55 50 54 20 43 4F 4E 54 52 4F 4C 20 52 45 47 |RUPT CONTROL REG| 000002B0: 49 53 54 45 52 0D 30 32 30 30 20 55 32 2E 43 52 |ISTER.0200 U2.CR| 000002C0: 41 20 20 20 20 20 2E 44 45 20 24 44 44 30 45 20 |A .DE $DD0E | 000002D0: 20 20 20 20 3B 54 49 4D 45 52 20 41 20 43 4F 4E | ;TIMER A CON| 000002E0: 54 52 4F 4C 20 52 45 47 49 53 54 45 52 0D 30 32 |TROL REGISTER.02| 000002F0: 31 30 20 4F 55 54 50 55 54 20 20 20 20 20 2E 44 |10 OUTPUT .D| 00000300: 45 20 25 30 31 30 30 30 30 30 30 20 3B 42 49 54 |E %01000000 ;BIT| 00000310: 20 36 20 49 4E 20 24 44 44 30 45 0D 30 32 32 30 | 6 IN $DD0E.0220| 00000320: 20 53 48 49 46 54 2E 52 45 47 20 20 2E 44 45 20 | SHIFT.REG .DE | 00000330: 25 30 30 30 30 31 30 30 30 20 3B 42 49 54 20 33 |%00001000 ;BIT 3| 00000340: 20 49 4E 20 24 44 44 30 44 0D 30 32 33 30 20 44 | IN $DD0D.0230 D| 00000350: 49 53 41 42 4C 2E 41 4C 4C 20 2E 44 45 20 25 30 |ISABL.ALL .DE %0| 00000360: 31 31 31 31 31 31 31 20 3B 30 20 49 4E 20 37 20 |1111111 ;0 IN 7 | 00000370: 43 41 55 53 45 53 20 54 48 45 20 31 27 53 20 54 |CAUSES THE 1'S T| 00000380: 4F 20 44 49 53 41 42 4C 45 20 54 48 4F 53 45 20 |O DISABLE THOSE | 00000390: 42 49 54 53 0D 30 32 34 30 20 54 49 4D 45 52 2E |BITS.0240 TIMER.| 000003A0: 41 20 20 20 20 2E 44 45 20 25 30 30 30 30 30 30 |A .DE %000000| 000003B0: 30 31 20 3B 42 49 54 20 30 20 49 4E 20 24 44 44 |01 ;BIT 0 IN $DD| 000003C0: 30 45 0D 30 32 35 30 20 2E 0D 30 32 36 30 20 42 |0E.0250 ..0260 B| 000003D0: 41 55 44 20 20 20 20 20 20 20 2E 44 45 20 24 30 |AUD .DE $0| 000003E0: 34 20 20 20 20 20 20 20 3B 54 48 45 20 42 41 55 |4 ;THE BAU| 000003F0: 44 20 52 41 54 45 20 50 52 45 53 43 41 4C 45 52 |D RATE PRESCALER| 00000400: 0D 30 32 37 30 20 2E 0D 30 32 38 30 20 20 2E 4F |.0270 ..0280 .O| 00000410: 53 0D 30 32 39 30 20 20 2E 42 41 20 24 38 35 30 |S.0290 .BA $850| 00000420: 30 0D 30 33 30 30 20 20 2E 43 45 0D 30 33 31 30 |0.0300 .CE.0310| 00000430: 20 2E 0D 30 33 32 30 20 43 4F 44 45 2E 53 57 41 | ..0320 CODE.SWA| 00000440: 50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |P | 00000450: 20 3B 50 41 54 43 48 20 27 4A 53 52 20 53 45 4E | ;PATCH 'JSR SEN| 00000460: 44 54 4F 44 53 50 27 20 49 4E 54 4F 20 4D 41 45 |DTODSP' INTO MAE| 00000470: 20 20 20 20 20 20 20 20 20 20 20 0D 30 33 33 30 | .0330| 00000480: 20 20 4C 44 58 20 23 32 20 20 20 20 20 20 20 20 | LDX #2 | 00000490: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000004A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000004B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000004C0: 20 20 20 20 0D 30 33 34 30 20 4D 4F 44 2E 4C 4F | .0340 MOD.LO| 000004D0: 4F 50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |OP | 000004E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000004F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000500: 20 20 20 20 20 20 20 20 20 20 20 20 20 0D 30 33 | .03| 00000510: 35 30 20 20 4C 44 41 20 4D 4F 44 2E 41 44 52 2C |50 LDA MOD.ADR,| 00000520: 58 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |X | 00000530: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000540: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000550: 20 20 20 20 20 20 0D 30 33 36 30 20 20 50 48 41 | .0360 PHA| 00000560: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000570: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000580: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000590: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0D | .| 000005A0: 30 33 37 30 20 20 4C 44 41 20 4D 41 45 2E 43 4F |0370 LDA MAE.CO| 000005B0: 44 45 2E 4D 4F 44 2C 58 20 20 20 20 20 20 20 20 |DE.MOD,X | 000005C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000005D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000005E0: 20 20 20 20 20 20 20 20 0D 30 33 38 30 20 20 53 | .0380 S| 000005F0: 54 41 20 4D 4F 44 2E 41 44 52 2C 58 20 20 20 20 |TA MOD.ADR,X | 00000600: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000610: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000620: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000630: 20 0D 30 33 39 30 20 20 50 4C 41 20 20 20 20 20 | .0390 PLA | 00000640: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000650: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000660: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000670: 20 20 20 20 20 20 20 20 20 20 0D 30 34 30 30 20 | .0400 | 00000680: 20 53 54 41 20 4D 41 45 2E 43 4F 44 45 2E 4D 4F | STA MAE.CODE.MO| 00000690: 44 2C 58 20 20 20 20 20 20 20 20 20 20 20 20 20 |D,X | 000006A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000006B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000006C0: 20 20 20 0D 30 34 31 30 20 20 44 45 58 20 20 20 | .0410 DEX | 000006D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000006E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000006F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000700: 20 20 20 20 20 20 20 20 20 20 20 20 0D 30 34 32 | .042| 00000710: 30 20 20 42 50 4C 20 4D 4F 44 2E 4C 4F 4F 50 20 |0 BPL MOD.LOOP | 00000720: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000730: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000740: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000750: 20 20 20 20 20 0D 30 34 33 30 20 20 52 54 53 20 | .0430 RTS | 00000760: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000770: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000780: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000790: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0D 30 | .0| 000007A0: 34 34 30 20 2E 20 20 20 20 20 20 20 20 20 20 20 |440 . | 000007B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000007C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000007D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000007E0: 20 20 20 20 20 20 20 0D 30 34 35 30 20 4D 41 45 | .0450 MAE| 000007F0: 2E 43 4F 44 45 2E 4D 4F 44 20 20 20 20 20 20 20 |.CODE.MOD | 00000800: 20 20 20 20 20 20 3B 50 41 54 43 48 20 54 4F 20 | ;PATCH TO | 00000810: 4F 55 52 20 4F 55 54 50 55 54 20 52 4F 55 54 49 |OUR OUTPUT ROUTI| 00000820: 4E 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |NE | 00000830: 0D 30 34 36 30 20 20 4A 53 52 20 53 45 4E 44 2E |.0460 JSR SEND.| 00000840: 54 4F 2E 53 44 50 20 20 20 20 20 20 20 20 20 20 |TO.SDP | 00000850: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000860: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000870: 20 20 20 20 20 20 20 20 20 0D 30 34 37 30 20 2E | .0470 .| 00000880: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000890: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000008A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000008B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000008C0: 20 20 0D 30 34 38 30 20 53 45 4E 44 2E 54 4F 2E | .0480 SEND.TO.| 000008D0: 53 44 50 20 20 20 20 20 20 20 20 20 20 20 20 20 |SDP | 000008E0: 20 3B 53 45 4E 44 20 42 59 54 45 20 46 52 4F 4D | ;SEND BYTE FROM| 000008F0: 20 53 54 41 43 4B 20 28 55 4E 44 45 52 20 52 45 | STACK (UNDER RE| 00000900: 54 55 52 4E 20 41 44 44 52 29 20 0D 30 34 39 30 |TURN ADDR) .0490| 00000910: 20 20 53 54 59 20 53 41 56 45 2E 59 20 20 20 20 | STY SAVE.Y | 00000920: 20 20 20 20 20 20 20 20 20 20 3B 54 4F 20 4F 54 | ;TO OT| 00000930: 48 45 52 20 36 34 2E 20 20 20 20 20 20 20 20 20 |HER 64. | 00000940: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000950: 20 20 20 20 0D 30 35 30 30 20 20 53 54 58 20 53 | .0500 STX S| 00000960: 41 56 45 2E 58 20 20 20 20 20 20 20 20 20 20 20 |AVE.X | 00000970: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000980: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000990: 20 20 20 20 20 20 20 20 20 20 20 20 20 0D 30 35 | .05| 000009A0: 31 30 20 20 50 4C 41 20 20 20 20 20 20 20 20 20 |10 PLA | 000009B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000009C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000009D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000009E0: 20 20 20 20 20 20 0D 30 35 32 30 20 20 53 54 41 | .0520 STA| 000009F0: 20 52 45 54 2E 41 44 52 20 20 20 20 20 20 20 20 | RET.ADR | 00000A00: 20 20 20 20 20 3B 53 41 56 45 20 52 45 54 55 52 | ;SAVE RETUR| 00000A10: 4E 20 41 44 44 52 45 53 53 20 46 52 4F 4D 20 53 |N ADDRESS FROM S| 00000A20: 54 41 43 4B 20 20 20 20 20 20 20 20 20 20 20 0D |TACK .| 00000A30: 30 35 33 30 20 20 50 4C 41 20 20 20 20 20 20 20 |0530 PLA | 00000A40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000A50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000A60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000A70: 20 20 20 20 20 20 20 20 0D 30 35 34 30 20 20 53 | .0540 S| 00000A80: 54 41 20 52 45 54 2E 41 44 52 2B 31 20 20 20 20 |TA RET.ADR+1 | 00000A90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000AA0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000AB0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000AC0: 20 0D 30 35 35 30 20 2E 20 20 20 20 20 20 20 20 | .0550 . | 00000AD0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000AE0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000AF0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000B00: 20 20 20 20 20 20 20 20 20 20 0D 30 35 36 30 20 | .0560 | 00000B10: 20 4C 44 41 20 4D 41 45 2E 54 41 42 4C 45 2C 58 | LDA MAE.TABLE,X| 00000B20: 20 20 20 20 20 20 20 20 20 3B 46 49 4E 44 20 41 | ;FIND A| 00000B30: 44 44 52 45 53 53 20 46 4F 52 20 42 59 54 45 20 |DDRESS FOR BYTE | 00000B40: 54 4F 20 42 45 20 53 45 4E 54 20 20 20 20 20 20 |TO BE SENT | 00000B50: 20 20 20 0D 30 35 37 30 20 20 53 54 41 20 44 41 | .0570 STA DA| 00000B60: 54 41 2E 4F 55 54 2B 32 20 20 20 20 20 20 20 20 |TA.OUT+2 | 00000B70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000B80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000B90: 20 20 20 20 20 20 20 20 20 20 20 20 0D 30 35 38 | .058| 00000BA0: 30 20 20 4C 44 41 20 4D 41 45 2E 54 41 42 4C 45 |0 LDA MAE.TABLE| 00000BB0: 2B 31 2C 58 20 20 20 20 20 20 20 20 20 20 20 20 |+1,X | 00000BC0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000BD0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000BE0: 20 20 20 20 20 0D 30 35 39 30 20 20 53 54 41 20 | .0590 STA | 00000BF0: 44 41 54 41 2E 4F 55 54 2B 31 20 20 20 20 20 20 |DATA.OUT+1 | 00000C00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000C10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000C20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0D 30 | .0| 00000C30: 36 30 30 20 20 50 4C 41 20 20 20 20 20 20 20 20 |600 PLA | 00000C40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000C50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000C60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000C70: 20 20 20 20 20 20 20 0D 30 36 31 30 20 20 53 54 | .0610 ST| 00000C80: 41 20 44 41 54 41 2E 4F 55 54 20 20 20 20 20 20 |A DATA.OUT | 00000C90: 20 20 20 20 20 20 3B 42 59 54 45 20 54 4F 20 53 | ;BYTE TO S| 00000CA0: 45 4E 44 20 28 41 46 54 45 52 20 41 44 44 52 45 |END (AFTER ADDRE| 00000CB0: 53 53 29 20 20 20 20 20 20 20 20 20 20 20 20 20 |SS) | 00000CC0: 0D 30 36 32 30 20 2E 20 20 20 20 20 20 20 20 20 |.0620 . | 00000CD0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000CE0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000CF0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000D00: 20 20 20 20 20 20 20 20 20 0D 30 36 33 30 20 20 | .0630 | 00000D10: 4C 44 41 20 23 44 49 53 41 42 4C 2E 41 4C 4C 20 |LDA #DISABL.ALL | 00000D20: 20 20 20 20 20 20 20 20 3B 53 45 54 20 55 50 20 | ;SET UP | 00000D30: 49 4E 54 45 52 52 55 50 54 20 43 4F 4E 54 52 4F |INTERRUPT CONTRO| 00000D40: 4C 20 52 45 47 20 20 20 20 20 20 20 20 20 20 20 |L REG | 00000D50: 20 20 0D 30 36 34 30 20 20 53 54 41 20 55 32 2E | .0640 STA U2.| 00000D60: 49 43 52 20 20 20 20 20 20 20 20 20 20 20 20 20 |ICR | 00000D70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000D80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000D90: 20 20 20 20 20 20 20 20 20 20 20 0D 30 36 35 30 | .0650| 00000DA0: 20 2E 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | . | 00000DB0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000DC0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000DD0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000DE0: 20 20 20 20 0D 30 36 36 30 20 20 4C 44 41 20 23 | .0660 LDA #| 00000DF0: 42 41 55 44 20 20 20 20 20 20 20 20 20 20 20 20 |BAUD | 00000E00: 20 20 20 3B 53 45 54 20 55 50 20 54 49 4D 45 52 | ;SET UP TIMER| 00000E10: 20 20 20 20 20 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 0D 30 36 | .06| 00000E30: 37 30 20 20 53 54 41 20 55 32 2E 54 49 4D 41 2E |70 STA U2.TIMA.| 00000E40: 4C 4F 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |LO | 00000E50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000E60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000E70: 20 20 20 20 20 20 0D 30 36 38 30 20 20 4C 44 41 | .0680 LDA| 00000E80: 20 23 30 20 20 20 20 20 20 20 20 20 20 20 20 20 | #0 | 00000E90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000EA0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000EB0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0D | .| 00000EC0: 30 36 39 30 20 20 53 54 41 20 55 32 2E 54 49 4D |0690 STA U2.TIM| 00000ED0: 41 2E 48 49 20 20 20 20 20 20 20 20 20 20 20 20 |A.HI | 00000EE0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000EF0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000F00: 20 20 20 20 20 20 20 20 0D 30 37 30 30 20 2E 20 | .0700 . | 00000F10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000F20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000F30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000F40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000F50: 20 0D 30 37 31 30 20 20 4C 44 41 20 23 4F 55 54 | .0710 LDA #OUT| 00000F60: 50 55 54 2B 54 49 4D 45 52 2E 41 20 20 20 20 20 |PUT+TIMER.A | 00000F70: 3B 53 45 54 20 55 50 20 54 49 4D 45 52 20 43 4F |;SET UP TIMER CO| 00000F80: 4E 54 52 4F 4C 20 52 45 47 49 53 54 45 52 20 20 |NTROL REGISTER | 00000F90: 20 20 20 20 20 20 20 20 20 20 0D 30 37 32 30 20 | .0720 | 00000FA0: 20 53 54 41 20 55 32 2E 43 52 41 20 20 20 20 20 | STA U2.CRA | 00000FB0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000FC0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000FD0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000FE0: 20 20 20 0D 30 37 33 30 20 2E 20 20 20 20 20 20 | .0730 . | 00000FF0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001020: 20 20 20 20 20 20 20 20 20 20 20 20 0D 30 37 34 | .074| 00001030: 30 20 20 4C 44 58 20 23 32 20 20 20 20 20 20 20 |0 LDX #2 | 00001040: 20 20 20 20 20 20 20 20 20 20 20 3B 53 45 4E 44 | ;SEND| 00001050: 20 54 48 45 20 54 48 52 45 45 20 42 59 54 45 53 | THE THREE BYTES| 00001060: 20 53 54 41 52 54 49 4E 47 20 41 54 20 44 41 54 | STARTING AT DAT| 00001070: 41 4F 55 54 20 0D 30 37 35 30 20 20 53 45 49 20 |AOUT .0750 SEI | 00001080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001090: 20 20 20 20 3B 4E 4F 20 49 4E 54 45 52 52 55 50 | ;NO INTERRUP| 000010A0: 54 53 2C 20 50 4C 45 41 53 45 20 20 20 20 20 20 |TS, PLEASE | 000010B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0D 30 | .0| 000010C0: 37 36 30 20 4F 55 54 2E 44 41 54 41 20 20 20 20 |760 OUT.DATA | 000010D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000010E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000010F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001100: 20 20 20 20 20 20 20 0D 30 37 37 30 20 20 4C 44 | .0770 LD| 00001110: 41 20 44 41 54 41 2E 4F 55 54 2C 58 20 20 20 20 |A DATA.OUT,X | 00001120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001150: 0D 30 37 38 30 20 20 53 54 41 20 55 32 2E 4F 55 |.0780 STA U2.OU| 00001160: 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3B |T ;| 00001170: 50 55 54 20 54 48 45 20 42 59 54 45 20 4F 4E 20 |PUT THE BYTE ON | 00001180: 54 48 45 20 4F 55 54 50 55 54 20 50 4F 52 54 20 |THE OUTPUT PORT | 00001190: 20 20 20 20 20 20 20 20 20 0D 30 37 39 30 20 2E | .0790 .| 000011A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000011B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000011C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000011D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000011E0: 20 20 0D 30 38 30 30 20 53 54 49 4C 4C 2E 53 45 | .0800 STILL.SE| 000011F0: 4E 44 49 4E 47 20 20 20 20 20 20 20 20 20 20 20 |NDING | 00001200: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001220: 20 20 20 20 20 20 20 20 20 20 20 0D 30 38 31 30 | .0810| 00001230: 20 20 4C 44 41 20 55 32 2E 49 43 52 20 20 20 20 | LDA U2.ICR | 00001240: 20 20 20 20 20 20 20 20 20 20 3B 57 41 49 54 20 | ;WAIT | 00001250: 55 4E 54 49 4C 20 49 54 20 48 41 53 20 42 45 45 |UNTIL IT HAS BEE| 00001260: 4E 20 53 45 4E 54 20 20 20 20 20 20 20 20 20 20 |N SENT | 00001270: 20 20 20 20 0D 30 38 32 30 20 20 41 4E 44 20 23 | .0820 AND #| 00001280: 53 48 49 46 54 2E 52 45 47 20 20 20 20 20 20 20 |SHIFT.REG | 00001290: 20 20 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 20 20 20 | | 000012B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 0D 30 38 | .08| 000012C0: 33 30 20 20 42 45 51 20 53 54 49 4C 4C 2E 53 45 |30 BEQ STILL.SE| 000012D0: 4E 44 49 4E 47 20 20 20 20 20 20 20 20 20 20 20 |NDING | 000012E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000012F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001300: 20 20 20 20 20 20 0D 30 38 34 30 20 20 44 45 58 | .0840 DEX| 00001310: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001320: 20 20 20 20 20 3B 53 45 4E 44 20 54 48 45 20 4E | ;SEND THE N| 00001330: 45 58 54 20 4F 4E 45 20 20 20 20 20 20 20 20 20 |EXT ONE | 00001340: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0D | .| 00001350: 30 38 35 30 20 20 42 50 4C 20 4F 55 54 2E 44 41 |0850 BPL OUT.DA| 00001360: 54 41 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |TA | 00001370: 20 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 0D 30 38 36 30 20 20 43 | .0860 C| 000013A0: 4C 49 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |LI | 000013B0: 20 20 20 20 20 20 20 3B 41 4C 4C 20 53 45 4E 54 | ;ALL SENT| 000013C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000013D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 000013E0: 20 0D 30 38 37 30 20 2E 20 20 20 20 20 20 20 20 | .0870 . | 000013F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001400: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001410: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001420: 20 20 20 20 20 20 20 20 20 20 0D 30 38 38 30 20 | .0880 | 00001430: 20 4C 44 41 20 52 45 54 2E 41 44 52 2B 31 20 20 | LDA RET.ADR+1 | 00001440: 20 20 20 20 20 20 20 20 20 3B 50 55 54 20 52 45 | ;PUT RE| 00001450: 54 55 52 4E 20 41 44 44 52 45 53 53 20 42 41 43 |TURN ADDRESS BAC| 00001460: 4B 20 4F 4E 20 54 48 45 20 53 54 41 43 4B 20 20 |K ON THE STACK | 00001470: 20 20 20 0D 30 38 39 30 20 20 50 48 41 0D 30 39 | .0890 PHA.09| 00001480: 30 30 20 20 4C 44 41 20 52 45 54 2E 41 44 52 0D |00 LDA RET.ADR.| 00001490: 30 39 31 30 20 20 50 48 41 0D 30 39 32 30 20 20 |0910 PHA.0920 | 000014A0: 4C 44 58 20 53 41 56 45 2E 58 0D 30 39 33 30 20 |LDX SAVE.X.0930 | 000014B0: 20 4C 44 59 20 53 41 56 45 2E 59 0D 30 39 34 30 | LDY SAVE.Y.0940| 000014C0: 20 20 52 54 53 0D 30 39 35 30 20 2E 0D 30 39 36 | RTS.0950 ..096| 000014D0: 30 20 53 41 56 45 2E 58 20 2E 44 53 20 31 0D 30 |0 SAVE.X .DS 1.0| 000014E0: 39 37 30 20 53 41 56 45 2E 59 20 2E 44 53 20 31 |970 SAVE.Y .DS 1| 000014F0: 0D 30 39 38 30 20 52 45 54 2E 41 44 52 20 2E 44 |.0980 RET.ADR .D| 00001500: 53 20 32 0D 30 39 39 30 20 44 41 54 41 2E 4F 55 |S 2.0990 DATA.OU| 00001510: 54 20 2E 44 53 20 33 0D 31 30 30 30 20 2E 0D 31 |T .DS 3.1000 ..1| 00001520: 30 31 30 20 20 2E 45 4E 0D |010 .EN. |
0020 ; COPYRIGHT 1986 JACK BEDARD.0030 .
.0040 ; OUTPUT ASSEMBLED CODE TO SERIAL
DATA PORT.0050 ..0060 ; THERE ARE 2 SEPA
RATE ROUTINES HERE:.0070 ; THE 1ST (CODE
.SWAP) MODIFIES MAE TO TRANSMIT ASSEMBLE
D CODE.0080 ; TO A 2ND C-64 VIA S.R. POR
T..0090 ; IT IS ACTIVATED WITH THIS COMM
AND FROM MAE 'RU $8500'.0100 ..0110 ; TH
E 2ND SENDS THE ADDRESS TO STORE (LOW/HI
GH).0120 ; IN THE OTHER C64 AND THE BYTE
TO STORE THERE..0130 ..0140 MAE.TABLE
.DE $51 ;STORE ADDRESS IS IN THIS
TABLE.0150 MOD.ADR .DE $5FEB ;MY
PATCH GOES HERE.0160 U2.TIMA.LO .DE $DD0
4.0170 U2.TIMA.HI .DE $DD05.0180 U2.OUT
.DE $DD0C ;SERIAL DATA PORT.0190
U2.ICR .DE $DD0D ;INTERRUPT CON
TROL REGISTER.0200 U2.CRA .DE $DD0E
;TIMER A CONTROL REGISTER.0210 OUTPU
T .DE %01000000 ;BIT 6 IN $DD0E.0220
SHIFT.REG .DE %00001000 ;BIT 3 IN $DD0
D.0230 DISABL.ALL .DE %01111111 ;0 IN 7
CAUSES THE 1'S TO DISABLE THOSE BITS.024
0 TIMER.A .DE %00000001 ;BIT 0 IN $DD
0E.0250 ..0260 BAUD .DE $04
;THE BAUD RATE PRESCALER.0270 ..0280 .O
S.0290 .BA $8500.0300 .CE.0310 ..0320
CODE.SWAP ;PATCH 'JSR SEN
DTODSP' INTO MAE .0330 LDX #2
.0340 MOD.LOOP
.0350 LDA MOD.ADR,X
.0360 PHA
.
0370 LDA MAE.CODE.MOD,X
.0380 S
TA MOD.ADR,X
.0390 PLA
.0400 STA MAE.CODE.MO
D,X
.0410 DEX
.0420 BPL MOD.LOOP
.04
30 RTS
.0440 .
.0450 MAE.CODE.MO
D ;PATCH TO OUR OUTPUT ROUTI
NE .0460 JSR SEND.TO.SDP
.0470 .
.0480 SEND.TO.SDP ;SEND B
YTE FROM STACK (UNDER RETURN ADDR) .0490
STY SAVE.Y ;TO OTHER 64.
.0500 STX S
AVE.X
.0510 PLA
.0520 STA RET.ADR
;SAVE RETURN ADDRESS FROM STACK
.0530 PLA
.0540 STA RET.ADR+1
.0550 .
.0560 LDA MAE
.TABLE,X ;FIND ADDRESS FOR BYTE
TO BE SENT .0570 STA DATA.OUT+2
.0580 LDA MAE.TABLE+1,X
.0590 STA DATA.OUT+1
.0
600 PLA
.0610 ST
A DATA.OUT ;BYTE TO SEND (AFT
ER ADDRESS) .0620 .
.0630 LDA #DISABL.ALL
;SET UP INTERRUPT CONTROL REG
.0640 STA U2.ICR
.0650 .
.066
0 LDA #BAUD ;SET UP TIMER
.0670 STA
U2.TIMA.LO
.0680 LDA #0
.0690 STA U2.TIMA.HI
.0700 .
.0710 LDA #OUTPUT+TIMER.A ;SET UP
TIMER CONTROL REGISTER .0720
STA U2.CRA
.0730 .
.0740 LDX #2
;SEND THE THREE BYTES STARTIN
G AT DATAOUT .0750 SEI
;NO INTERRUPTS, PLEASE
.0760 OUT.DATA
.
0770 LDA DATA.OUT,X
.0780 S
TA U2.OUT ;PUT THE BYTE ON
THE OUTPUT PORT .0790 .
.0800 STILL.SENDING
.0810 LDA U2.ICR
;WAIT UNTIL IT HAS BEEN SENT
.0820 AND #SHIFT.REG
.08
30 BEQ STILL.SENDING
.0840 DEX
;SEND THE NEXT ONE
.0850 BPL OUT.DA
TA
.0860 CLI
;ALL SENT
.0870 .
.0880 LDA RET.ADR+1 ;PUT RE
TURN ADDRESS BACK ON THE STACK .0890
PHA.0900 LDA RET.ADR.0910 PHA.0920
LDX SAVE.X.0930 LDY SAVE.Y.0940 RTS.09
50 ..0960 SAVE.X .DS 1.0970 SAVE.Y .DS 1
.0980 RET.ADR .DS 2.0990 DATA.OUT .DS 3.
1000 ..1010 .EN.
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL