home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / Information / 256KB.UTILS.SFX / test.a < prev    next >
Encoding:
Text File  |  1993-06-23  |  4.7 KB  |  399 lines

  1. ;
  2. ; 256 KB RAM TEST FOR COMMODORE 64
  3. ;
  4. ;
  5. .OPT NOL
  6. INDEX =$22
  7. INDEX1 =$24
  8. HIBASE =648
  9. PA =$DFC0
  10. PAS =$DFC1
  11. PB =$DFC2
  12. PBS =$DFC3
  13. TESTP0 =$A000
  14. VIC =$D000
  15. VICBNK =$DD00
  16. BUFFER =$4100
  17. ;
  18. AT=255
  19. RPT=254
  20. ;
  21. CHROUT =$FFD2
  22. CLALL =$FFE7
  23. ;
  24. ; BASIC PROGRAM
  25. *=$0801
  26.  .WORD EOP,1986
  27.  .BYTE $9E,' 2062',0
  28. EOP .WORD 0
  29. ;
  30.  JSR CLALL
  31.  LDA #3
  32.  STA VIC+33
  33.  LDA #6
  34.  STA VIC+32
  35.  JSR STRING
  36.  .BYT 144,147,8,14
  37.  .BYT AT,2,5,'256K',194,32,210,193,205,' TESTI ',195,'OMMODORE 64'
  38.  .BYT AT,6,5,193,'LUSTUS'
  39.  .BYT AT,16,5,210,193,205,' LOHKO  '
  40.  .BYT AT,8,0,0
  41. ;
  42.  LDX #0
  43. TEST00 JSR STRING
  44.  .BYT '     ',207,'SOITEKOODAUS LOHKO ',0
  45.  TXA
  46.  ORA #'0'
  47.  JSR CHROUT
  48.  JSR STRING
  49.  .BYT 13,13,0
  50.  INX
  51.  CPX #4
  52.  BCC TEST00
  53. ;
  54. ; ENSIMM[INEN TESTI: ALUSTUS
  55.  JSR STRING
  56.  .BYT AT,6,14,0
  57. ;
  58. ; EP[ALUSTUS
  59.  LDA #0
  60.  STA PAS
  61.  STA PBS
  62.  STA PA
  63.  STA PB
  64. ;
  65. ; VARSINAINEN ALUSTUSTESTI
  66.  LDA #%00000100
  67.  STA PAS
  68.  STA PBS
  69.  LDA PA
  70.  CMP #$DC
  71.  BNE TEST01
  72.  LDX #IDSTR1-IDSTR0-1
  73. TEST03 LDA IDSTR0,X
  74.  STA $8000,X
  75.  LDA IDSTR1,X
  76.  STA $C000,X
  77.  DEX
  78.  BPL TEST03
  79. ; CA2  ON TESTATTU JA HYV[KSI
  80. ; HAVAITTU, JATKETAAN
  81.  LDX #11
  82. TEST02 LDA INIT,X
  83.  STA PA,X
  84.  DEX
  85.  BPL TEST02
  86. ;
  87.  LDX #IDSTR1-IDSTR0-1
  88. TEST04 LDA IDSTR0,X
  89.  CMP $8000,X
  90.  BNE TEST01
  91.  LDA IDSTR1,X
  92.  CMP $C000,X
  93.  BNE TEST01
  94.  DEX
  95.  BPL TEST04
  96.  BMI CODE00
  97. TEST01 JMP FAULT
  98. ;
  99. ; TESTAA OSOITEKOODAUS LOHKOSSA 0
  100. ;
  101. CODE00 JSR OK
  102.  JSR STRING
  103.  .BYT AT,8,29,0
  104.  LDX #0
  105. CODE01 LDA CODE03,X
  106.  STA BUFFER,X
  107.  INX
  108.  CPX #CODE99-CODE03
  109.  BCC CODE01
  110. SEI
  111.  JMP BUFFER
  112. ;
  113. ; VARSINAINEN TESTI
  114. ; TALLENTAA JOKA LOHKON TOISEKSI
  115. ; TAVUKSI KO. LOHKON NUMERON
  116. ; (NMI T[M[N AIKANA SEKOITTAA
  117. ; TIETOKONEEN)
  118. CODE03 LDX #0
  119. CODE04 TXA
  120.  ORA #$D0
  121.  STA PA
  122.  STX 2
  123.  INX
  124.  CPX #16
  125.  BCC CODE04
  126. ;
  127.  DEX
  128. CODE05 TXA
  129.  ORA #$D0
  130.  STA PA
  131.  CPX 2
  132.  SEC
  133.  BNE CODE06
  134.  DEX
  135.  BPL CODE05
  136.  CLC
  137. CODE06 LDA #$DC
  138.  STA PA
  139.  JMP CODE99
  140. ;
  141. CODE99 BCC CODE07
  142.  JMP FAULT
  143. ;
  144. CODE07 JSR OK
  145. ;
  146. ; TESTAA OSOITEKOODAUS LOHKOSSA 1
  147. ;
  148.  JSR STRING
  149.  .BYT AT,10,29,0
  150.  LDX #0
  151. CODE10 TXA
  152.  ASL A
  153.  ASL A
  154.  ASL A
  155.  ASL A
  156.  ORA #$0C
  157.  STA PA
  158.  CPX $4002
  159.  BNE CODE11
  160.  INX
  161.  CPX #16
  162.  BCC CODE10
  163.  LDA #$DC
  164.  STA PA
  165. ;
  166.  JSR OK
  167. ;
  168. ; TESTAA OSOITEKOODAUS LOHKOSSA 2
  169. ;
  170.  JSR STRING
  171.  .BYT AT,12,29,0
  172.  LDX #0
  173. CODE20 TXA
  174.  ORA #$F0
  175.  STA PB
  176.  CPX $8002
  177.  BNE CODE11
  178.  INX
  179.  CPX #16
  180.  BCC CODE20
  181. ;
  182.  JSR OK
  183. ;
  184. ; TESTAA OSOITEKOODAUS LOHKOSSA 3
  185. ;
  186.  JSR STRING
  187.  .BYT AT,14,29,0
  188.  LDX #0
  189. CODE30 TXA
  190.  ASL A
  191.  ASL A
  192.  ASL A
  193.  ASL A
  194.  ORA #$0E
  195.  STA PB
  196.  CPX $C002
  197.  BNE CODE11
  198.  INX
  199.  CPX #16
  200.  BCC CODE30
  201.  LDA #$FE
  202.  STA PB
  203.  JSR OK
  204.  JMP BITTST
  205. ;
  206. CODE11 JMP FAULT
  207. ;
  208. ;
  209. ; TESTAA RAMIN KAIKKIEN BITTIEN
  210. ; TOIMIVUUS - KOPIOI ENSIN ITSENS[
  211. ; LOHKOON 15
  212. ;
  213. BITTST LDA #$FC
  214.  STA PA
  215.  LDY #0
  216.  STY INDEX
  217.  STY INDEX+1
  218.  STY INDEX1
  219.  LDA #$40
  220.  STA INDEX1+1
  221. BITT00 LDA (INDEX),Y
  222.  STA (INDEX1),Y
  223.  INY
  224.  BNE BITT00
  225.  INC INDEX+1
  226.  INC INDEX1+1
  227.  BPL BITT00
  228. ; SIIRR[ MERKKIGENERAATTORI
  229.  LDY #0
  230.  STY INDEX
  231.  STY INDEX1
  232.  LDA #$F8
  233.  STA INDEX+1
  234.  LDA #$D8
  235.  STA INDEX1+1
  236.  SEI
  237.  LDA #%00110011
  238.  STA 1
  239. BITT01 LDA (INDEX1),Y
  240.  STA (INDEX),Y
  241.  INY
  242.  BNE BITT01
  243.  INC INDEX1+1
  244.  INC INDEX+1
  245.  BNE BITT01
  246.  LDA #%00110111
  247.  STA 1
  248.  CLI
  249. ;
  250. ; MUUTA VICIN ARVOT
  251.  LDA #%00011110
  252.  STA VIC+24
  253.  LDA VICBNK
  254.  AND #%11111100
  255.  STA VICBNK
  256. ; VAIHDA LOHKOA
  257.  LDA #$DF
  258.  STA PA
  259. ; OHJELMAN TOIMII NYT $3F000:SSA
  260. ;
  261.  LDA #0
  262.  STA INDEX1
  263.  LDA #$0F
  264.  STA INDEX1+1
  265. BITT02 JSR BITT10
  266.  INC INDEX1
  267.  LDA INDEX1
  268.  CMP #15
  269.  BCC BITT02
  270. ;
  271. ; SIIRR[ LOHKO TAKAISIN
  272.  LDA #$CF
  273.  STA PA
  274.  LDY #0
  275.  STY INDEX
  276.  STY INDEX+1
  277.  STY INDEX1
  278.  LDA #$40
  279.  STA INDEX1+1
  280. BITT09 LDA (INDEX),Y
  281.  STA (INDEX1),Y
  282.  INY
  283.  BNE BITT09
  284.  INC INDEX+1
  285.  INC INDEX1+1
  286.  BPL BITT09
  287. ;
  288.  LDA #%00010110
  289.  STA VIC+24
  290.  LDA VICBNK
  291.  ORA #%00000011
  292.  STA VICBNK
  293. ; VAIHDA LOHKOA
  294.  LDA #$DC
  295.  STA PA
  296. ; OHJELMAN TOIMII NYT $3C000:SSA
  297. ; KUTEN NORMAALISTI
  298.  LDA #15
  299.  STA INDEX1
  300.  LDA #$0C
  301.  STA INDEX1+1
  302.  JSR BITT10
  303. ;
  304. ; TESTIN L[P[ISY
  305. ;
  306.  JSR STRING
  307.  .BYT AT,19,5,212,'ESTI L[P[ISTY.',0
  308. PASS JMP PASS
  309. ;
  310. BITT10 LDA INDEX1
  311.  ASL A
  312.  ASL A
  313.  ASL A
  314.  ASL A
  315.  ORA INDEX1+1
  316.  STA PA
  317.  JSR STRING
  318.  .BYT AT,16,15,0
  319.  LDA INDEX1
  320.  ORA #'0'
  321.  CMP #':'
  322.  BCC BITT12
  323.  ADC #134
  324. BITT12 JSR CHROUT
  325.  JSR STRING
  326.  .BYT AT,16,19,0
  327.  LDA #$40
  328.  STA INDEX+1
  329.  LDY #0
  330.  STY INDEX
  331. BITT03 LDA INDEX+1
  332. BITT04 STA (INDEX),Y
  333.  INY
  334.  BNE BITT04
  335.  INC INDEX+1
  336.  BPL BITT03
  337. ;
  338.  LDA #$40
  339.  STA INDEX+1
  340. BITT05 LDA INDEX+1
  341. BITT06 CMP (INDEX),Y
  342.  BNE BITT11
  343.  INY
  344.  BNE BITT06
  345.  INC INDEX+1
  346.  BPL BITT05
  347. ;
  348.  LDA #$40
  349.  STA INDEX+1
  350.  LDA #%10101010
  351. BITT07 STA (INDEX),Y
  352.  CMP (INDEX),Y
  353.  BNE BITT11
  354.  INY
  355.  BNE BITT07
  356.  INC INDEX+1
  357.  BPL BITT07
  358. ;
  359.  LDA #$40
  360.  STA INDEX+1
  361.  LDA #%01010101
  362. BITT08 STA (INDEX),Y
  363.  CMP (INDEX),Y
  364.  BNE BITT11
  365.  INY
  366.  BNE BITT08
  367.  INC INDEX+1
  368.  BPL BITT08
  369. ;
  370.  JMP OK
  371. ;
  372. BITT11
  373. ;
  374. ; TULOSTA VIRHEILMOITUS JA JUMIUDU
  375. FAULT JSR STRING
  376.  .BYT 'VIKA.',0
  377. FAUL00 JMP FAUL00
  378. ;
  379. ; TULOSTA OK.
  380. OK JSR STRING
  381.  .BYT 207,'K.',0
  382.  RTS
  383. ;
  384. ; ALUSTUSTIEDOT
  385. INIT .BYT $DC,%00110100
  386.  .BYT $FE,%00000100
  387.  .BYT $FF,0,$FF,0
  388.  .BYT $DC,%00000100
  389.  .BYT $FE,%00000100
  390. ;
  391. ; TUNNISTUSTEKSTIT
  392. ;
  393. IDSTR0 .BYT 'CBM256:38'
  394. IDSTR1 .BYT 'CBM256:3C'
  395. ;
  396. .LIB STRING.A
  397. ;
  398. .END
  399.