Advertisement
Guest User

Untitled

a guest
Dec 15th, 2017
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.27 KB | None | 0 0
  1. ;
  2. ; DisplaySegE.sflisp
  3. ;
  4.  
  5. DIPSWITCH: EQU $FC
  6. SEGMENT7: EQU $FB
  7. SEG_ERROR EQU $79
  8.  
  9. ORG $20
  10. DisplaySegE: LDX #Segmentkod
  11. DisplaySegE_1: LDA DIPSWITCH
  12. CMPA #10
  13. BCS DisplaySegE_2
  14. LDA #SEG_ERROR
  15. BRA DisplaySegE_3
  16. DisplaySegE_2: LDA A,X
  17. DisplaySegE_3: STA SEGMENT7
  18. JMP DisplaySegE_1
  19.  
  20. ORG $70
  21. Segmentkod: FCB $3F,$06,$5B,$4F,$66,$6D,$FD,$07,$7F,$EF
  22.  
  23. ORG $FF
  24. FCB DisplaySegE
  25. ;
  26. ; RunDiodeDelay
  27. ;
  28.  
  29. LED: EQU $FB
  30.  
  31. ORG $20
  32. RunDiodeDelay: LDSP #$10
  33. ANDCC #$FE
  34. LDA #1
  35.  
  36. RunDiodeDelay_1:
  37. STA LED
  38. ASLA
  39.  
  40. JSR Delay
  41. BCS RunDiodeDelay
  42. JMP RunDiodeDelay_1
  43.  
  44. Delay: PSHA
  45. PSHC
  46. LDA #10
  47. Delay_1: DECA
  48. BNE Delay_1
  49. PULC
  50. PULA
  51. RTS
  52.  
  53. ORG $FF
  54. FCB RunDiodeDelay
  55. ;
  56. ; Lab 4 3A
  57. ;
  58.  
  59. OUTPORT: EQU $FB
  60.  
  61. ORG $70
  62. Start: LDA #$05
  63. STA OUTPORT
  64.  
  65. LDA #$06
  66. STA OUTPORT
  67.  
  68. LDA #$0A
  69. STA OUTPORT
  70.  
  71. LDA #$09
  72. STA OUTPORT
  73.  
  74. JMP Start
  75. ORG $FF
  76. FCB Start
  77. ;
  78. ; Lab_4-3B
  79. ;
  80.  
  81. INPORT: EQU $FC
  82. OUTPORT: EQU $FB
  83.  
  84. ORG $70
  85. Start:
  86. LDSP $20
  87. LDX #$05
  88. LDA INPORT
  89. JSR Delay
  90. LDA state_index
  91. LDA A,X
  92. STA OUTPORT
  93. JSR NextState
  94. JMP Start
  95. Delay:
  96. PSHA
  97. PSHC
  98. LDA #10
  99. Delay_1:
  100. DECA
  101. BNE Delay_1
  102. PULC
  103. PULA
  104. RTS
  105. NextState:
  106. LDA state_index
  107. INCA
  108. ANDA #3
  109. STA state_index
  110. RTS
  111.  
  112. ORG $10
  113. state_index: FCB $00
  114. state_vector: ORG $05
  115. FCB $05,$06,$0A,$09
  116.  
  117. ORG $FF
  118. FCB Start
  119. Inport EQU $FC
  120. Utport EQU $FB
  121. DelayC1 EQU $10 ;Dessa konstanter styr hur lång fördröjning Delay1s orsakar.
  122. DelayC2 EQU $1 ;Ändra dem eventuellt i labbet så att fördröjnigen blir rimligt lång.
  123.  
  124. ORG $FF
  125. FCB $20
  126.  
  127. ORG $20
  128. LDSP #$D0
  129. Main:
  130. JSR Translate
  131. BRA Main
  132.  
  133. ReadAscii:
  134. LDA Inport
  135. BITA #1
  136. BNE ReadAscii
  137. ReadAscii_1:
  138. LDA Inport
  139. BITA #1
  140. BEQ ReadAscii_1
  141. ASRA
  142. RTS
  143.  
  144.  
  145.  
  146. BlinkLight:
  147. PSHA
  148. LDY #$FF
  149. STY Utport
  150. BITA #$80
  151. BNE ShortBlink
  152. BRA LongBlink
  153. BlinkEnd:
  154. CLR Utport
  155. JSR Delay1s
  156. PULA
  157. RTS
  158.  
  159. ShortBlink:
  160. JSR Delay1s
  161. JSR Delay1s
  162. JSR Delay1s
  163. JSR Delay1s
  164. BRA BlinkEnd
  165.  
  166. LongBlink:
  167. JSR Delay1s
  168. BRA BlinkEnd
  169.  
  170. Translate:
  171. CLR Utport
  172. JSR ReadAscii
  173. SUBA #$41
  174. LSLA
  175. PSHA
  176. LDX #MorseCode
  177. LDA A,X
  178. STA Count
  179. PULA
  180. INCA
  181. LDA A,X
  182.  
  183. Loop321:
  184. TST Count
  185. BEQ Klart
  186. JSR BlinkLight
  187. LSLA
  188. DEC Count
  189. BRA Loop321
  190.  
  191. Klart:
  192. RTS
  193. ; Orsakar en fördröjning på ungefär 1s i simulatorn (vid snabb exekveringshastighet)
  194. ; Ändrar inga register
  195. Delay1s:
  196. PSHA
  197. PSHX
  198. PSHC
  199. LDX #DelayC2
  200. Delay1s_loop2:
  201. LDA #DelayC1
  202. Delay1s_loop:
  203. DECA
  204. BNE Delay1s_loop
  205. LEAX -1,X
  206. CMPX #0
  207. BNE Delay1s_loop2
  208. PULC
  209. PULX
  210. PULA
  211. RTS
  212.  
  213. ; Data - Variabler
  214. Count:
  215. RMB 1
  216.  
  217. ; Data - Konstanter
  218. MorseCode:
  219. FCB 2,%01000000 ;'A'
  220. FCB 4,%10000000 ;'B'
  221. FCB 4,%10100000 ;'C'
  222. FCB 3,%10000000 ;'D'
  223. FCB 1,%00000000 ;'E'
  224. FCB 4,%00100000 ;'F'
  225. FCB 3,%11000000 ;'G'
  226. FCB 4,%00000000 ;'H'
  227. FCB 2,%00000000 ;'I'
  228. FCB 4,%00010000 ;'J'
  229. FCB 3,%10100000 ;'K'
  230. FCB 4,%01000000 ;'L'
  231. FCB 2,%11000000 ;'M'
  232. FCB 2,%10000000 ;'N'
  233. FCB 3,%11100000 ;'O'
  234. FCB 4,%01100000 ;'P'
  235. FCB 4,%11010000 ;'Q'
  236. FCB 3,%01000000 ;'R'
  237. FCB 3,%00000000 ;'S'
  238. FCB 1,%10000000 ;'T'
  239. FCB 3,%00100000 ;'U'
  240. FCB 4,%00010000 ;'V'
  241. FCB 3,%00100000 ;'W'
  242. FCB 4,%10010000 ;'X'
  243. FCB 4,%10110000 ;'Y'
  244. FCB 4,%11000000 ;'Z'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement