You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

166 lines
8.5 KiB

  1. PAL20X10 PAL DESIGN SPECIFICATION
  2. VP2 BIRKNER/KAMZI/UDI 7/9/81
  3. CHAR/CURS GENERATOR
  4. MMI SUNNYVALE, CALIFORNIA
  5. CK /DTCNT0 /DTCNT1 /DTCNT2 /INITS /SWAPC /CHAR0 /CURS0 /BS /WRITE /INCSCR GND
  6. /OC /CURS1 /CHAR1 /CURS2 /CHAR2 /CURS3 /CHAR3 /CURS4 /CHAR4 /CURS5 /CHAR5 VCC
  7. CHAR1 := SWAPC*/INITS*CURS1 ;SWAP WITH CURS
  8. + /SWAPC*/INITS*DTCNT0*DTCNT1*DTCNT2*CHAR0 ;INC
  9. :+:/SWAPC*/INITS*CHAR1 ;HOLD
  10. CHAR2 := SWAPC*/INITS*CURS2 ;SWAP WITH CURS
  11. + /SWAPC*/INITS*DTCNT0*DTCNT1*DTCNT2 ;INC
  12. * CHAR0*CHAR1
  13. :+:/SWAPC*/INITS*CHAR2 ;HOLD
  14. CHAR3 := SWAPC*/INITS*CURS3 ;SWAP WITH CURS
  15. + /SWAPC*/INITS*DTCNT0*DTCNT1*DTCNT2 ;INC
  16. * CHAR0*CHAR1*CHAR2
  17. :+:/SWAPC*/INITS*CHAR3 ;HOLD
  18. CHAR4 := SWAPC*/INITS*CURS4 ;SWAP WITH CURS
  19. + /SWAPC*/INITS*DTCNT0*DTCNT1*DTCNT2 ;INC
  20. * CHAR0*CHAR1*CHAR2*CHAR3
  21. :+:/SWAPC*/INITS*CHAR4 ;HOLD
  22. CHAR5 := SWAPC*/INITS/CURS5 ;SWAP WITH CURS
  23. + /SWAPC*/INITS*DTCNT0*DTCNT1*DTCNT2 ;INC
  24. * CHAR0*CHAR1*CHAR2*CHAR3*CHAR4
  25. :+:/SWAPC*/INITS*CHAR5 ;HOLD
  26. CURS1 := SWAPC*/INITS*/INCSCR*CHAR1 ;SWAP WITH CHAR
  27. + /SWAPC*/INITS*/INCSCR*CURS1 ;HOLD
  28. :+:/SWAPC*/INITS*/INCSCR ;INC
  29. * WRITE* DTCNT2*DTCNT1*/DTCNT0*CURS0
  30. CURS2 := SWAPC*/INITS*/INCSCR*CHAR2 ;SWAP WITH CHAR
  31. + /SWAPC*/INITS*/INCSCR*CURS2 ;HOLD
  32. :+:/SWAPC*/INITS*/INCSCR ;INC
  33. * WRITE* DTCNT2*DTCNT1*/DTCNT0
  34. * CURS0* CURS1
  35. CURS3 := SWAPC*/INITS*/INCSCR*CHAR3 ;SWAP WITH CHAR
  36. + /SWAPC*/INITS*/INCSCR*CURS3 ;HOLD
  37. :+:/SWAPC*/INITS*/INCSCR ;INC
  38. * WRITE* DTCNT2*DTCNT1*/DTCNT0
  39. * CURS0* CURS1*CURS2
  40. CURS4 := SWAPC*/INITS*/INCSCR*CHAR4 ;SWAP WITH CHAR
  41. + /SWAPC*/INITS*/INCSCR*CURS4 ;HOLD
  42. :+:/SWAPC*/INITS*/INCSCR ;INC
  43. * WRITE* DTCNT2*DTCNT1*/DTCNT0
  44. * CURS0* CURS1*CURS2*CURS3
  45. CURS5 := SWAPC*/INITS*/INCSCR*CHAR5 ;SWAP WITH CHAR
  46. + /SWAPC*/INITS*/INCSCR*CURS5 ;HOLD
  47. :+:/SWAPC*/INITS*/INCSCR ;INC
  48. * WRITE* DTCNT2*DTCNT1*/DTCNT0
  49. * CURS0* CURS1*CURS2*CURS3*CURS4
  50. FUNCTION TABLE
  51. CK DTCNT2 DTCNT1 DTCNT0 INITS SWAPC BS WRITE INCSCR /OC CURS5 CURS4
  52. CURS3 CURS2 CURS1 CURS0 CHAR5 CHAR4 CHAR3 CHAR2 CHAR1 CHAR0
  53. ; I
  54. ; I S W N
  55. ; N W R C
  56. ; I A I S /
  57. ; C DTCNT T P B T C O CURS CHAR
  58. ; K 210 S C S E R C 54321 0 54321 0 COMMENTS
  59. ---------------------------------------------------------------------
  60. C XXX H X X X X L LLLLL L LLLLL L INITIALIZE CHAR AND CURS
  61. C LLL L L X X L L LLLLL L LLLLL H INCREMENT CHAR, HOLD CURS
  62. C LLH L L X X L L LLLLL L LLLLL H HOLD CHAR AND CURS
  63. C LHL L L X X L L LLLLL L LLLLL H HOLD CHAR AND CURS
  64. C LHH L L X X L L LLLLL L LLLLL H HOLD CHAR AND CURS
  65. C HLL L L X X L L LLLLL L LLLLL H HOLD CHAR AND CURS
  66. C HLH L L X X L L LLLLL L LLLLL H HOLD CHAR AND CURS
  67. C HHL L L X X L L LLLLL L LLLLL H HOLD CHAR AND CURS
  68. C HHH L L X X L L LLLLL L LLLLH H INCREMENT CHAR
  69. C LLL L L X X L L LLLLL L LLLLH L HOLD CHAR AND CURS
  70. C LLH L L X X L L LLLLL L LLLLH L HOLD CHAR AND CURS
  71. C HHH L L X X L L LLLLL L LLLLH L INCREMENT CHAR
  72. C LLL L L X X L L LLLLL L LLLLH H CHAR = 3
  73. C LLH L L X X L L LLLLL L LLLLH H HOLD CHAR AND CURS
  74. C LHL L L X X L L LLLLL L LLLLH H HOLD CHAR AND CURS
  75. C LHH L H X X L L LLLLH H LLLLL L SWAP CHAR AND CURS
  76. C HLL L L X X L L LLLLH H LLLLL H SET CHAR0
  77. C HHH L L X X L L LLLLH H LLLLH H INCREMENT CHAR TO 3
  78. C HHH L L X X L L LLLLH H LLLHL H INCREMENT CHAR, HOLD CURS
  79. C LLL L L X X L L LLLLH H LLLHL L CHAR = 4
  80. C HHL L L X L L L LLLLH H LLLHL L HOLD CHAR AND CURS
  81. C HHH L L X X L L LLLLH H LLLHL L INCREMENT CHAR
  82. C LLL L L X X L L LLLLH H LLLHL H CHAR = 5
  83. C HHH L L X X L L LLLLH H LLLHH H INCREMENT CHAR
  84. C LLL L L X X L L LLLLH H LLLHH L CHAR = 6
  85. C LLL L L X X L L LLLLH H LLLHH H CHAR = 7
  86. C HHH L L X X L L LLLLH H LLHLL H INCREMENT CHAR
  87. C HHH L L X X L L LLLLH H LLHLL L CHAR = 8
  88. C HHH L L X X L L LLLLH H LLHLH H INCREMENT CHAR TO 11
  89. C LLL L L X X L L LLLLH H LLHLH H CHAR = 11
  90. C HHH L L X X L L LLLLH H LLHHL H SET CHAR0, INC CHAR BY 2
  91. C HHH L L X X L L LLLLH H LLHHH H CHAR = 15
  92. C HHH L L X X L L LLLLH H LHLLL H CHAR = 17
  93. C HHL L L X H L L LLLHL H LHLLL H INCREMENT CURS
  94. C HHH L L X X L L LLLHL L LHLLH H CHAR = 19, CURS = 4
  95. C HHL L L X H L L LLLHH H LHLLH H CURS = 7
  96. C HHH L L X X L L LLLHH H LHLHL H CHAR = 21
  97. C HHL L L X H L L LLHLL H LHLHL H CURS = 9
  98. C HHH L L X X L L LLHLL H LHLHH H CHAR = 23
  99. C HHL L L X H L L LLHLH H LHLHH H CURS = 11
  100. C HHH L L X X L L LLHLH H LHHLL H CHAR = 23
  101. C HHL L L X H L L LLHHL H LHHLL H CURS = 13
  102. C HHH L L X X L L LLHHL H LHHLH H CHAR = 27
  103. C HHL L L X H L L LLHHH H LHHLH H CURS = 15
  104. C HHH L L X X L L LLHHH H LHHHL H CHAR = 29
  105. C HHH L L X X L L LLHHH H LHHHH H CHAR = 31
  106. C HHH L L X X L L LLHHH H HLLLL H CHAR = 33
  107. C HHH L L X X L L LLHHH H HLLLH H CHAR = 35
  108. C HHH L L X X L L LLHHH H HLLHL H CHAR = 37
  109. C HHH L L X X L L LLHHH H HLLHH H CHAR = 39
  110. C HHH L L X X L L LLHHH H HLHLL H CHAR = 41
  111. C HHH L L X X L L LLHHH H HLHLH H CHAR = 43
  112. C HHH L L X X L L LLHHH H HLHHL H CHAR = 45
  113. C HHH L L X X L L LLHHH H HLHHH H CHAR = 47
  114. C HHH L L X X L L LLHHH H HHLLL H CHAR = 49
  115. C HHH L L X X L L LLHHH H HHLLH H CHAR = 51
  116. C HHH L L X X L L LLHHH H HHLHL H CHAR = 53
  117. C HHH L L X X L L LLHHH H HHLHH H CHAR = 55
  118. C HHH L L X X L L LLHHH H HHHLL H CHAR = 57
  119. C HHH L L X X L L LLHHH H HHHLH H CHAR = 59
  120. C HHH L L X X L L LLHHH H HHHHL H CHAR = 61
  121. C HHH L L X X L L LLHHH H HHHHH H CHAR = 63
  122. C LLL L L X X L L LLHHH H HHHHH H CHAR = 63, DTCNT = 0
  123. C LLH L L X X L L LLHHH H HHHHH H CHAR = 63, DTCNT = 1
  124. C LHL L L X X L L LLHHH H HHHHH H CHAR = 63, DTCNT = 2
  125. C LHH L L X X L L LLHHH H HHHHH H CHAR = 63, DTCNT = 3
  126. C HLL L L X X L L LLHHH H HHHHH H CHAR = 63, DTCNT = 4
  127. C HLH L L X X L L LLHHH H HHHHH H CHAR = 63, DTCNT = 5
  128. C HHL L L X H L L LHLLL H HHHHH H INCREMENT CURS
  129. C HHH L L X X L L LHLLL L LLLLL H CURS = 14, INCREMENT CHAR
  130. C HHH L L X X L L LHLLL L LLLLL L CURS = 14, CHAR = 0
  131. ----------------------------------------------------------------------
  132. DESCRIPTION
  133. "CHAR" AND "CURS" COUNT THE NUMBER OF CHARACTERS PER LINE. THEY ARE ALSO USED
  134. AS POINTERS TO THE RAM. "CURS" IS USED WHEN A CHARACTER IS WRITTEN INTO THE
  135. RAM AND "CHAR" WHEN A CHARACTER IS READ FROM THE RAM. "CURS" IS ALWAYS
  136. POINTED TO THE NEXT AVAILABLE LOCATION IN THE RAM WHERE A NEW CHARACTER
  137. CAN BE STORED.
  138. "CHAR" IS INCREMENTED AT THE END OF 8 PIXELS MEANING IT COUNTS AFTER EACH
  139. CHARACTER. IT COUNTS FROM 0 TO 63 ALTHOUGH ONLY 48 CHARACTERS ARE VISIBLE.
  140. THE HORIZONTAL SYNC PULSE IS GIVEN BETWEEN ECHARACTERS 56 AND 59. DURING
  141. THE COUNTS OF CHAR FROM 48 TO 63, BLACK SIGNALS ARE TRANSMITTED TO THE SCREEN.
  142. "CURS" IS INCREMENTED FOR ANY OPERATION ONT THE KEY BPARD. THE TWO POINTERS
  143. USE THE RAM IN THE INTERLIVED FASHION. READ IS DONE EVERY CYCLE, BUT WRITE
  144. IS DONE ONLY WHEN A WRITE SIGNAL IS GIVEN. THE WRITE SIGNAL IS SET
  145. WHEN A NEW CHARACTER ENTERS THE SYSTEM THROUGH THE RS232 PORT.
  146. THE FUNCTION TABLE ABOVE DESCRIBES OPERATIONS OF READ AND WRITE FOR A
  147. CERTAIN LINE. WHEN THIS LINE WAS PRINTED, 64 CHARACTERS WHERE READ AND
  148. 15 CHARACTERS WERE WRITTEN.
  149. SIGNALS CHAR0, CURS0, SWAPC, WRITE AND INCSCR ARE DERIVED IN PAL VP8.