home *** CD-ROM | disk | FTP | other *** search
/ Commodore Disk User Volume 4 #2 / Commodore_Disk_User_Vol.4_2_1990_-.d64 / equatev1.1.asm < prev    next >
Encoding:
Assembly Source File  |  1990-01-01  |  3.2 KB  |  160 lines

  1. E
  2. _*********************************************************
  3. _*                                                       *
  4. _*       MODULE NAME : equatev1.1.asm                    *
  5. _*                     CONTAINS GLOBAL EQUATES AND       *
  6. _*                     ZERO PAGE DEFS, PLUS OTHER GLOBAL *
  7. _*                     MEMORY LOCATIONS.                 *
  8. _*                                                       *
  9. _*                mAINTENANCE LOG                        *
  10. _*                ---------------                        *
  11. _* 24/02/89    00:30               INITIAL CODING        *
  12. _*   DATE      TIME                     ACTION           *
  13. _*   ----      ----                     ------           *
  14. _* 24/02/89    21:55                INITIAL CODING       *
  15. _* 06/04/89    22:40             ADDED ZERO PAGE DEFNS   *
  16. _* 21/04/89    21:00             ADDED SCREEN DEFNS      *
  17. _* 03/05/89    17:45             MODIFIED LOAD SECTION   *
  18. _* 19/05/89    20:55             SAVESTK EQUATE ADDED    *
  19. _*********************************************************
  20.  
  21. _
  22. _ cHARACTER EQUATES
  23. _
  24.  
  25. CONFIG= $00      _ ram 0, i/o AND ALL romS ram $0000 - $3fff
  26. CR= 13_ cARRIAGE RETURN
  27. DEL= 20_ BACK SPACE
  28. SPACE= 32
  29. COMMA= 44
  30.  
  31. _ OPERATING SYSTEMS PAGE ZERO AND PAGE ONE mmu VALUES
  32.  
  33. OSP0LOW= 0
  34. OSP0HI= 0
  35. OSP1LOW= 1
  36. OSP1HI= 0
  37.  
  38. _ OTHER USEFUL EQUATES
  39.  
  40. MAXLEN= 16_ MAXIMUM NAME LENGTH
  41. PAGEND= 255                 _ FINAL LOCATION IN A PAGE
  42.  
  43. _ kERNAL & ROUTINE dEFINITIONS
  44.  
  45. LDAFAR= $02A2
  46. STAFAR= $02AF
  47. BASIN= $C012
  48. IRQRET= $FF33
  49. NMIRET= $FF33
  50.  
  51. _ memory defintions
  52.  
  53. _
  54. _ ZERO PAGE AREA (PLACED HERE SO THAT ASSEMBLER DEFINES THESE LABELS FIRST 
  55. _                 AND SO IT DOESN'T TAKE A ZERO PAGE LABEL AND BECAUSE IT
  56. _                 IS UNDEFINED, TAKE 2 BYTES FOR THE ADDRESS IN THIS MODULE
  57. _                 STRUCTURE.)
  58. _
  59. _ pROGRAM TABLE LOCATIONS
  60.  
  61. TABPNTR= $40_ POINTER TO THE TABLE
  62. CURRENT= TABPNTR+2_ CURRENTLY RUNNING PROGRAM
  63.  
  64. _ mEMORY CONTROL ROUTINE ADDRESSES DO NOT RE-ORDER
  65.  
  66. RAMUSED= $50
  67. STARTRAM= RAMUSED + 1
  68. ENDRAM= STARTRAM + 2
  69. LENGTH= ENDRAM + 2
  70. GIVELEN= LENGTH + 2
  71. STORPNTR = GIVELEN + 2
  72.  
  73. _ RELOCATION ROUTINE
  74.  
  75. NEWSTART= $70
  76. NEWEND= NEWSTART + 2
  77. NEWRAM= NEWEND + 2
  78. EXECADD= NEWRAM + 1
  79. OLDADD= EXECADD + 2
  80. OLDEND= OLDADD + 2
  81. PROGPTR= OLDEND + 2
  82. CURRADD= PROGPTR + 2
  83. NEWEXEC= CURRADD + 2
  84.  
  85. _ LOADER ROUTINE ADDRESSES
  86.  
  87. ZEROPAGE= $30       
  88. PAGEONE= ZEROPAGE + 1
  89. PRITEMP= PAGEONE + 1
  90. ZEROADD= $4A
  91. IOMODE= $9D
  92. STARTLO= $AE
  93. STARTHI = $AF
  94. PRGNLEN= $B7
  95. LFN= $B8
  96. SA= $B9
  97. DEV= $BA
  98. PRGNADD= $BB
  99. PRGLODBK= $C6
  100. NAMEBANK= $C7
  101.  
  102. CHARPTR= $D0
  103.  
  104. _
  105. _ mESSAGE DISPLAY ROUTINE
  106. _
  107.  
  108. MESSPNTR= $66_ LENGTH 2
  109.  
  110. _
  111. _ nmi REQUIRED LOCATIONS
  112. _
  113.  
  114. SAVESTK= $68_ LENGTH 1
  115.  
  116. _
  117. _ sCREEN DISPLAY ROUTINE
  118. _
  119.  
  120. CURSORX= $E4
  121. CURSORY= CURSORX+1
  122. SCRADD= CURSORY+1
  123. ADD8= SCRADD+2
  124. LINEADD1= ADD8+2
  125. LINEADD2= LINEADD1+2
  126. LINE= LINEADD2+2
  127. SAVEX= LINE+1
  128. SAVEY= SAVEX+1
  129.  
  130.  
  131.  
  132.  
  133. _
  134. _ oTHER LOCATIONS REQUIRED
  135. _
  136.  
  137. LDASET= $2AA_ ldafar ROUTINE
  138. STASET= $2B9_ stafar ROUTINE
  139. IRQVEC    = $314
  140. NMIVEC    = $318
  141. BRKVEC = $316
  142. CHAR= $034A
  143. SCREEN= $0400
  144. CONFREG= $FF00
  145.  
  146. _ i/o REGISTERS
  147.  
  148. VICIRQ= $D019
  149. VICENA= $D01A
  150. RAMCONF   = $D506
  151. PAGE0LOW  = $D507
  152. PAGE0HI   = $D508
  153. PAGE1LOW  = $D509
  154. PAGE1HI   = $D50A
  155. CIAIRQ= $DC0D
  156. CIANMI= $DD0D
  157.  
  158. iend
  159.  
  160.