home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / C64-128Toolkit / DISKROMSOURCE1.SDA / DISK / ROM0 (.txt) next >
Encoding:
Commodore BASIC  |  2019-04-13  |  5.5 KB  |  160 lines

  1. 100 *= $C100
  2. 110 ;BIT MAPS FOR $1800 TO $180F AND $1C00 TO $1C0F
  3. 115 ;
  4. 120 ;$1800 SERIAL PORT I/O DATA PORT B
  5. 125 ;
  6. 130 ;BIT 0 DATA IN BIT
  7. 135 ;    1 DATA OUT BIT
  8. 140 ;    2 CLOCK IN BIT
  9. 145 ;    3 CLOCK OUT BIT
  10. 150 ;    4 ATTENTION ACKNOWLEDGE BIT
  11. 155 ;    7 ATTENTION IN BIT
  12. 160 ;
  13. 165 ;$1C00 INTERNAL I/O (DISK CONTROLLER) DATA PORT B
  14. 170 ;
  15. 175 ;BIT 0 & 1 CYCLED TO MOVE R/W HEAD
  16. 180 ;    2 MOTOR ON (1) OFF
  17. 185 ;    3 DRIVE LED ON (1) OFF
  18. 190 ;    4 WRITE PROTECT SENSE
  19. 195 ;    5 & 6 DENSITY SELECT
  20. 200 ;    1   1 TRACK 01 TO 11
  21. 205 ;    0   1       12 TO 18
  22. 210 ;    1   0       19 TO 1E
  23. 215 ;    0   0       1F TO 23
  24. 220 ;BIT 7 SYNC DETECT BIT
  25. 225 ;
  26. 230 ;$1801 TO $180F & $1C01 TO $1C0F ARE THE SAME
  27. 235 ;
  28. 240 ;$XX01 PORT A W/HANDSHAKING
  29. 245 ;8 BITS CONNECTED TO PORT B CAN BE SET FOR EITHER INPUT OR OUTPUT
  30. 250 ;INPUT LATCHING AVAILABLE WHEN LATCH ENABLED DATA IN REGISTER FROZE
  31. 255 ;WHEN CB1 INTERUPT FLAG SET. REGISTER STAYS LATCHED UNTIL INTERUPT CLEARED
  32. 260 ;HANDSHAKE - CB2 = DATA READY CB1 = DATA ACCEPTED. ON DATA ACCEPTED DATA
  33. 265 ;READY CLEARED INTERRUPT SET
  34. 270 ;
  35. 275 ;$XX02 DATA DIRECTION B
  36. 280 ;
  37. 285 ;CONNECTED TO PORT A CAN BE EITHER INPUT OR OUTPUT. HANDSHAKING BOTH READ &
  38. 290 ;WRITE. READ IS AUTOMATIC CA1 = DATA READY CA2 = (OUTPUT) DATA ACCEPTED
  39. 295 ;DATA READY SET BY 6502 CLEARED BY DATA READY
  40. 300 ;
  41. 305 ;$XX03 DATA DIRECTION A
  42. 310 ;
  43. 315 ;SAME AS PORT B BUT FOR PORT A
  44. 320 ;
  45. 325 ;$XX04 TIMER #1 LO BYTE
  46. 330 ;
  47. 335 ;TIME BY COUNT OR PULSE MODE SELECTED BY AUX CONT REG WHEN COUNT = 0
  48. 340 ;INTERRUPT FLAG SET IRQ WILL BE LOW
  49. 345 ;
  50. 350 ;$XX05 TIMER #1 HI BYTE
  51. 355 ;
  52. 360 ;$XX06 TIMER #1 LO BYTE TO LOAD
  53. 365 ;
  54. 370 ;$XX07 TIMER #1 HI BYTE TO LAOD
  55. 375 ;
  56. 380 ;$XX08 TIMER #2 LO BYTE
  57. 385 ;
  58. 390 ;$XX09 TIMER #2 HI BYTE
  59. 395 ;
  60. 400 ;$XX0A SHIFT REGISTER
  61. 405 ;
  62. 410 ;WILL ROTATE ITSELF THRU CB2 LOAD WITH 8 BITS AND SHIFT OUT THRU CB1
  63. 415 ;SHIFT CONTROLLED BY BITS 2 & 4 OF AUX CONT REG
  64. 420 ;
  65. 425 ;$XX0B AUXILIARY CONTROL REGISTER
  66. 430 ;
  67. 435 ;BIT 0 = 0 PORT A DIRECTLY REFLECTS DATA IN REGISTER = 1 LATCHED WITHIN CHIP
  68. 440 ;WHEN CB1 INTERRUPT SET DATA ON PINS CAN CHANGE WITHOUT AFFECTING CONTENTS
  69. 445 ;OF PORT B 6502 READS REGISTER NOT PINS
  70. 450 ;BIT 1 PORT B LATCH ENABLE
  71. 455 ;SAME AS PORT A LATCH ENABLE (BIT 0)
  72. 460 ;BITS 2-3-4 SHIFT REGISTER CONTROL
  73. 465 ;     0 0 0 = SHIFT REG DISABLED
  74. 470 ;     1 0 0 = SHIFT IN FROM CB1 UNDER CONTROL OF TIMER #2
  75. 475 ;     0 1 0 = SHIFT IN USING SYSTEM CLOCK PULSES
  76. 480 ;     1 1 0 = SHIFT IN USING EXTERNAL CLOCK PULSES
  77. 485 ;     0 0 1 = FREE RUN MODE AT RATE FROM TIMER #2
  78. 490 ;     1 0 1 = SHIFT OUT USING TIMER #2
  79. 495 ;     0 1 1 = SHIFT OUT USING SYSTEM CLOCK PULES
  80. 500 ;     1 1 1 = SHIFT OUT USING EXTERNAL CLOCK PULES
  81. 505 ; BIT 5 TIMER #2 CONTROL
  82. 510 ; = 0 INTERVAL TIMER 1 SHOT MODE = 1 COUNT SET NUMBER OF PULES ON PB6
  83. 515 ; BIT 6-7 TIMER #1 CONTROL
  84. 520 ;     0 0 ONE SHOT OUTPUT TO PB7 DISABLED
  85. 525 ;     1 0 FREE RUNNING OUTPUT TO PB7 DISABLED
  86. 530 ;     0 1 ONE SHOT PB7 ENABLED
  87. 535 ;     1 1 FREE RUNNING PB7 ENABLED
  88. 540 ;
  89. 545 ;$XX0C PERIPHIAL CONTROL REGISSTER
  90. 550 ;
  91. 555 ; BIT 0 CA1 CONTROL
  92. 560 ; SELECTS ACTIVE TRANSISTION APPLIED TO CA1 0 = CA1 INTERRUPT FLAG
  93. 565 ;SET ON NEGATIVE TRANSISTION HI TO LO 1 = INTERRUPT SET LO TO HI
  94. 570 ; BITS 1-2-3 CA2 CONTROL
  95. 575 ;      0 0 0 INTERRUPT INPUT MODE
  96. 576 ; CA2 INTERRUPT FLAG BIT 0 SET NEG TRANSISTION ON CA2 BIT
  97. 577 ; CA2 INTERRUPT BIT CLEARED ON READ WRITE PORT A
  98. 580 ;      1 0 0 INDEPENDANT INPUT INTERRUPT MODE
  99. 581 ; CA2 INTERRUPT SET AS ABOVE BUT NOT CLEARED ON READ WRITE PORT A
  100. 585 ;      0 1 0 INPUT MODE
  101. 586 ; CA2 INTERRUPT BIT 0 SET ON POSITIVE TRANSISTION OF CA2 BIT
  102. 587 ; CA2 INTERRUPT FLAG CLEARED READ WRITE PORT A
  103. 590 ;      1 1 0 INDEPENDANT INPUT MODE
  104. 591 ; CA2 BIT 0 SET POSITIVE TRANSISTION AS ABOVE
  105. 592 ; INTERRUPT FLAG NOT CLEARED READ WRITE PORT A
  106. 595 ;      0 0 1 HANDSHAKE OUTPUT MODE
  107. 596 ; CA2 BIT SET LO ON READ WRITE PORT A
  108. 597 ; RESET HI WHEN ACTIVE TRANSISTION ON CA1 BIT
  109. 600 ;      1 0 1 PULSE OUTPUT MODE
  110. 601 ; CA2 BIT SET LO FOR 1 CYCLE AFTER READ WRITE PORT A
  111. 605 ;      0 1 1 MANUAL OUTPUT MODE CA2 HELD LO
  112. 610 ;      1 1 1   "      "     "   CA2 HELD HI
  113. 615 ; BIT 4 CB1 [154]ROL
  114. 620 ; SELECTS ACTIVE TRANSISTI[145] OF [133] SIGNAL APPLIED [164] CB1
  115. 625 ; [139] [178] 0 CB1 [181]ERRUPT [145] NEGATIVE TRANSISTI[145] [139] 1 SET [145] [185]ITIVE
  116. 630 ; BIT 5[171]6[171]7 CB2 [154]ROL
  117. 635 ;     0 0 0 [181]ERRUPT [133] MODE
  118. 636 ; CB2 [181]ERRUPT FLAG BIT 3 SET [145] NEGATIVE TRANSISTI[145]
  119. 637 ; CB2 [181]ERRUPT BIT CLEARED [145] [135] WRITE P[176]T B
  120. 640 ;     1 0 0 INDEP[128]ANT [181]ERRUPT [133] MODE
  121. 641 ; SAME AS ABOVE [135] WRITE DOES [168] CLEAR [181]ERRUPT FLAG
  122. 645 ;     0 1 0 [133] MODE
  123. 646 ; CB2 [181]ERRUPT FLAG BIT 3 SET [145] [185]ITIVE TRANSISTI[145]
  124. 647 ; [181]ERRUPT CLEARED [145] [135] WRITE P[176]T B
  125. 650 ;     1 1 0 INDEP[128]ANT [133] MODE
  126. 651 ; SAME AS ABOVE [185]ITIVE [181]ERRUPT [168] CLEARED [135] WRITE P[176]T B
  127. 655 ;     0 0 1 H[175]SHAKE OUTPUT MODE
  128. 656 ; CB2 BIT SET LO [145] WRITE P[176]T B RESET HI [145] ACTIVE TRANSISTI[145] CB1 BIT
  129. 660 ;     1 0 1 PULSE OUTPUT MODE
  130. 661 ; CB2 BIT SET LO [129] 1 CYCLE AFTER WRITE P[176]T B
  131. 665 ;     0 1 1 MANUAL OUTPUT MODE CB2 HELD LO
  132. 670 ;     1 1 1 MANUAL OUTPUT MODE CB2 HELD HI
  133. 675 ;
  134. 680 ;$XX0D [181]ERRUPT FLAGS
  135. 685 ;BIT 0 CA2 PIN ACTIVE TRANSISTI[145] CLEARED BY [135]ING P[176]T A
  136. 690 ;BIT 1 CA1 PIN ACTIVE TRANSISTI[145] CLEARED BY [135]ING P[176]T A
  137. 695 ;BIT 2 COMP[136]I[145] OF 8 SH[139]TS CLEARED BY [135] [176] WRITE SH[139]T REG
  138. 700 ;BIT 3 CB2 PIN ACTIVE TRANSISTI[145] CLEARED BY [135] [176] WRITE P[176]T B
  139. 705 ;BIT 4 CB1 PIN ACTIVE TRANSISTI[145] CLEARED BY [135] [176] WRITE P[176]T B
  140. 710 ;BIT 5 TIMER #2 TIMED OUT CLEARED BY TIMER 2 LO [175] WRITE TIMER 2
  141. 715 ;BIT 6 TIMER #1 TIMEED OUT CLEARED SAME AS 2
  142. 720 ;BIT 7 IRQ STATUS CLEARED BY ROM ROUTINE
  143. 725 ;
  144. 730 ;$XX0E [181]ERRUPT ENABLE
  145. 735 ;
  146. 740 ;BIT 0 CA2 [181]ERRUPT ENABLE
  147. 745 ;BIT 1 CA1   "
  148. 750 ;BIT 2 SHIFT INTERRUPT ENABLE
  149. 755 ;BIT 3 CB2 INTERRUPT ENABLE
  150. 760 ;BIT 4 CB1    "
  151. 765 ;BIT 5 TIMER #2 TIME OUT ENABLE
  152. 770 ;BIT 6 TIMER #1  "
  153. 775 ;BIT 7 ENABLE CONTROL IF 0 DURING WRITE 1'S IN 0 TO 6 CLEARED ENABLE REG
  154. 780 ;IF 1 BITS 0 TO 6 SET
  155. 785 ;
  156. 790 ;$XX0F PORT A NO HANDSHAKE
  157. 795 ;
  158. 800 ;SAME AS $XX01 BUT CA1 & CA2 NOT AFFECTED BY OPERATIONS
  159. 805 .FILE DISK ROM 1
  160.