v0.1 of brutal tester

A test app for the Brutal Timer
This commit is contained in:
Antoine Vignau
2026-01-21 19:41:28 +01:00
parent c24de67c79
commit 07549c3cca
8 changed files with 1894 additions and 5 deletions
+1
View File
@@ -1 +1,2 @@
brutaltimer=Type(06),AuxType(2000),VersionCreate(70),MinVersion(BE),Access(E3),FolderInfo1(000000000000000000000000000000000000),FolderInfo2(000000000000000000000000000000000000)
brutaltester=Type(06),AuxType(2000),VersionCreate(70),MinVersion(BE),Access(E3),FolderInfo1(000000000000000000000000000000000000),FolderInfo2(000000000000000000000000000000000000)
+9 -5
View File
@@ -255,9 +255,9 @@ C0x4 write #2 set T2 frequency to 20 MHz clock
C0x4 write #3 set T2 frequency to Custom quartz
=> Use T2 frequency of A2-F0 clock to count 6502 cycles
C0x5 write #0 stop T1 display
C0x5 write #1 show T1 display
-> The default state is off
C0x5 write #0 stop T2 display
C0x5 write #1 show T2 display
-> The default state is stopped
-> Read status is not implemented due to chip size limit
C0x4 read T2 frequency
@@ -297,6 +297,10 @@ In the following example, let's consider that the counters are zero and the time
STA $C082,X ; 5 counted <-
For the Brutal Timer card, the number of cycles of the above routine is 13 cycles.
The cycle count is correct when you run at 1.0xx MHz (xx being the PAL/NTSC difference), but if you run on an accelerated Apple II, then you must take the speed difference into consideration.
The timebase is constant and does not change over computers, except for the PAL/NTSC difference in frequency for F0 -> 14.318/14 or 14.250/14.
To detect the presence of PAL or NTSC, you can use a 20MHz for T2, and compute the time difference between the two results.
-----------------
@@ -358,11 +362,11 @@ end RTS
end RTS
- STOP DISPLAY
LDA #0 ; stop timer display
LDA #0 ; stop T2 display
STA $C085,X
RTS
- START DISPLAY
LDA #1 ; start timer display
LDA #1 ; start T2 display
STA $C085,X
RTS
Binary file not shown.
+470
View File
@@ -0,0 +1,470 @@
*
* Brutal Timer Test
* by Plamen Vaysilov
*
* (c) 2026, Brutal Deluxe Software
*
typ BIN
org $2000
lst off
dsk brutaltester
*-------------- FIRMWARE
WNDLFT = $20
WNDWDTH = $21
WNDTOP = $22
WNDBTM = $23
CH = $24
CV = $25
dpSTRING = $fc
dpDFTVALUE = $fe
KBD = $C000
KBDSTROBE = $C010
INIT = $FB2F
TABV = $FB5B
HOME = $FC58
WAIT = $FCA8
RDKEY = $FD0C
PRBYTE = $FDDA
COUT = $FDED
*-------------- EQUATES
VERSION = 1 ; v0.x
T0 = 0
T1 = 1
T2 = 2
FREQ_A2F0 = 0
FREQ_A235 = 1
FREQ_20MHZ = 2
FREQ_CUSTOM = 3
T2_DISP_OFF = 0
T2_DISP_ON = 1
FALSE = 0
TRUE = 255
chrRET = $8d
*-------------- MACROS
@printSTRING mac
ldx #>]1
ldy #<]1
jsr printSTRING
<<<
@setDPSTRING mac
ldx #>]1
stx dpSTRING+1
ldy #<]1
sty dpSTRING
<<<
@setDPDFTVALUE mac
ldx #>]1
stx dpDFTVALUE+1
ldy #<]1
sty dpDFTVALUE
<<<
*-------------- CODE
jsr HOME
@printSTRING #strHELLO
*---
loopTEST @printSTRING #strMENU
jsr RDKEY
jsr COUT
cmp #"0"
bne noTEST0
@printSTRING #strGOODBYE
jsr INIT
rts
noTEST0 cmp #"1" ; set slot & launch tests
bne noTEST1
jmp doSETSLOT
noTEST1 cmp #"2" ; launch tests
bne loopTEST
jmp doTESTS
*-------------- SET SLOT AND LAUNCH TESTS...
doSETSLOT @printSTRING #strSETSLOT
jsr RDKEY
jsr COUT
cmp #"1"
bcc doSETSLOT
cmp #"7"+1
bcs doSETSLOT
sec
sbc #"0"
sta theSLOT
asl
asl
asl
asl
sta theSLOT16
* jmp loopTEST
*-------------- DO ALL TESTS
* 1- reset T1, start/stop/display/compare/reset to 0
* Can you write simple test program for automatic check cart
* ( Start/Stop timer and check value for T1. Clear and check if 0 ,
* Start/Stop T2 and check value , change Source freq and check again value .
* On/Off display )
* .This can be automatic . I will provide values of timer for different Freq .
doTESTS lda #T0 ; reset all timers
jsr resetTIMER2
lda #chrRET ; want a CR
jsr COUT
@setDPSTRING #strT1dft ; test T1
@setDPDFTVALUE #dftT1
lda #T1 ; do it
jsr testTIMER
lda #0 ; test T2
]lp sta theFREQ
asl
tax
lda tblSTRT2,x ; default string
sta dpSTRING
lda tblSTRT2+1,x
sta dpSTRING+1
lda tblDFTT2,x ; default expected value
sta dpDFTVALUE
lda tblDFTT2+1,x
sta dpDFTVALUE+1
lda theFREQ ; set frequency
jsr setT2FREQUENCY2
lda #T2 ; do it
jsr testTIMER
lda theFREQ ; next frequency
clc
adc #1
cmp #3+1
bcc ]lp
jsr testDISPLAY ; test the display
jmp loopTEST ; exit
*---
strT1dft asc "000001B5"00
strT2F0dft asc "00000000"00
strT2F1dft asc "00000100"00
strT2F2dft asc "00000200"00
strT2F3dft asc "00000300"00
tblSTRT2 da strT2F0dft
da strT2F1dft
da strT2F2dft
da strT2F3dft
tblDFTT2 da dftT2F0
da dftT2F1
da dftT2F2
da dftT2F3
dftT1 adrl 437
dftT2F0 adrl $000
dftT2F1 adrl $100
dftT2F2 adrl $200
dftT2F3 adrl $300
*-------------- TEST DISPLAY
testDISPLAY lda #0 ; set to 1MHz
jsr setT2FREQUENCY2
lda #T2 ; select T2
jsr resetTIMER2
@printSTRING #strDISPLAYOFF ; tell it
lda #T2_DISP_OFF ; turn display off
jsr doDISPLAY ; test
@printSTRING #strDISPLAYON
lda #T2_DISP_ON ; turn display on
jsr doDISPLAY ; test
jsr waitFORKEY ; wait
jmp loopTEST ; and return
*---
NBTESTS = 15
doDISPLAY jsr setT2DISPLAY2 ; turn display on/off
lda #T2 ; start timer
jsr startTIMER2
ldx #0 ; make 10 loops
]lp lda #"." ; show it
jsr COUT
jsr doTEST ; make the test
inx
cpx #NBTESTS
bcc ]lp ; loop
lda #T2 ; stop the timer
jmp stopTIMER2 ; we do not reset it
*---
strDISPLAYOFF asc 8d"Display is off "00
strDISPLAYON asc 8d"Display is on "00
*-------------- TEST & COMPARE
ds \
testTIMER sta theTIMER
jsr resetTIMER ; make it 0
jsr startTIMER ; start it
jsr doTEST ; do the test
jsr stopTIMER ; stop it
jsr readTIMER ; read value
@printSTRING #strTVALUE ; Tx want
ldx dpSTRING+1
ldy dpSTRING ; aabbccdd
jsr printSTRING
@printSTRING #strTREAD ; read...
jsr printTIMER ; show read value
ldy #0
]lp lda (dpDFTVALUE),y
cmp valTIMER,y
bne notTHESAME
iny
cpy #4
bcc ]lp
@printSTRING #strOK
jmp testRESET
notTHESAME @printSTRING #strNOTOK
*--- test the reset
testRESET jsr resetTIMER
jsr readTIMER
@printSTRING #strRESET
lda valTIMER
ora valTIMER+1
ora valTIMER+2
ora valTIMER+3
bne notRESET
@printSTRING #strOK
rts
notRESET @printSTRING #strNOTOK
rts
*---
strTVALUE asc 8d"T% want "00
strTREAD asc " read "00
strOK asc " OK"00
strNOTOK asc " NOT OK"00
strRESET asc 8d" Reset"00
*-------------- THE TEST
ds \ ; page aligned
doTEST lup 200
nop ; 2 cycles x 200
--^
rts ; 6
ds \
*-------------- BRUTAL TIMER ROUTINES
*------- Reset TIMER
resetTIMER2 sta theTIMER
resetTIMER ldx theSLOT16
lda theTIMER
sta $c080,x
rts
*------- Start TIMER
startTIMER2 sta theTIMER
startTIMER ldx theSLOT16 ; 4 ** no **
lda theTIMER ; 4 ** no **
sta $c081,x ; 5
rts ; 6
*------- Pause TIMER
pauseTIMER2 sta theTIMER
pauseTIMER ldx theSLOT16
lda theTIMER
sta $c082,x
rts
*------- Stop TIMER
stopTIMER2 sta theTIMER
stopTIMER ldx theSLOT16 ; 4 ** yes **
lda theTIMER ; 4 ** yes **
sta $c082,x ; 5 ** yes **
rts
*------- Set T2 frequency
setT2FREQUENCY2 sta theFREQ
setT2FREQUENCY ldx theSLOT16
lda theFREQ
sta $c084,x
rts
*------- Turn off/on display
setT2DISPLAY2 sta theDISPLAY
setT2DISPLAY ldx theSLOT16
lda theDISPLAY
sta $c085,x
rts
*------- Read T1 value
readTIMER lda theTIMER
cmp #T1
beq readT1
cmp #T2
beq readT2
rts
readT1 ldx theSLOT16
lda $c088,x ; T1
sta valTIMER
lda $c089,x
sta valTIMER+1
lda $c08a,x
sta valTIMER+2
lda $c08b,x
sta valTIMER+3
rts
*------- Read T2 value
readT2 ldx theSLOT16
lda $c08c,x ; T2
sta valTIMER
lda $c08d,x
sta valTIMER+1
lda $c08e,x
sta valTIMER+2
lda $c08f,x
sta valTIMER+3
rts
*------- Print timer value
printTIMER lda valTIMER+3
jsr PRBYTE
lda valTIMER+2
jsr PRBYTE
lda valTIMER+1
jsr PRBYTE
lda valTIMER
jmp PRBYTE
*---
strTHELOOP asc 8d"Loop: "00
strTIMER2 asc " / Timer: "00
strTIMER asc 8d"Timer: "00
valTIMER ds 4 ; the 32-bit value
*------- Miscellaneous
printSTRING sty printSTRING1+1
stx printSTRING1+2
printSTRING1 lda $bdbd
beq printSTRING4
ldx theTIMER
cmp #"%"
beq printSTRING2
ldx #VERSION
cmp #"@"
beq printSTRING2
ldx theSLOT
cmp #"#"
bne printSTRING3
printSTRING2 txa
ora #"0"
printSTRING3 jsr COUT
inc printSTRING1+1
bne printSTRING1
inc printSTRING1+2
lda printSTRING1+2 ; force end of routine
cmp #$c0 ; if we reach $C000
bcc printSTRING1
printSTRING4 rts
*------- waitFORKEY
waitFORKEY lda KBD
bpl waitFORKEY
sta KBDSTROBE
rts
*-------------- DATA
theTIMER ds 1 ; 1..2
theFREQ ds 1 ; 0..3
theDISPLAY ds 1 ; 0..1
theSLOT dfb 7 ; 0..7
theSLOT16 dfb $70 ; 10=slot 1, ..., 70=slot 7
strHELLO asc "Brutal Timer Auto Test v0.@"8d
asc "(c) 2026, Plamen Vaysilov &"8d
asc "Brutal Deluxe Software"00
* asc "1234567890123456789012345"
strMENU asc 8d8d
asc "1- Set slot & Test (#)"8d
asc "2- Launch tests"8d
asc "Select entry (0 to exit) > "00
strSETSLOT asc 8d
asc "Set slot (1-7) > "00
strT2FREQ0 asc "A2-F0 clock"00
strT2FREQ1 asc "A2-3.5 MHz"00
strT2FREQ2 asc "20 MHz clock"00
strT2FREQ3 asc "Custom quartz"00
strGOODBYE asc 8d"Good bye!"00
@@ -0,0 +1,871 @@
------+--------------------------+-------------+----+---------+------+-----------------------+-------------------------------------------------------------------
Line | # File Line | Line Type | MX | Reloc | Size | Address Object Code | Source Code
------+--------------------------+-------------+----+---------+------+-----------------------+-------------------------------------------------------------------
1 | 1 brutaltester.s 1 | Comment | 11 | | 0 | 00/8000 | *
2 | 1 brutaltester.s 2 | Comment | 11 | | 0 | 00/8000 | * Brutal Timer Test
3 | 1 brutaltester.s 3 | Comment | 11 | | 0 | 00/8000 | * by Plamen Vaysilov
4 | 1 brutaltester.s 4 | Comment | 11 | | 0 | 00/8000 | *
5 | 1 brutaltester.s 5 | Comment | 11 | | 0 | 00/8000 | * (c) 2026, Brutal Deluxe Software
6 | 1 brutaltester.s 6 | Comment | 11 | | 0 | 00/8000 | *
7 | 1 brutaltester.s 7 | Empty | 11 | | 0 | 00/8000 |
8 | 1 brutaltester.s 8 | Directive | 11 | | 0 | 00/8000 | typ BIN
9 | 1 brutaltester.s 9 | Directive | 11 | | 0 | 00/8000 | org $2000
10 | 1 brutaltester.s 10 | Directive | 11 | | 0 | 00/2000 | lst off
11 | 1 brutaltester.s 11 | Directive | 11 | | 0 | 00/2000 | dsk brutaltester
12 | 1 brutaltester.s 12 | Empty | 11 | | 0 | 00/2000 |
13 | 1 brutaltester.s 13 | Comment | 11 | | 0 | 00/2000 | *-------------- FIRMWARE
14 | 1 brutaltester.s 14 | Empty | 11 | | 0 | 00/2000 |
15 | 1 brutaltester.s 15 | Equivalence | 11 | | 0 | 00/2000 | WNDLFT = $20
16 | 1 brutaltester.s 16 | Equivalence | 11 | | 0 | 00/2000 | WNDWDTH = $21
17 | 1 brutaltester.s 17 | Equivalence | 11 | | 0 | 00/2000 | WNDTOP = $22
18 | 1 brutaltester.s 18 | Equivalence | 11 | | 0 | 00/2000 | WNDBTM = $23
19 | 1 brutaltester.s 19 | Equivalence | 11 | | 0 | 00/2000 | CH = $24
20 | 1 brutaltester.s 20 | Equivalence | 11 | | 0 | 00/2000 | CV = $25
21 | 1 brutaltester.s 21 | Empty | 11 | | 0 | 00/2000 |
22 | 1 brutaltester.s 22 | Equivalence | 11 | | 0 | 00/2000 | dpSTRING = $fc
23 | 1 brutaltester.s 23 | Equivalence | 11 | | 0 | 00/2000 | dpDFTVALUE = $fe
24 | 1 brutaltester.s 24 | Empty | 11 | | 0 | 00/2000 |
25 | 1 brutaltester.s 25 | Equivalence | 11 | | 0 | 00/2000 | KBD = $C000
26 | 1 brutaltester.s 26 | Equivalence | 11 | | 0 | 00/2000 | KBDSTROBE = $C010
27 | 1 brutaltester.s 27 | Empty | 11 | | 0 | 00/2000 |
28 | 1 brutaltester.s 28 | Equivalence | 11 | | 0 | 00/2000 | INIT = $FB2F
29 | 1 brutaltester.s 29 | Equivalence | 11 | | 0 | 00/2000 | TABV = $FB5B
30 | 1 brutaltester.s 30 | Equivalence | 11 | | 0 | 00/2000 | HOME = $FC58
31 | 1 brutaltester.s 31 | Equivalence | 11 | | 0 | 00/2000 | WAIT = $FCA8
32 | 1 brutaltester.s 32 | Equivalence | 11 | | 0 | 00/2000 | RDKEY = $FD0C
33 | 1 brutaltester.s 33 | Equivalence | 11 | | 0 | 00/2000 | PRBYTE = $FDDA
34 | 1 brutaltester.s 34 | Equivalence | 11 | | 0 | 00/2000 | COUT = $FDED
35 | 1 brutaltester.s 35 | Empty | 11 | | 0 | 00/2000 |
36 | 1 brutaltester.s 36 | Comment | 11 | | 0 | 00/2000 | *-------------- EQUATES
37 | 1 brutaltester.s 37 | Empty | 11 | | 0 | 00/2000 |
38 | 1 brutaltester.s 38 | Equivalence | 11 | | 0 | 00/2000 | VERSION = 1 ; v0.x
39 | 1 brutaltester.s 39 | Empty | 11 | | 0 | 00/2000 |
40 | 1 brutaltester.s 40 | Equivalence | 11 | | 0 | 00/2000 | T0 = 0
41 | 1 brutaltester.s 41 | Equivalence | 11 | | 0 | 00/2000 | T1 = 1
42 | 1 brutaltester.s 42 | Equivalence | 11 | | 0 | 00/2000 | T2 = 2
43 | 1 brutaltester.s 43 | Empty | 11 | | 0 | 00/2000 |
44 | 1 brutaltester.s 44 | Equivalence | 11 | | 0 | 00/2000 | FREQ_A2F0 = 0
45 | 1 brutaltester.s 45 | Equivalence | 11 | | 0 | 00/2000 | FREQ_A235 = 1
46 | 1 brutaltester.s 46 | Equivalence | 11 | | 0 | 00/2000 | FREQ_20MHZ = 2
47 | 1 brutaltester.s 47 | Equivalence | 11 | | 0 | 00/2000 | FREQ_CUSTOM = 3
48 | 1 brutaltester.s 48 | Empty | 11 | | 0 | 00/2000 |
49 | 1 brutaltester.s 49 | Equivalence | 11 | | 0 | 00/2000 | T2_DISP_OFF = 0
50 | 1 brutaltester.s 50 | Equivalence | 11 | | 0 | 00/2000 | T2_DISP_ON = 1
51 | 1 brutaltester.s 51 | Empty | 11 | | 0 | 00/2000 |
52 | 1 brutaltester.s 52 | Equivalence | 11 | | 0 | 00/2000 | FALSE = 0
53 | 1 brutaltester.s 53 | Equivalence | 11 | | 0 | 00/2000 | TRUE = 255
54 | 1 brutaltester.s 54 | Empty | 11 | | 0 | 00/2000 |
55 | 1 brutaltester.s 55 | Equivalence | 11 | | 0 | 00/2000 | chrRET = $8d
56 | 1 brutaltester.s 56 | Empty | 11 | | 0 | 00/2000 |
57 | 1 brutaltester.s 57 | Comment | 11 | | 0 | 00/2000 | *-------------- MACROS
58 | 1 brutaltester.s 58 | Empty | 11 | | 0 | 00/2000 |
59 | 1 brutaltester.s 59 | Directive | 11 | | 0 | 00/2000 | @printSTRING mac
60 | 1 brutaltester.s 60 | Directive | 11 | | 0 | 00/2000 | ldx #>]1
61 | 1 brutaltester.s 61 | Directive | 11 | | 0 | 00/2000 | ldy #<]1
62 | 1 brutaltester.s 62 | Directive | 11 | | 0 | 00/2000 | jsr printSTRING
63 | 1 brutaltester.s 63 | Directive | 11 | | 0 | 00/2000 | <<<
64 | 1 brutaltester.s 64 | Empty | 11 | | 0 | 00/2000 |
65 | 1 brutaltester.s 65 | Directive | 11 | | 0 | 00/2000 | @setDPSTRING mac
66 | 1 brutaltester.s 66 | Directive | 11 | | 0 | 00/2000 | ldx #>]1
67 | 1 brutaltester.s 67 | Directive | 11 | | 0 | 00/2000 | stx {$fc}+1
68 | 1 brutaltester.s 68 | Directive | 11 | | 0 | 00/2000 | ldy #<]1
69 | 1 brutaltester.s 69 | Directive | 11 | | 0 | 00/2000 | sty {$fc}
70 | 1 brutaltester.s 70 | Directive | 11 | | 0 | 00/2000 | <<<
71 | 1 brutaltester.s 71 | Empty | 11 | | 0 | 00/2000 |
72 | 1 brutaltester.s 72 | Directive | 11 | | 0 | 00/2000 | @setDPDFTVALUE mac
73 | 1 brutaltester.s 73 | Directive | 11 | | 0 | 00/2000 | ldx #>]1
74 | 1 brutaltester.s 74 | Directive | 11 | | 0 | 00/2000 | stx {$fe}+1
75 | 1 brutaltester.s 75 | Directive | 11 | | 0 | 00/2000 | ldy #<]1
76 | 1 brutaltester.s 76 | Directive | 11 | | 0 | 00/2000 | sty {$fe}
77 | 1 brutaltester.s 77 | Directive | 11 | | 0 | 00/2000 | <<<
78 | 1 brutaltester.s 78 | Empty | 11 | | 0 | 00/2000 |
79 | 1 brutaltester.s 79 | Comment | 11 | | 0 | 00/2000 | *-------------- CODE
80 | 1 brutaltester.s 80 | Empty | 11 | | 0 | 00/2000 |
81 | 1 brutaltester.s 81 | Code | 11 | | 3 | 00/2000 : 20 58 FC | jsr {$FC58}
82 | 1 brutaltester.s 82 | Macro | 11 | | 0 | 00/2003 | @printSTRING #strHELLO
83 | 1 brutaltester.s 82 | Code | 11 | | 2 | 00/2003 : A2 25 | ldx #>#strHELLO
84 | 1 brutaltester.s 82 | Code | 11 | | 2 | 00/2005 : A0 0D | ldy #<#strHELLO
85 | 1 brutaltester.s 82 | Code | 11 | | 3 | 00/2007 : 20 CA 24 | jsr printSTRING
86 | 1 brutaltester.s 83 | Empty | 11 | | 0 | 00/200A |
87 | 1 brutaltester.s 84 | Comment | 11 | | 0 | 00/200A | *---
88 | 1 brutaltester.s 85 | Empty | 11 | | 0 | 00/200A |
89 | 1 brutaltester.s 86 | Macro | 11 | | 0 | 00/200A | loopTEST @printSTRING #strMENU
90 | 1 brutaltester.s 86 | Code | 11 | | 2 | 00/200A : A2 25 | ldx #>#strMENU
91 | 1 brutaltester.s 86 | Code | 11 | | 2 | 00/200C : A0 5C | ldy #<#strMENU
92 | 1 brutaltester.s 86 | Code | 11 | | 3 | 00/200E : 20 CA 24 | jsr printSTRING
93 | 1 brutaltester.s 87 | Code | 11 | | 3 | 00/2011 : 20 0C FD | jsr {$FD0C}
94 | 1 brutaltester.s 88 | Code | 11 | | 3 | 00/2014 : 20 ED FD | jsr {$FDED}
95 | 1 brutaltester.s 89 | Code | 11 | | 2 | 00/2017 : C9 B0 | cmp #"0"
96 | 1 brutaltester.s 90 | Code | 11 | | 2 | 00/2019 : D0 0B | bne noTEST0
97 | 1 brutaltester.s 91 | Empty | 11 | | 0 | 00/201B |
98 | 1 brutaltester.s 92 | Macro | 11 | | 0 | 00/201B | @printSTRING #strGOODBYE
99 | 1 brutaltester.s 92 | Code | 11 | | 2 | 00/201B : A2 25 | ldx #>#strGOODBYE
100 | 1 brutaltester.s 92 | Code | 11 | | 2 | 00/201D : A0 E6 | ldy #<#strGOODBYE
101 | 1 brutaltester.s 92 | Code | 11 | | 3 | 00/201F : 20 CA 24 | jsr printSTRING
102 | 1 brutaltester.s 93 | Code | 11 | | 3 | 00/2022 : 20 2F FB | jsr {$FB2F}
103 | 1 brutaltester.s 94 | Code | 11 | | 1 | 00/2025 : 60 | rts
104 | 1 brutaltester.s 95 | Empty | 11 | | 0 | 00/2026 |
105 | 1 brutaltester.s 96 | Code | 11 | | 2 | 00/2026 : C9 B1 | noTEST0 cmp #"1" ; set slot & launch tests
106 | 1 brutaltester.s 97 | Code | 11 | | 2 | 00/2028 : D0 03 | bne noTEST1
107 | 1 brutaltester.s 98 | Code | 11 | | 3 | 00/202A : 4C 34 20 | jmp doSETSLOT
108 | 1 brutaltester.s 99 | Empty | 11 | | 0 | 00/202D |
109 | 1 brutaltester.s 100 | Code | 11 | | 2 | 00/202D : C9 B2 | noTEST1 cmp #"2" ; launch tests
110 | 1 brutaltester.s 101 | Code | 11 | | 2 | 00/202F : D0 D9 | bne loopTEST
111 | 1 brutaltester.s 102 | Code | 11 | | 3 | 00/2031 : 4C 56 20 | jmp doTESTS
112 | 1 brutaltester.s 103 | Empty | 11 | | 0 | 00/2034 |
113 | 1 brutaltester.s 104 | Comment | 11 | | 0 | 00/2034 | *-------------- SET SLOT AND LAUNCH TESTS...
114 | 1 brutaltester.s 105 | Empty | 11 | | 0 | 00/2034 |
115 | 1 brutaltester.s 106 | Macro | 11 | | 0 | 00/2034 | doSETSLOT @printSTRING #strSETSLOT
116 | 1 brutaltester.s 106 | Code | 11 | | 2 | 00/2034 : A2 25 | ldx #>#strSETSLOT
117 | 1 brutaltester.s 106 | Code | 11 | | 2 | 00/2036 : A0 A1 | ldy #<#strSETSLOT
118 | 1 brutaltester.s 106 | Code | 11 | | 3 | 00/2038 : 20 CA 24 | jsr printSTRING
119 | 1 brutaltester.s 107 | Code | 11 | | 3 | 00/203B : 20 0C FD | jsr {$FD0C}
120 | 1 brutaltester.s 108 | Code | 11 | | 3 | 00/203E : 20 ED FD | jsr {$FDED}
121 | 1 brutaltester.s 109 | Code | 11 | | 2 | 00/2041 : C9 B1 | cmp #"1"
122 | 1 brutaltester.s 110 | Code | 11 | | 2 | 00/2043 : 90 EF | bcc doSETSLOT
123 | 1 brutaltester.s 111 | Code | 11 | | 2 | 00/2045 : C9 B8 | cmp #"7"+1
124 | 1 brutaltester.s 112 | Code | 11 | | 2 | 00/2047 : B0 EB | bcs doSETSLOT
125 | 1 brutaltester.s 113 | Empty | 11 | | 0 | 00/2049 |
126 | 1 brutaltester.s 114 | Code | 11 | | 1 | 00/2049 : 38 | sec
127 | 1 brutaltester.s 115 | Code | 11 | | 2 | 00/204A : E9 B0 | sbc #"0"
128 | 1 brutaltester.s 116 | Code | 11 | | 3 | 00/204C : 8D 0B 25 | sta theSLOT
129 | 1 brutaltester.s 117 | Code | 11 | | 1 | 00/204F : 0A | asl
130 | 1 brutaltester.s 118 | Code | 11 | | 1 | 00/2050 : 0A | asl
131 | 1 brutaltester.s 119 | Code | 11 | | 1 | 00/2051 : 0A | asl
132 | 1 brutaltester.s 120 | Code | 11 | | 1 | 00/2052 : 0A | asl
133 | 1 brutaltester.s 121 | Code | 11 | | 3 | 00/2053 : 8D 0C 25 | sta theSLOT16
134 | 1 brutaltester.s 122 | Empty | 11 | | 0 | 00/2056 |
135 | 1 brutaltester.s 123 | Comment | 11 | | 0 | 00/2056 | * jmp loopTEST
136 | 1 brutaltester.s 124 | Empty | 11 | | 0 | 00/2056 |
137 | 1 brutaltester.s 125 | Comment | 11 | | 0 | 00/2056 | *-------------- DO ALL TESTS
138 | 1 brutaltester.s 126 | Comment | 11 | | 0 | 00/2056 | * 1- reset T1, start/stop/display/compare/reset to 0
139 | 1 brutaltester.s 127 | Empty | 11 | | 0 | 00/2056 |
140 | 1 brutaltester.s 128 | Comment | 11 | | 0 | 00/2056 | * Can you write simple test program for automatic check cart
141 | 1 brutaltester.s 129 | Comment | 11 | | 0 | 00/2056 | * ( Start/Stop timer and check value for T1. Clear and check if 0 ,
142 | 1 brutaltester.s 130 | Comment | 11 | | 0 | 00/2056 | * Start/Stop T2 and check value , change Source freq and check again value .
143 | 1 brutaltester.s 131 | Comment | 11 | | 0 | 00/2056 | * On/Off display )
144 | 1 brutaltester.s 132 | Comment | 11 | | 0 | 00/2056 | * .This can be automatic . I will provide values of timer for different Freq .
145 | 1 brutaltester.s 133 | Empty | 11 | | 0 | 00/2056 |
146 | 1 brutaltester.s 134 | Code | 11 | | 2 | 00/2056 : A9 00 | doTESTS lda #{0} ; reset all timers
147 | 1 brutaltester.s 135 | Code | 11 | | 3 | 00/2058 : 20 00 24 | jsr resetTIMER2
148 | 1 brutaltester.s 136 | Empty | 11 | | 0 | 00/205B |
149 | 1 brutaltester.s 137 | Code | 11 | | 2 | 00/205B : A9 8D | lda #{$8d} ; want a CR
150 | 1 brutaltester.s 138 | Code | 11 | | 3 | 00/205D : 20 ED FD | jsr {$FDED}
151 | 1 brutaltester.s 139 | Empty | 11 | | 0 | 00/2060 |
152 | 1 brutaltester.s 140 | Macro | 11 | | 0 | 00/2060 | @setDPSTRING #strT1dft ; test T1
153 | 1 brutaltester.s 140 | Code | 11 | | 2 | 00/2060 : A2 20 | ldx #>#strT1dft
154 | 1 brutaltester.s 140 | Code | 11 | | 2 | 00/2062 : 86 FD | stx {$fc}+1
155 | 1 brutaltester.s 140 | Code | 11 | | 2 | 00/2064 : A0 AB | ldy #<#strT1dft
156 | 1 brutaltester.s 140 | Code | 11 | | 2 | 00/2066 : 84 FC | sty {$fc}
157 | 1 brutaltester.s 141 | Macro | 11 | | 0 | 00/2068 | @setDPDFTVALUE #dftT1
158 | 1 brutaltester.s 141 | Code | 11 | | 2 | 00/2068 : A2 20 | ldx #>#dftT1
159 | 1 brutaltester.s 141 | Code | 11 | | 2 | 00/206A : 86 FF | stx {$fe}+1
160 | 1 brutaltester.s 141 | Code | 11 | | 2 | 00/206C : A0 E8 | ldy #<#dftT1
161 | 1 brutaltester.s 141 | Code | 11 | | 2 | 00/206E : 84 FE | sty {$fe}
162 | 1 brutaltester.s 142 | Empty | 11 | | 0 | 00/2070 |
163 | 1 brutaltester.s 143 | Code | 11 | | 2 | 00/2070 : A9 01 | lda #{1} ; do it
164 | 1 brutaltester.s 144 | Code | 11 | | 3 | 00/2072 : 20 00 22 | jsr testTIMER
165 | 1 brutaltester.s 145 | Empty | 11 | | 0 | 00/2075 |
166 | 1 brutaltester.s 146 | Code | 11 | | 2 | 00/2075 : A9 00 | lda #0 ; test T2
167 | 1 brutaltester.s 147 | Code | 11 | | 3 | 00/2077 : 8D 09 25 | ozunid_1 sta theFREQ
168 | 1 brutaltester.s 148 | Code | 11 | | 1 | 00/207A : 0A | asl
169 | 1 brutaltester.s 149 | Code | 11 | | 1 | 00/207B : AA | tax
170 | 1 brutaltester.s 150 | Code | 11 | | 3 | 00/207C : BD D8 20 | lda tblSTRT2,x ; default string
171 | 1 brutaltester.s 151 | Code | 11 | | 2 | 00/207F : 85 FC | sta {$fc}
172 | 1 brutaltester.s 152 | Code | 11 | | 3 | 00/2081 : BD D9 20 | lda tblSTRT2+1,x
173 | 1 brutaltester.s 153 | Code | 11 | | 2 | 00/2084 : 85 FD | sta {$fc}+1
174 | 1 brutaltester.s 154 | Empty | 11 | | 0 | 00/2086 |
175 | 1 brutaltester.s 155 | Code | 11 | | 3 | 00/2086 : BD E0 20 | lda tblDFTT2,x ; default expected value
176 | 1 brutaltester.s 156 | Code | 11 | | 2 | 00/2089 : 85 FE | sta {$fe}
177 | 1 brutaltester.s 157 | Code | 11 | | 3 | 00/208B : BD E1 20 | lda tblDFTT2+1,x
178 | 1 brutaltester.s 158 | Code | 11 | | 2 | 00/208E : 85 FF | sta {$fe}+1
179 | 1 brutaltester.s 159 | Empty | 11 | | 0 | 00/2090 |
180 | 1 brutaltester.s 160 | Code | 11 | | 3 | 00/2090 : AD 09 25 | lda theFREQ ; set frequency
181 | 1 brutaltester.s 161 | Code | 11 | | 3 | 00/2093 : 20 34 24 | jsr setT2FREQUENCY2
182 | 1 brutaltester.s 162 | Code | 11 | | 2 | 00/2096 : A9 02 | lda #{2} ; do it
183 | 1 brutaltester.s 163 | Code | 11 | | 3 | 00/2098 : 20 00 22 | jsr testTIMER
184 | 1 brutaltester.s 164 | Code | 11 | | 3 | 00/209B : AD 09 25 | lda theFREQ ; next frequency
185 | 1 brutaltester.s 165 | Code | 11 | | 1 | 00/209E : 18 | clc
186 | 1 brutaltester.s 166 | Code | 11 | | 2 | 00/209F : 69 01 | adc #1
187 | 1 brutaltester.s 167 | Code | 11 | | 2 | 00/20A1 : C9 04 | cmp #3+1
188 | 1 brutaltester.s 168 | Code | 11 | | 2 | 00/20A3 : 90 D2 | bcc ozunid_1
189 | 1 brutaltester.s 169 | Empty | 11 | | 0 | 00/20A5 |
190 | 1 brutaltester.s 170 | Code | 11 | | 3 | 00/20A5 : 20 FC 20 | jsr testDISPLAY ; test the display
191 | 1 brutaltester.s 171 | Code | 11 | | 3 | 00/20A8 : 4C 0A 20 | jmp loopTEST ; exit
192 | 1 brutaltester.s 172 | Empty | 11 | | 0 | 00/20AB |
193 | 1 brutaltester.s 173 | Comment | 11 | | 0 | 00/20AB | *---
194 | 1 brutaltester.s 174 | Empty | 11 | | 0 | 00/20AB |
195 | 1 brutaltester.s 175 | Data | 11 | | 9 | 00/20AB : B0 B0 B0 B0 | strT1dft asc "000001B5"00
| | | | | | B0 B1 C2 B5 |
| | | | | | 00 |
196 | 1 brutaltester.s 176 | Data | 11 | | 9 | 00/20B4 : B0 B0 B0 B0 | strT2F0dft asc "00000000"00
| | | | | | B0 B0 B0 B0 |
| | | | | | 00 |
197 | 1 brutaltester.s 177 | Data | 11 | | 9 | 00/20BD : B0 B0 B0 B0 | strT2F1dft asc "00000100"00
| | | | | | B0 B1 B0 B0 |
| | | | | | 00 |
198 | 1 brutaltester.s 178 | Data | 11 | | 9 | 00/20C6 : B0 B0 B0 B0 | strT2F2dft asc "00000200"00
| | | | | | B0 B2 B0 B0 |
| | | | | | 00 |
199 | 1 brutaltester.s 179 | Data | 11 | | 9 | 00/20CF : B0 B0 B0 B0 | strT2F3dft asc "00000300"00
| | | | | | B0 B3 B0 B0 |
| | | | | | 00 |
200 | 1 brutaltester.s 180 | Empty | 11 | | 0 | 00/20D8 |
201 | 1 brutaltester.s 181 | Data | 11 | | 2 | 00/20D8 : B4 20 | tblSTRT2 da strT2F0dft
202 | 1 brutaltester.s 182 | Data | 11 | | 2 | 00/20DA : BD 20 | da strT2F1dft
203 | 1 brutaltester.s 183 | Data | 11 | | 2 | 00/20DC : C6 20 | da strT2F2dft
204 | 1 brutaltester.s 184 | Data | 11 | | 2 | 00/20DE : CF 20 | da strT2F3dft
205 | 1 brutaltester.s 185 | Empty | 11 | | 0 | 00/20E0 |
206 | 1 brutaltester.s 186 | Data | 11 | | 2 | 00/20E0 : EC 20 | tblDFTT2 da dftT2F0
207 | 1 brutaltester.s 187 | Data | 11 | | 2 | 00/20E2 : F0 20 | da dftT2F1
208 | 1 brutaltester.s 188 | Data | 11 | | 2 | 00/20E4 : F4 20 | da dftT2F2
209 | 1 brutaltester.s 189 | Data | 11 | | 2 | 00/20E6 : F8 20 | da dftT2F3
210 | 1 brutaltester.s 190 | Empty | 11 | | 0 | 00/20E8 |
211 | 1 brutaltester.s 191 | Data | 11 | | 4 | 00/20E8 : B5 01 00 00 | dftT1 adrl 437
212 | 1 brutaltester.s 192 | Data | 11 | | 4 | 00/20EC : 00 00 00 00 | dftT2F0 adrl $000
213 | 1 brutaltester.s 193 | Data | 11 | | 4 | 00/20F0 : 00 01 00 00 | dftT2F1 adrl $100
214 | 1 brutaltester.s 194 | Data | 11 | | 4 | 00/20F4 : 00 02 00 00 | dftT2F2 adrl $200
215 | 1 brutaltester.s 195 | Data | 11 | | 4 | 00/20F8 : 00 03 00 00 | dftT2F3 adrl $300
216 | 1 brutaltester.s 196 | Empty | 11 | | 0 | 00/20FC |
217 | 1 brutaltester.s 197 | Comment | 11 | | 0 | 00/20FC | *-------------- TEST DISPLAY
218 | 1 brutaltester.s 198 | Empty | 11 | | 0 | 00/20FC |
219 | 1 brutaltester.s 199 | Code | 11 | | 2 | 00/20FC : A9 00 | testDISPLAY lda #0 ; set to 1MHz
220 | 1 brutaltester.s 200 | Code | 11 | | 3 | 00/20FE : 20 34 24 | jsr setT2FREQUENCY2
221 | 1 brutaltester.s 201 | Empty | 11 | | 0 | 00/2101 |
222 | 1 brutaltester.s 202 | Code | 11 | | 2 | 00/2101 : A9 02 | lda #{2} ; select T2
223 | 1 brutaltester.s 203 | Code | 11 | | 3 | 00/2103 : 20 00 24 | jsr resetTIMER2
224 | 1 brutaltester.s 204 | Empty | 11 | | 0 | 00/2106 |
225 | 1 brutaltester.s 205 | Macro | 11 | | 0 | 00/2106 | @printSTRING #strDISPLAYOFF ; tell it
226 | 1 brutaltester.s 205 | Code | 11 | | 2 | 00/2106 : A2 21 | ldx #>#strDISPLAYOFF
227 | 1 brutaltester.s 205 | Code | 11 | | 2 | 00/2108 : A0 40 | ldy #<#strDISPLAYOFF
228 | 1 brutaltester.s 205 | Code | 11 | | 3 | 00/210A : 20 CA 24 | jsr printSTRING
229 | 1 brutaltester.s 206 | Code | 11 | | 2 | 00/210D : A9 00 | lda #{0} ; turn display off
230 | 1 brutaltester.s 207 | Code | 11 | | 3 | 00/210F : 20 24 21 | jsr doDISPLAY ; test
231 | 1 brutaltester.s 208 | Empty | 11 | | 0 | 00/2112 |
232 | 1 brutaltester.s 209 | Macro | 11 | | 0 | 00/2112 | @printSTRING #strDISPLAYON
233 | 1 brutaltester.s 209 | Code | 11 | | 2 | 00/2112 : A2 21 | ldx #>#strDISPLAYON
234 | 1 brutaltester.s 209 | Code | 11 | | 2 | 00/2114 : A0 51 | ldy #<#strDISPLAYON
235 | 1 brutaltester.s 209 | Code | 11 | | 3 | 00/2116 : 20 CA 24 | jsr printSTRING
236 | 1 brutaltester.s 210 | Code | 11 | | 2 | 00/2119 : A9 01 | lda #{1} ; turn display on
237 | 1 brutaltester.s 211 | Code | 11 | | 3 | 00/211B : 20 24 21 | jsr doDISPLAY ; test
238 | 1 brutaltester.s 212 | Empty | 11 | | 0 | 00/211E |
239 | 1 brutaltester.s 213 | Code | 11 | | 3 | 00/211E : 20 FF 24 | jsr waitFORKEY ; wait
240 | 1 brutaltester.s 214 | Code | 11 | | 3 | 00/2121 : 4C 0A 20 | jmp loopTEST ; and return
241 | 1 brutaltester.s 215 | Empty | 11 | | 0 | 00/2124 |
242 | 1 brutaltester.s 216 | Comment | 11 | | 0 | 00/2124 | *---
243 | 1 brutaltester.s 217 | Empty | 11 | | 0 | 00/2124 |
244 | 1 brutaltester.s 218 | Equivalence | 11 | | 0 | 00/2124 | NBTESTS = 15
245 | 1 brutaltester.s 219 | Empty | 11 | | 0 | 00/2124 |
246 | 1 brutaltester.s 220 | Code | 11 | | 3 | 00/2124 : 20 41 24 | doDISPLAY jsr setT2DISPLAY2 ; turn display on/off
247 | 1 brutaltester.s 221 | Empty | 11 | | 0 | 00/2127 |
248 | 1 brutaltester.s 222 | Code | 11 | | 2 | 00/2127 : A9 02 | lda #{2} ; start timer
249 | 1 brutaltester.s 223 | Code | 11 | | 3 | 00/2129 : 20 0D 24 | jsr startTIMER2
250 | 1 brutaltester.s 224 | Code | 11 | | 2 | 00/212C : A2 00 | ldx #0 ; make 10 loops
251 | 1 brutaltester.s 225 | Code | 11 | | 2 | 00/212E : A9 AE | ozunid_2 lda #"." ; show it
252 | 1 brutaltester.s 226 | Code | 11 | | 3 | 00/2130 : 20 ED FD | jsr {$FDED}
253 | 1 brutaltester.s 227 | Code | 11 | | 3 | 00/2133 : 20 00 23 | jsr doTEST ; make the test
254 | 1 brutaltester.s 228 | Code | 11 | | 1 | 00/2136 : E8 | inx
255 | 1 brutaltester.s 229 | Code | 11 | | 2 | 00/2137 : E0 0F | cpx #{15}
256 | 1 brutaltester.s 230 | Code | 11 | | 2 | 00/2139 : 90 F3 | bcc ozunid_2 ; loop
257 | 1 brutaltester.s 231 | Empty | 11 | | 0 | 00/213B |
258 | 1 brutaltester.s 232 | Code | 11 | | 2 | 00/213B : A9 02 | lda #{2} ; stop the timer
259 | 1 brutaltester.s 233 | Code | 11 | | 3 | 00/213D : 4C 27 24 | jmp stopTIMER2 ; we do not reset it
260 | 1 brutaltester.s 234 | Empty | 11 | | 0 | 00/2140 |
261 | 1 brutaltester.s 235 | Comment | 11 | | 0 | 00/2140 | *---
262 | 1 brutaltester.s 236 | Empty | 11 | | 0 | 00/2140 |
263 | 1 brutaltester.s 237 | Data | 11 | | 17 | 00/2140 : 8D C4 E9 F3 | strDISPLAYOFF asc 8d"Display is off "00
| | | | | | F0 EC E1 F9 |
| | | | | | A0 E9 F3 A0 |
| | | | | | EF E6 E6 A0 |
| | | | | | 00 |
264 | 1 brutaltester.s 238 | Data | 11 | | 17 | 00/2151 : 8D C4 E9 F3 | strDISPLAYON asc 8d"Display is on "00
| | | | | | F0 EC E1 F9 |
| | | | | | A0 E9 F3 A0 |
| | | | | | A0 EF EE A0 |
| | | | | | 00 |
265 | 1 brutaltester.s 239 | Empty | 11 | | 0 | 00/2162 |
266 | 1 brutaltester.s 240 | Comment | 11 | | 0 | 00/2162 | *-------------- TEST & COMPARE
267 | 1 brutaltester.s 241 | Empty | 11 | | 0 | 00/2162 |
268 | 1 brutaltester.s 242 | Data | 11 | | 158 | 00/2162 : 00 00 00 00 | ds \
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 |
269 | 1 brutaltester.s 243 | Empty | 11 | | 0 | 00/2200 |
270 | 1 brutaltester.s 244 | Code | 11 | | 3 | 00/2200 : 8D 08 25 | testTIMER sta theTIMER
271 | 1 brutaltester.s 245 | Code | 11 | | 3 | 00/2203 : 20 03 24 | jsr resetTIMER ; make it 0
272 | 1 brutaltester.s 246 | Code | 11 | | 3 | 00/2206 : 20 10 24 | jsr startTIMER ; start it
273 | 1 brutaltester.s 247 | Code | 11 | | 3 | 00/2209 : 20 00 23 | jsr doTEST ; do the test
274 | 1 brutaltester.s 248 | Code | 11 | | 3 | 00/220C : 20 2A 24 | jsr stopTIMER ; stop it
275 | 1 brutaltester.s 249 | Code | 11 | | 3 | 00/220F : 20 4E 24 | jsr readTIMER ; read value
276 | 1 brutaltester.s 250 | Empty | 11 | | 0 | 00/2212 |
277 | 1 brutaltester.s 251 | Macro | 11 | | 0 | 00/2212 | @printSTRING #strTVALUE ; Tx want
278 | 1 brutaltester.s 251 | Code | 11 | | 2 | 00/2212 : A2 22 | ldx #>#strTVALUE
279 | 1 brutaltester.s 251 | Code | 11 | | 2 | 00/2214 : A0 74 | ldy #<#strTVALUE
280 | 1 brutaltester.s 251 | Code | 11 | | 3 | 00/2216 : 20 CA 24 | jsr printSTRING
281 | 1 brutaltester.s 252 | Code | 11 | | 2 | 00/2219 : A6 FD | ldx {$fc}+1
282 | 1 brutaltester.s 253 | Code | 11 | | 2 | 00/221B : A4 FC | ldy {$fc} ; aabbccdd
283 | 1 brutaltester.s 254 | Code | 11 | | 3 | 00/221D : 20 CA 24 | jsr printSTRING
284 | 1 brutaltester.s 255 | Macro | 11 | | 0 | 00/2220 | @printSTRING #strTREAD ; read...
285 | 1 brutaltester.s 255 | Code | 11 | | 2 | 00/2220 : A2 22 | ldx #>#strTREAD
286 | 1 brutaltester.s 255 | Code | 11 | | 2 | 00/2222 : A0 7E | ldy #<#strTREAD
287 | 1 brutaltester.s 255 | Code | 11 | | 3 | 00/2224 : 20 CA 24 | jsr printSTRING
288 | 1 brutaltester.s 256 | Code | 11 | | 3 | 00/2227 : 20 92 24 | jsr printTIMER ; show read value
289 | 1 brutaltester.s 257 | Empty | 11 | | 0 | 00/222A |
290 | 1 brutaltester.s 258 | Code | 11 | | 2 | 00/222A : A0 00 | ldy #0
291 | 1 brutaltester.s 259 | Code | 11 | | 2 | 00/222C : B1 FE | ozunid_3 lda ({$fe}),y
292 | 1 brutaltester.s 260 | Code | 11 | | 3 | 00/222E : D9 C6 24 | cmp valTIMER,y
293 | 1 brutaltester.s 261 | Code | 11 | | 2 | 00/2231 : D0 0F | bne notTHESAME
294 | 1 brutaltester.s 262 | Code | 11 | | 1 | 00/2233 : C8 | iny
295 | 1 brutaltester.s 263 | Code | 11 | | 2 | 00/2234 : C0 04 | cpy #4
296 | 1 brutaltester.s 264 | Code | 11 | | 2 | 00/2236 : 90 F4 | bcc ozunid_3
297 | 1 brutaltester.s 265 | Macro | 11 | | 0 | 00/2238 | @printSTRING #strOK
298 | 1 brutaltester.s 265 | Code | 11 | | 2 | 00/2238 : A2 22 | ldx #>#strOK
299 | 1 brutaltester.s 265 | Code | 11 | | 2 | 00/223A : A0 85 | ldy #<#strOK
300 | 1 brutaltester.s 265 | Code | 11 | | 3 | 00/223C : 20 CA 24 | jsr printSTRING
301 | 1 brutaltester.s 266 | Code | 11 | | 3 | 00/223F : 4C 49 22 | jmp testRESET
302 | 1 brutaltester.s 267 | Macro | 11 | | 0 | 00/2242 | notTHESAME @printSTRING #strNOTOK
303 | 1 brutaltester.s 267 | Code | 11 | | 2 | 00/2242 : A2 22 | ldx #>#strNOTOK
304 | 1 brutaltester.s 267 | Code | 11 | | 2 | 00/2244 : A0 89 | ldy #<#strNOTOK
305 | 1 brutaltester.s 267 | Code | 11 | | 3 | 00/2246 : 20 CA 24 | jsr printSTRING
306 | 1 brutaltester.s 268 | Empty | 11 | | 0 | 00/2249 |
307 | 1 brutaltester.s 269 | Comment | 11 | | 0 | 00/2249 | *--- test the reset
308 | 1 brutaltester.s 270 | Empty | 11 | | 0 | 00/2249 |
309 | 1 brutaltester.s 271 | Code | 11 | | 3 | 00/2249 : 20 03 24 | testRESET jsr resetTIMER
310 | 1 brutaltester.s 272 | Code | 11 | | 3 | 00/224C : 20 4E 24 | jsr readTIMER
311 | 1 brutaltester.s 273 | Macro | 11 | | 0 | 00/224F | @printSTRING #strRESET
312 | 1 brutaltester.s 273 | Code | 11 | | 2 | 00/224F : A2 22 | ldx #>#strRESET
313 | 1 brutaltester.s 273 | Code | 11 | | 2 | 00/2251 : A0 91 | ldy #<#strRESET
314 | 1 brutaltester.s 273 | Code | 11 | | 3 | 00/2253 : 20 CA 24 | jsr printSTRING
315 | 1 brutaltester.s 274 | Empty | 11 | | 0 | 00/2256 |
316 | 1 brutaltester.s 275 | Code | 11 | | 3 | 00/2256 : AD C6 24 | lda valTIMER
317 | 1 brutaltester.s 276 | Code | 11 | | 3 | 00/2259 : 0D C7 24 | ora valTIMER+1
318 | 1 brutaltester.s 277 | Code | 11 | | 3 | 00/225C : 0D C8 24 | ora valTIMER+2
319 | 1 brutaltester.s 278 | Code | 11 | | 3 | 00/225F : 0D C9 24 | ora valTIMER+3
320 | 1 brutaltester.s 279 | Code | 11 | | 2 | 00/2262 : D0 08 | bne notRESET
321 | 1 brutaltester.s 280 | Macro | 11 | | 0 | 00/2264 | @printSTRING #strOK
322 | 1 brutaltester.s 280 | Code | 11 | | 2 | 00/2264 : A2 22 | ldx #>#strOK
323 | 1 brutaltester.s 280 | Code | 11 | | 2 | 00/2266 : A0 85 | ldy #<#strOK
324 | 1 brutaltester.s 280 | Code | 11 | | 3 | 00/2268 : 20 CA 24 | jsr printSTRING
325 | 1 brutaltester.s 281 | Code | 11 | | 1 | 00/226B : 60 | rts
326 | 1 brutaltester.s 282 | Macro | 11 | | 0 | 00/226C | notRESET @printSTRING #strNOTOK
327 | 1 brutaltester.s 282 | Code | 11 | | 2 | 00/226C : A2 22 | ldx #>#strNOTOK
328 | 1 brutaltester.s 282 | Code | 11 | | 2 | 00/226E : A0 89 | ldy #<#strNOTOK
329 | 1 brutaltester.s 282 | Code | 11 | | 3 | 00/2270 : 20 CA 24 | jsr printSTRING
330 | 1 brutaltester.s 283 | Code | 11 | | 1 | 00/2273 : 60 | rts
331 | 1 brutaltester.s 284 | Empty | 11 | | 0 | 00/2274 |
332 | 1 brutaltester.s 285 | Comment | 11 | | 0 | 00/2274 | *---
333 | 1 brutaltester.s 286 | Empty | 11 | | 0 | 00/2274 |
334 | 1 brutaltester.s 287 | Data | 11 | | 10 | 00/2274 : 8D D4 A5 A0 | strTVALUE asc 8d"T% want "00
| | | | | | F7 E1 EE F4 |
| | | | | | A0 00 |
335 | 1 brutaltester.s 288 | Data | 11 | | 7 | 00/227E : A0 F2 E5 E1 | strTREAD asc " read "00
| | | | | | E4 A0 00 |
336 | 1 brutaltester.s 289 | Data | 11 | | 4 | 00/2285 : A0 CF CB 00 | strOK asc " OK"00
337 | 1 brutaltester.s 290 | Data | 11 | | 8 | 00/2289 : A0 CE CF D4 | strNOTOK asc " NOT OK"00
| | | | | | A0 CF CB 00 |
338 | 1 brutaltester.s 291 | Data | 11 | | 10 | 00/2291 : 8D A0 A0 A0 | strRESET asc 8d" Reset"00
| | | | | | D2 E5 F3 E5 |
| | | | | | F4 00 |
339 | 1 brutaltester.s 292 | Empty | 11 | | 0 | 00/229B |
340 | 1 brutaltester.s 293 | Comment | 11 | | 0 | 00/229B | *-------------- THE TEST
341 | 1 brutaltester.s 294 | Empty | 11 | | 0 | 00/229B |
342 | 1 brutaltester.s 295 | Data | 11 | | 101 | 00/229B : 00 00 00 00 | ds \ ; page aligned
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 |
343 | 1 brutaltester.s 296 | Empty | 11 | | 0 | 00/2300 |
344 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2300 : EA | doTEST nop ; 2 cycles x 200
345 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2301 : EA | nop ; 2 cycles x 200
346 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2302 : EA | nop ; 2 cycles x 200
347 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2303 : EA | nop ; 2 cycles x 200
348 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2304 : EA | nop ; 2 cycles x 200
349 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2305 : EA | nop ; 2 cycles x 200
350 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2306 : EA | nop ; 2 cycles x 200
351 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2307 : EA | nop ; 2 cycles x 200
352 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2308 : EA | nop ; 2 cycles x 200
353 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2309 : EA | nop ; 2 cycles x 200
354 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/230A : EA | nop ; 2 cycles x 200
355 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/230B : EA | nop ; 2 cycles x 200
356 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/230C : EA | nop ; 2 cycles x 200
357 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/230D : EA | nop ; 2 cycles x 200
358 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/230E : EA | nop ; 2 cycles x 200
359 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/230F : EA | nop ; 2 cycles x 200
360 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2310 : EA | nop ; 2 cycles x 200
361 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2311 : EA | nop ; 2 cycles x 200
362 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2312 : EA | nop ; 2 cycles x 200
363 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2313 : EA | nop ; 2 cycles x 200
364 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2314 : EA | nop ; 2 cycles x 200
365 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2315 : EA | nop ; 2 cycles x 200
366 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2316 : EA | nop ; 2 cycles x 200
367 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2317 : EA | nop ; 2 cycles x 200
368 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2318 : EA | nop ; 2 cycles x 200
369 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2319 : EA | nop ; 2 cycles x 200
370 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/231A : EA | nop ; 2 cycles x 200
371 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/231B : EA | nop ; 2 cycles x 200
372 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/231C : EA | nop ; 2 cycles x 200
373 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/231D : EA | nop ; 2 cycles x 200
374 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/231E : EA | nop ; 2 cycles x 200
375 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/231F : EA | nop ; 2 cycles x 200
376 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2320 : EA | nop ; 2 cycles x 200
377 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2321 : EA | nop ; 2 cycles x 200
378 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2322 : EA | nop ; 2 cycles x 200
379 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2323 : EA | nop ; 2 cycles x 200
380 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2324 : EA | nop ; 2 cycles x 200
381 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2325 : EA | nop ; 2 cycles x 200
382 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2326 : EA | nop ; 2 cycles x 200
383 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2327 : EA | nop ; 2 cycles x 200
384 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2328 : EA | nop ; 2 cycles x 200
385 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2329 : EA | nop ; 2 cycles x 200
386 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/232A : EA | nop ; 2 cycles x 200
387 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/232B : EA | nop ; 2 cycles x 200
388 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/232C : EA | nop ; 2 cycles x 200
389 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/232D : EA | nop ; 2 cycles x 200
390 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/232E : EA | nop ; 2 cycles x 200
391 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/232F : EA | nop ; 2 cycles x 200
392 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2330 : EA | nop ; 2 cycles x 200
393 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2331 : EA | nop ; 2 cycles x 200
394 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2332 : EA | nop ; 2 cycles x 200
395 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2333 : EA | nop ; 2 cycles x 200
396 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2334 : EA | nop ; 2 cycles x 200
397 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2335 : EA | nop ; 2 cycles x 200
398 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2336 : EA | nop ; 2 cycles x 200
399 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2337 : EA | nop ; 2 cycles x 200
400 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2338 : EA | nop ; 2 cycles x 200
401 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2339 : EA | nop ; 2 cycles x 200
402 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/233A : EA | nop ; 2 cycles x 200
403 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/233B : EA | nop ; 2 cycles x 200
404 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/233C : EA | nop ; 2 cycles x 200
405 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/233D : EA | nop ; 2 cycles x 200
406 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/233E : EA | nop ; 2 cycles x 200
407 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/233F : EA | nop ; 2 cycles x 200
408 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2340 : EA | nop ; 2 cycles x 200
409 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2341 : EA | nop ; 2 cycles x 200
410 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2342 : EA | nop ; 2 cycles x 200
411 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2343 : EA | nop ; 2 cycles x 200
412 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2344 : EA | nop ; 2 cycles x 200
413 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2345 : EA | nop ; 2 cycles x 200
414 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2346 : EA | nop ; 2 cycles x 200
415 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2347 : EA | nop ; 2 cycles x 200
416 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2348 : EA | nop ; 2 cycles x 200
417 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2349 : EA | nop ; 2 cycles x 200
418 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/234A : EA | nop ; 2 cycles x 200
419 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/234B : EA | nop ; 2 cycles x 200
420 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/234C : EA | nop ; 2 cycles x 200
421 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/234D : EA | nop ; 2 cycles x 200
422 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/234E : EA | nop ; 2 cycles x 200
423 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/234F : EA | nop ; 2 cycles x 200
424 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2350 : EA | nop ; 2 cycles x 200
425 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2351 : EA | nop ; 2 cycles x 200
426 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2352 : EA | nop ; 2 cycles x 200
427 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2353 : EA | nop ; 2 cycles x 200
428 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2354 : EA | nop ; 2 cycles x 200
429 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2355 : EA | nop ; 2 cycles x 200
430 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2356 : EA | nop ; 2 cycles x 200
431 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2357 : EA | nop ; 2 cycles x 200
432 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2358 : EA | nop ; 2 cycles x 200
433 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2359 : EA | nop ; 2 cycles x 200
434 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/235A : EA | nop ; 2 cycles x 200
435 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/235B : EA | nop ; 2 cycles x 200
436 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/235C : EA | nop ; 2 cycles x 200
437 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/235D : EA | nop ; 2 cycles x 200
438 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/235E : EA | nop ; 2 cycles x 200
439 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/235F : EA | nop ; 2 cycles x 200
440 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2360 : EA | nop ; 2 cycles x 200
441 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2361 : EA | nop ; 2 cycles x 200
442 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2362 : EA | nop ; 2 cycles x 200
443 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2363 : EA | nop ; 2 cycles x 200
444 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2364 : EA | nop ; 2 cycles x 200
445 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2365 : EA | nop ; 2 cycles x 200
446 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2366 : EA | nop ; 2 cycles x 200
447 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2367 : EA | nop ; 2 cycles x 200
448 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2368 : EA | nop ; 2 cycles x 200
449 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2369 : EA | nop ; 2 cycles x 200
450 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/236A : EA | nop ; 2 cycles x 200
451 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/236B : EA | nop ; 2 cycles x 200
452 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/236C : EA | nop ; 2 cycles x 200
453 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/236D : EA | nop ; 2 cycles x 200
454 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/236E : EA | nop ; 2 cycles x 200
455 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/236F : EA | nop ; 2 cycles x 200
456 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2370 : EA | nop ; 2 cycles x 200
457 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2371 : EA | nop ; 2 cycles x 200
458 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2372 : EA | nop ; 2 cycles x 200
459 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2373 : EA | nop ; 2 cycles x 200
460 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2374 : EA | nop ; 2 cycles x 200
461 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2375 : EA | nop ; 2 cycles x 200
462 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2376 : EA | nop ; 2 cycles x 200
463 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2377 : EA | nop ; 2 cycles x 200
464 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2378 : EA | nop ; 2 cycles x 200
465 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2379 : EA | nop ; 2 cycles x 200
466 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/237A : EA | nop ; 2 cycles x 200
467 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/237B : EA | nop ; 2 cycles x 200
468 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/237C : EA | nop ; 2 cycles x 200
469 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/237D : EA | nop ; 2 cycles x 200
470 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/237E : EA | nop ; 2 cycles x 200
471 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/237F : EA | nop ; 2 cycles x 200
472 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2380 : EA | nop ; 2 cycles x 200
473 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2381 : EA | nop ; 2 cycles x 200
474 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2382 : EA | nop ; 2 cycles x 200
475 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2383 : EA | nop ; 2 cycles x 200
476 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2384 : EA | nop ; 2 cycles x 200
477 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2385 : EA | nop ; 2 cycles x 200
478 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2386 : EA | nop ; 2 cycles x 200
479 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2387 : EA | nop ; 2 cycles x 200
480 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2388 : EA | nop ; 2 cycles x 200
481 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2389 : EA | nop ; 2 cycles x 200
482 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/238A : EA | nop ; 2 cycles x 200
483 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/238B : EA | nop ; 2 cycles x 200
484 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/238C : EA | nop ; 2 cycles x 200
485 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/238D : EA | nop ; 2 cycles x 200
486 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/238E : EA | nop ; 2 cycles x 200
487 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/238F : EA | nop ; 2 cycles x 200
488 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2390 : EA | nop ; 2 cycles x 200
489 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2391 : EA | nop ; 2 cycles x 200
490 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2392 : EA | nop ; 2 cycles x 200
491 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2393 : EA | nop ; 2 cycles x 200
492 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2394 : EA | nop ; 2 cycles x 200
493 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2395 : EA | nop ; 2 cycles x 200
494 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2396 : EA | nop ; 2 cycles x 200
495 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2397 : EA | nop ; 2 cycles x 200
496 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2398 : EA | nop ; 2 cycles x 200
497 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/2399 : EA | nop ; 2 cycles x 200
498 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/239A : EA | nop ; 2 cycles x 200
499 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/239B : EA | nop ; 2 cycles x 200
500 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/239C : EA | nop ; 2 cycles x 200
501 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/239D : EA | nop ; 2 cycles x 200
502 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/239E : EA | nop ; 2 cycles x 200
503 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/239F : EA | nop ; 2 cycles x 200
504 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23A0 : EA | nop ; 2 cycles x 200
505 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23A1 : EA | nop ; 2 cycles x 200
506 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23A2 : EA | nop ; 2 cycles x 200
507 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23A3 : EA | nop ; 2 cycles x 200
508 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23A4 : EA | nop ; 2 cycles x 200
509 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23A5 : EA | nop ; 2 cycles x 200
510 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23A6 : EA | nop ; 2 cycles x 200
511 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23A7 : EA | nop ; 2 cycles x 200
512 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23A8 : EA | nop ; 2 cycles x 200
513 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23A9 : EA | nop ; 2 cycles x 200
514 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23AA : EA | nop ; 2 cycles x 200
515 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23AB : EA | nop ; 2 cycles x 200
516 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23AC : EA | nop ; 2 cycles x 200
517 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23AD : EA | nop ; 2 cycles x 200
518 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23AE : EA | nop ; 2 cycles x 200
519 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23AF : EA | nop ; 2 cycles x 200
520 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23B0 : EA | nop ; 2 cycles x 200
521 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23B1 : EA | nop ; 2 cycles x 200
522 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23B2 : EA | nop ; 2 cycles x 200
523 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23B3 : EA | nop ; 2 cycles x 200
524 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23B4 : EA | nop ; 2 cycles x 200
525 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23B5 : EA | nop ; 2 cycles x 200
526 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23B6 : EA | nop ; 2 cycles x 200
527 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23B7 : EA | nop ; 2 cycles x 200
528 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23B8 : EA | nop ; 2 cycles x 200
529 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23B9 : EA | nop ; 2 cycles x 200
530 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23BA : EA | nop ; 2 cycles x 200
531 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23BB : EA | nop ; 2 cycles x 200
532 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23BC : EA | nop ; 2 cycles x 200
533 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23BD : EA | nop ; 2 cycles x 200
534 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23BE : EA | nop ; 2 cycles x 200
535 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23BF : EA | nop ; 2 cycles x 200
536 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23C0 : EA | nop ; 2 cycles x 200
537 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23C1 : EA | nop ; 2 cycles x 200
538 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23C2 : EA | nop ; 2 cycles x 200
539 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23C3 : EA | nop ; 2 cycles x 200
540 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23C4 : EA | nop ; 2 cycles x 200
541 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23C5 : EA | nop ; 2 cycles x 200
542 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23C6 : EA | nop ; 2 cycles x 200
543 | 1 brutaltester.s 298 | Code | 11 | | 1 | 00/23C7 : EA | nop ; 2 cycles x 200
544 | 1 brutaltester.s 300 | Code | 11 | | 1 | 00/23C8 : 60 | rts ; 6
545 | 1 brutaltester.s 301 | Empty | 11 | | 0 | 00/23C9 |
546 | 1 brutaltester.s 302 | Data | 11 | | 55 | 00/23C9 : 00 00 00 00 | ds \
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 00 |
| | | | | | 00 00 00 |
547 | 1 brutaltester.s 303 | Empty | 11 | | 0 | 00/2400 |
548 | 1 brutaltester.s 304 | Comment | 11 | | 0 | 00/2400 | *-------------- BRUTAL TIMER ROUTINES
549 | 1 brutaltester.s 305 | Empty | 11 | | 0 | 00/2400 |
550 | 1 brutaltester.s 306 | Comment | 11 | | 0 | 00/2400 | *------- Reset TIMER
551 | 1 brutaltester.s 307 | Empty | 11 | | 0 | 00/2400 |
552 | 1 brutaltester.s 308 | Code | 11 | | 3 | 00/2400 : 8D 08 25 | resetTIMER2 sta theTIMER
553 | 1 brutaltester.s 309 | Code | 11 | | 3 | 00/2403 : AE 0C 25 | resetTIMER ldx theSLOT16
554 | 1 brutaltester.s 310 | Code | 11 | | 3 | 00/2406 : AD 08 25 | lda theTIMER
555 | 1 brutaltester.s 311 | Code | 11 | | 3 | 00/2409 : 9D 80 C0 | sta $c080,x
556 | 1 brutaltester.s 312 | Code | 11 | | 1 | 00/240C : 60 | rts
557 | 1 brutaltester.s 313 | Empty | 11 | | 0 | 00/240D |
558 | 1 brutaltester.s 314 | Comment | 11 | | 0 | 00/240D | *------- Start TIMER
559 | 1 brutaltester.s 315 | Empty | 11 | | 0 | 00/240D |
560 | 1 brutaltester.s 316 | Code | 11 | | 3 | 00/240D : 8D 08 25 | startTIMER2 sta theTIMER
561 | 1 brutaltester.s 317 | Code | 11 | | 3 | 00/2410 : AE 0C 25 | startTIMER ldx theSLOT16 ; 4 ** no **
562 | 1 brutaltester.s 318 | Code | 11 | | 3 | 00/2413 : AD 08 25 | lda theTIMER ; 4 ** no **
563 | 1 brutaltester.s 319 | Code | 11 | | 3 | 00/2416 : 9D 81 C0 | sta $c081,x ; 5
564 | 1 brutaltester.s 320 | Code | 11 | | 1 | 00/2419 : 60 | rts ; 6
565 | 1 brutaltester.s 321 | Empty | 11 | | 0 | 00/241A |
566 | 1 brutaltester.s 322 | Comment | 11 | | 0 | 00/241A | *------- Pause TIMER
567 | 1 brutaltester.s 323 | Empty | 11 | | 0 | 00/241A |
568 | 1 brutaltester.s 324 | Code | 11 | | 3 | 00/241A : 8D 08 25 | pauseTIMER2 sta theTIMER
569 | 1 brutaltester.s 325 | Code | 11 | | 3 | 00/241D : AE 0C 25 | pauseTIMER ldx theSLOT16
570 | 1 brutaltester.s 326 | Code | 11 | | 3 | 00/2420 : AD 08 25 | lda theTIMER
571 | 1 brutaltester.s 327 | Code | 11 | | 3 | 00/2423 : 9D 82 C0 | sta $c082,x
572 | 1 brutaltester.s 328 | Code | 11 | | 1 | 00/2426 : 60 | rts
573 | 1 brutaltester.s 329 | Empty | 11 | | 0 | 00/2427 |
574 | 1 brutaltester.s 330 | Comment | 11 | | 0 | 00/2427 | *------- Stop TIMER
575 | 1 brutaltester.s 331 | Empty | 11 | | 0 | 00/2427 |
576 | 1 brutaltester.s 332 | Code | 11 | | 3 | 00/2427 : 8D 08 25 | stopTIMER2 sta theTIMER
577 | 1 brutaltester.s 333 | Code | 11 | | 3 | 00/242A : AE 0C 25 | stopTIMER ldx theSLOT16 ; 4 ** yes **
578 | 1 brutaltester.s 334 | Code | 11 | | 3 | 00/242D : AD 08 25 | lda theTIMER ; 4 ** yes **
579 | 1 brutaltester.s 335 | Code | 11 | | 3 | 00/2430 : 9D 82 C0 | sta $c082,x ; 5 ** yes **
580 | 1 brutaltester.s 336 | Code | 11 | | 1 | 00/2433 : 60 | rts
581 | 1 brutaltester.s 337 | Empty | 11 | | 0 | 00/2434 |
582 | 1 brutaltester.s 338 | Comment | 11 | | 0 | 00/2434 | *------- Set T2 frequency
583 | 1 brutaltester.s 339 | Empty | 11 | | 0 | 00/2434 |
584 | 1 brutaltester.s 340 | Code | 11 | | 3 | 00/2434 : 8D 09 25 | setT2FREQUENCY2 sta theFREQ
585 | 1 brutaltester.s 341 | Code | 11 | | 3 | 00/2437 : AE 0C 25 | setT2FREQUENCY ldx theSLOT16
586 | 1 brutaltester.s 342 | Code | 11 | | 3 | 00/243A : AD 09 25 | lda theFREQ
587 | 1 brutaltester.s 343 | Code | 11 | | 3 | 00/243D : 9D 84 C0 | sta $c084,x
588 | 1 brutaltester.s 344 | Code | 11 | | 1 | 00/2440 : 60 | rts
589 | 1 brutaltester.s 345 | Empty | 11 | | 0 | 00/2441 |
590 | 1 brutaltester.s 346 | Comment | 11 | | 0 | 00/2441 | *------- Turn off/on display
591 | 1 brutaltester.s 347 | Empty | 11 | | 0 | 00/2441 |
592 | 1 brutaltester.s 348 | Code | 11 | | 3 | 00/2441 : 8D 0A 25 | setT2DISPLAY2 sta theDISPLAY
593 | 1 brutaltester.s 349 | Code | 11 | | 3 | 00/2444 : AE 0C 25 | setT2DISPLAY ldx theSLOT16
594 | 1 brutaltester.s 350 | Code | 11 | | 3 | 00/2447 : AD 0A 25 | lda theDISPLAY
595 | 1 brutaltester.s 351 | Code | 11 | | 3 | 00/244A : 9D 85 C0 | sta $c085,x
596 | 1 brutaltester.s 352 | Code | 11 | | 1 | 00/244D : 60 | rts
597 | 1 brutaltester.s 353 | Empty | 11 | | 0 | 00/244E |
598 | 1 brutaltester.s 354 | Comment | 11 | | 0 | 00/244E | *------- Read T1 value
599 | 1 brutaltester.s 355 | Empty | 11 | | 0 | 00/244E |
600 | 1 brutaltester.s 356 | Code | 11 | | 3 | 00/244E : AD 08 25 | readTIMER lda theTIMER
601 | 1 brutaltester.s 357 | Code | 11 | | 2 | 00/2451 : C9 01 | cmp #{1}
602 | 1 brutaltester.s 358 | Code | 11 | | 2 | 00/2453 : F0 05 | beq readT1
603 | 1 brutaltester.s 359 | Code | 11 | | 2 | 00/2455 : C9 02 | cmp #{2}
604 | 1 brutaltester.s 360 | Code | 11 | | 2 | 00/2457 : F0 1D | beq readT2
605 | 1 brutaltester.s 361 | Code | 11 | | 1 | 00/2459 : 60 | rts
606 | 1 brutaltester.s 362 | Empty | 11 | | 0 | 00/245A |
607 | 1 brutaltester.s 363 | Code | 11 | | 3 | 00/245A : AE 0C 25 | readT1 ldx theSLOT16
608 | 1 brutaltester.s 364 | Code | 11 | | 3 | 00/245D : BD 88 C0 | lda $c088,x ; T1
609 | 1 brutaltester.s 365 | Code | 11 | | 3 | 00/2460 : 8D C6 24 | sta valTIMER
610 | 1 brutaltester.s 366 | Code | 11 | | 3 | 00/2463 : BD 89 C0 | lda $c089,x
611 | 1 brutaltester.s 367 | Code | 11 | | 3 | 00/2466 : 8D C7 24 | sta valTIMER+1
612 | 1 brutaltester.s 368 | Code | 11 | | 3 | 00/2469 : BD 8A C0 | lda $c08a,x
613 | 1 brutaltester.s 369 | Code | 11 | | 3 | 00/246C : 8D C8 24 | sta valTIMER+2
614 | 1 brutaltester.s 370 | Code | 11 | | 3 | 00/246F : BD 8B C0 | lda $c08b,x
615 | 1 brutaltester.s 371 | Code | 11 | | 3 | 00/2472 : 8D C9 24 | sta valTIMER+3
616 | 1 brutaltester.s 372 | Code | 11 | | 1 | 00/2475 : 60 | rts
617 | 1 brutaltester.s 373 | Empty | 11 | | 0 | 00/2476 |
618 | 1 brutaltester.s 374 | Comment | 11 | | 0 | 00/2476 | *------- Read T2 value
619 | 1 brutaltester.s 375 | Empty | 11 | | 0 | 00/2476 |
620 | 1 brutaltester.s 376 | Code | 11 | | 3 | 00/2476 : AE 0C 25 | readT2 ldx theSLOT16
621 | 1 brutaltester.s 377 | Code | 11 | | 3 | 00/2479 : BD 8C C0 | lda $c08c,x ; T2
622 | 1 brutaltester.s 378 | Code | 11 | | 3 | 00/247C : 8D C6 24 | sta valTIMER
623 | 1 brutaltester.s 379 | Code | 11 | | 3 | 00/247F : BD 8D C0 | lda $c08d,x
624 | 1 brutaltester.s 380 | Code | 11 | | 3 | 00/2482 : 8D C7 24 | sta valTIMER+1
625 | 1 brutaltester.s 381 | Code | 11 | | 3 | 00/2485 : BD 8E C0 | lda $c08e,x
626 | 1 brutaltester.s 382 | Code | 11 | | 3 | 00/2488 : 8D C8 24 | sta valTIMER+2
627 | 1 brutaltester.s 383 | Code | 11 | | 3 | 00/248B : BD 8F C0 | lda $c08f,x
628 | 1 brutaltester.s 384 | Code | 11 | | 3 | 00/248E : 8D C9 24 | sta valTIMER+3
629 | 1 brutaltester.s 385 | Code | 11 | | 1 | 00/2491 : 60 | rts
630 | 1 brutaltester.s 386 | Empty | 11 | | 0 | 00/2492 |
631 | 1 brutaltester.s 387 | Comment | 11 | | 0 | 00/2492 | *------- Print timer value
632 | 1 brutaltester.s 388 | Empty | 11 | | 0 | 00/2492 |
633 | 1 brutaltester.s 389 | Code | 11 | | 3 | 00/2492 : AD C9 24 | printTIMER lda valTIMER+3
634 | 1 brutaltester.s 390 | Code | 11 | | 3 | 00/2495 : 20 DA FD | jsr {$FDDA}
635 | 1 brutaltester.s 391 | Code | 11 | | 3 | 00/2498 : AD C8 24 | lda valTIMER+2
636 | 1 brutaltester.s 392 | Code | 11 | | 3 | 00/249B : 20 DA FD | jsr {$FDDA}
637 | 1 brutaltester.s 393 | Code | 11 | | 3 | 00/249E : AD C7 24 | lda valTIMER+1
638 | 1 brutaltester.s 394 | Code | 11 | | 3 | 00/24A1 : 20 DA FD | jsr {$FDDA}
639 | 1 brutaltester.s 395 | Code | 11 | | 3 | 00/24A4 : AD C6 24 | lda valTIMER
640 | 1 brutaltester.s 396 | Code | 11 | | 3 | 00/24A7 : 4C DA FD | jmp {$FDDA}
641 | 1 brutaltester.s 397 | Empty | 11 | | 0 | 00/24AA |
642 | 1 brutaltester.s 398 | Comment | 11 | | 0 | 00/24AA | *---
643 | 1 brutaltester.s 399 | Empty | 11 | | 0 | 00/24AA |
644 | 1 brutaltester.s 400 | Data | 11 | | 8 | 00/24AA : 8D CC EF EF | strTHELOOP asc 8d"Loop: "00
| | | | | | F0 BA A0 00 |
645 | 1 brutaltester.s 401 | Data | 11 | | 11 | 00/24B2 : A0 AF A0 D4 | strTIMER2 asc " / Timer: "00
| | | | | | E9 ED E5 F2 |
| | | | | | BA A0 00 |
646 | 1 brutaltester.s 402 | Data | 11 | | 9 | 00/24BD : 8D D4 E9 ED | strTIMER asc 8d"Timer: "00
| | | | | | E5 F2 BA A0 |
| | | | | | 00 |
647 | 1 brutaltester.s 403 | Data | 11 | | 4 | 00/24C6 : 00 00 00 00 | valTIMER ds 4 ; the 32-bit value
648 | 1 brutaltester.s 404 | Empty | 11 | | 0 | 00/24CA |
649 | 1 brutaltester.s 405 | Comment | 11 | | 0 | 00/24CA | *------- Miscellaneous
650 | 1 brutaltester.s 406 | Empty | 11 | | 0 | 00/24CA |
651 | 1 brutaltester.s 407 | Code | 11 | | 3 | 00/24CA : 8C D1 24 | printSTRING sty printSTRING1+1
652 | 1 brutaltester.s 408 | Code | 11 | | 3 | 00/24CD : 8E D2 24 | stx printSTRING1+2
653 | 1 brutaltester.s 409 | Empty | 11 | | 0 | 00/24D0 |
654 | 1 brutaltester.s 410 | Code | 11 | | 3 | 00/24D0 : AD BD BD | printSTRING1 lda $bdbd
655 | 1 brutaltester.s 411 | Code | 11 | | 2 | 00/24D3 : F0 29 | beq printSTRING4
656 | 1 brutaltester.s 412 | Empty | 11 | | 0 | 00/24D5 |
657 | 1 brutaltester.s 413 | Code | 11 | | 3 | 00/24D5 : AE 08 25 | ldx theTIMER
658 | 1 brutaltester.s 414 | Code | 11 | | 2 | 00/24D8 : C9 A5 | cmp #"%"
659 | 1 brutaltester.s 415 | Code | 11 | | 2 | 00/24DA : F0 0D | beq printSTRING2
660 | 1 brutaltester.s 416 | Code | 11 | | 2 | 00/24DC : A2 01 | ldx #{1}
661 | 1 brutaltester.s 417 | Code | 11 | | 2 | 00/24DE : C9 C0 | cmp #"@"
662 | 1 brutaltester.s 418 | Code | 11 | | 2 | 00/24E0 : F0 07 | beq printSTRING2
663 | 1 brutaltester.s 419 | Code | 11 | | 3 | 00/24E2 : AE 0B 25 | ldx theSLOT
664 | 1 brutaltester.s 420 | Code | 11 | | 2 | 00/24E5 : C9 A3 | cmp #"#"
665 | 1 brutaltester.s 421 | Code | 11 | | 2 | 00/24E7 : D0 03 | bne printSTRING3
666 | 1 brutaltester.s 422 | Code | 11 | | 1 | 00/24E9 : 8A | printSTRING2 txa
667 | 1 brutaltester.s 423 | Code | 11 | | 2 | 00/24EA : 09 B0 | ora #"0"
668 | 1 brutaltester.s 424 | Empty | 11 | | 0 | 00/24EC |
669 | 1 brutaltester.s 425 | Code | 11 | | 3 | 00/24EC : 20 ED FD | printSTRING3 jsr {$FDED}
670 | 1 brutaltester.s 426 | Empty | 11 | | 0 | 00/24EF |
671 | 1 brutaltester.s 427 | Code | 11 | | 3 | 00/24EF : EE D1 24 | inc printSTRING1+1
672 | 1 brutaltester.s 428 | Code | 11 | | 2 | 00/24F2 : D0 DC | bne printSTRING1
673 | 1 brutaltester.s 429 | Code | 11 | | 3 | 00/24F4 : EE D2 24 | inc printSTRING1+2
674 | 1 brutaltester.s 430 | Code | 11 | | 3 | 00/24F7 : AD D2 24 | lda printSTRING1+2 ; force end of routine
675 | 1 brutaltester.s 431 | Code | 11 | | 2 | 00/24FA : C9 C0 | cmp #$c0 ; if we reach $C000
676 | 1 brutaltester.s 432 | Code | 11 | | 2 | 00/24FC : 90 D2 | bcc printSTRING1
677 | 1 brutaltester.s 433 | Empty | 11 | | 0 | 00/24FE |
678 | 1 brutaltester.s 434 | Code | 11 | | 1 | 00/24FE : 60 | printSTRING4 rts
679 | 1 brutaltester.s 435 | Empty | 11 | | 0 | 00/24FF |
680 | 1 brutaltester.s 436 | Comment | 11 | | 0 | 00/24FF | *------- waitFORKEY
681 | 1 brutaltester.s 437 | Empty | 11 | | 0 | 00/24FF |
682 | 1 brutaltester.s 438 | Code | 11 | | 3 | 00/24FF : AD 00 C0 | waitFORKEY lda {$C000}
683 | 1 brutaltester.s 439 | Code | 11 | | 2 | 00/2502 : 10 FB | bpl waitFORKEY
684 | 1 brutaltester.s 440 | Code | 11 | | 3 | 00/2504 : 8D 10 C0 | sta {$C010}
685 | 1 brutaltester.s 441 | Code | 11 | | 1 | 00/2507 : 60 | rts
686 | 1 brutaltester.s 442 | Empty | 11 | | 0 | 00/2508 |
687 | 1 brutaltester.s 443 | Comment | 11 | | 0 | 00/2508 | *-------------- DATA
688 | 1 brutaltester.s 444 | Empty | 11 | | 0 | 00/2508 |
689 | 1 brutaltester.s 445 | Data | 11 | | 1 | 00/2508 : 00 | theTIMER ds 1 ; 1..2
690 | 1 brutaltester.s 446 | Data | 11 | | 1 | 00/2509 : 00 | theFREQ ds 1 ; 0..3
691 | 1 brutaltester.s 447 | Data | 11 | | 1 | 00/250A : 00 | theDISPLAY ds 1 ; 0..1
692 | 1 brutaltester.s 448 | Data | 11 | | 1 | 00/250B : 07 | theSLOT dfb 7 ; 0..7
693 | 1 brutaltester.s 449 | Data | 11 | | 1 | 00/250C : 70 | theSLOT16 dfb $70 ; 10=slot 1, ..., 70=slot 7
694 | 1 brutaltester.s 450 | Empty | 11 | | 0 | 00/250D |
695 | 1 brutaltester.s 451 | Data | 11 | | 28 | 00/250D : C2 F2 F5 F4 | strHELLO asc "Brutal Timer Auto Test v0.@"8d
| | | | | | E1 EC A0 D4 |
| | | | | | E9 ED E5 F2 |
| | | | | | A0 C1 F5 F4 |
| | | | | | EF A0 D4 E5 |
| | | | | | F3 F4 A0 F6 |
| | | | | | B0 AE C0 8D |
696 | 1 brutaltester.s 452 | Data | 11 | | 28 | 00/2529 : A8 E3 A9 A0 | asc "(c) 2026, Plamen Vaysilov &"8d
| | | | | | B2 B0 B2 B6 |
| | | | | | AC A0 D0 EC |
| | | | | | E1 ED E5 EE |
| | | | | | A0 D6 E1 F9 |
| | | | | | F3 E9 EC EF |
| | | | | | F6 A0 A6 8D |
697 | 1 brutaltester.s 453 | Data | 11 | | 23 | 00/2545 : C2 F2 F5 F4 | asc "Brutal Deluxe Software"00
| | | | | | E1 EC A0 C4 |
| | | | | | E5 EC F5 F8 |
| | | | | | E5 A0 D3 EF |
| | | | | | E6 F4 F7 E1 |
| | | | | | F2 E5 00 |
698 | 1 brutaltester.s 454 | Empty | 11 | | 0 | 00/255C |
699 | 1 brutaltester.s 455 | Comment | 11 | | 0 | 00/255C | * asc "1234567890123456789012345"
700 | 1 brutaltester.s 456 | Empty | 11 | | 0 | 00/255C |
701 | 1 brutaltester.s 457 | Data | 11 | | 2 | 00/255C : 8D 8D | strMENU asc 8d8d
702 | 1 brutaltester.s 458 | Data | 11 | | 23 | 00/255E : B1 AD A0 D3 | asc "1- Set slot & Test (#)"8d
| | | | | | E5 F4 A0 F3 |
| | | | | | EC EF F4 A0 |
| | | | | | A6 A0 D4 E5 |
| | | | | | F3 F4 A0 A8 |
| | | | | | A3 A9 8D |
703 | 1 brutaltester.s 459 | Data | 11 | | 16 | 00/2575 : B2 AD A0 CC | asc "2- Launch tests"8d
| | | | | | E1 F5 EE E3 |
| | | | | | E8 A0 F4 E5 |
| | | | | | F3 F4 F3 8D |
704 | 1 brutaltester.s 460 | Data | 11 | | 28 | 00/2585 : D3 E5 EC E5 | asc "Select entry (0 to exit) > "00
| | | | | | E3 F4 A0 E5 |
| | | | | | EE F4 F2 F9 |
| | | | | | A0 A8 B0 A0 |
| | | | | | F4 EF A0 E5 |
| | | | | | F8 E9 F4 A9 |
| | | | | | A0 BE A0 00 |
705 | 1 brutaltester.s 461 | Empty | 11 | | 0 | 00/25A1 |
706 | 1 brutaltester.s 462 | Data | 11 | | 1 | 00/25A1 : 8D | strSETSLOT asc 8d
707 | 1 brutaltester.s 463 | Data | 11 | | 18 | 00/25A2 : D3 E5 F4 A0 | asc "Set slot (1-7) > "00
| | | | | | F3 EC EF F4 |
| | | | | | A0 A8 B1 AD |
| | | | | | B7 A9 A0 BE |
| | | | | | A0 00 |
708 | 1 brutaltester.s 464 | Empty | 11 | | 0 | 00/25B4 |
709 | 1 brutaltester.s 465 | Data | 11 | | 12 | 00/25B4 : C1 B2 AD C6 | strT2FREQ0 asc "A2-F0 clock"00
| | | | | | B0 A0 E3 EC |
| | | | | | EF E3 EB 00 |
710 | 1 brutaltester.s 466 | Data | 11 | | 11 | 00/25C0 : C1 B2 AD B3 | strT2FREQ1 asc "A2-3.5 MHz"00
| | | | | | AE B5 A0 CD |
| | | | | | C8 FA 00 |
711 | 1 brutaltester.s 467 | Data | 11 | | 13 | 00/25CB : B2 B0 A0 CD | strT2FREQ2 asc "20 MHz clock"00
| | | | | | C8 FA A0 E3 |
| | | | | | EC EF E3 EB |
| | | | | | 00 |
712 | 1 brutaltester.s 468 | Data | 11 | | 14 | 00/25D8 : C3 F5 F3 F4 | strT2FREQ3 asc "Custom quartz"00
| | | | | | EF ED A0 F1 |
| | | | | | F5 E1 F2 F4 |
| | | | | | FA 00 |
713 | 1 brutaltester.s 469 | Empty | 11 | | 0 | 00/25E6 |
714 | 1 brutaltester.s 470 | Data | 11 | | 11 | 00/25E6 : 8D C7 EF EF | strGOODBYE asc 8d"Good bye!"00
| | | | | | E4 A0 E2 F9 |
| | | | | | E5 A1 00 |
------+--------------------------+-------------+----+---------+------+-----------------------+-------------------------------------------------------------------
@@ -0,0 +1,469 @@
------+--------------------------+-------------+----+---------+------+-----------------------+-------------------------------------------------------------------
Line | # File Line | Line Type | MX | Reloc | Size | Address Object Code | Source Code
------+--------------------------+-------------+----+---------+------+-----------------------+-------------------------------------------------------------------
1 | 1 brutaltester.s 1 | Comment | ?? | | -1 | 00/FFFF | *
2 | 1 brutaltester.s 2 | Comment | ?? | | -1 | 00/FFFF | * Brutal Timer Test
3 | 1 brutaltester.s 3 | Comment | ?? | | -1 | 00/FFFF | * by Plamen Vaysilov
4 | 1 brutaltester.s 4 | Comment | ?? | | -1 | 00/FFFF | *
5 | 1 brutaltester.s 5 | Comment | ?? | | -1 | 00/FFFF | * (c) 2026, Brutal Deluxe Software
6 | 1 brutaltester.s 6 | Comment | ?? | | -1 | 00/FFFF | *
7 | 1 brutaltester.s 7 | Empty | ?? | | -1 | 00/FFFF |
8 | 1 brutaltester.s 8 | Directive | ?? | | -1 | 00/FFFF | typ BIN
9 | 1 brutaltester.s 9 | Unknown | ?? | | -1 | 00/FFFF | auxtype $2000
10 | 1 brutaltester.s 10 | Directive | ?? | | -1 | 00/FFFF | org $2000
11 | 1 brutaltester.s 11 | Directive | ?? | | -1 | 00/FFFF | lst off
12 | 1 brutaltester.s 12 | Directive | ?? | | -1 | 00/FFFF | dsk brutaltester
13 | 1 brutaltester.s 13 | Empty | ?? | | -1 | 00/FFFF |
14 | 1 brutaltester.s 14 | Comment | ?? | | -1 | 00/FFFF | *-------------- FIRMWARE
15 | 1 brutaltester.s 15 | Empty | ?? | | -1 | 00/FFFF |
16 | 1 brutaltester.s 16 | Equivalence | ?? | | -1 | 00/FFFF | WNDLFT = $20
17 | 1 brutaltester.s 17 | Equivalence | ?? | | -1 | 00/FFFF | WNDWDTH = $21
18 | 1 brutaltester.s 18 | Equivalence | ?? | | -1 | 00/FFFF | WNDTOP = $22
19 | 1 brutaltester.s 19 | Equivalence | ?? | | -1 | 00/FFFF | WNDBTM = $23
20 | 1 brutaltester.s 20 | Equivalence | ?? | | -1 | 00/FFFF | CH = $24
21 | 1 brutaltester.s 21 | Equivalence | ?? | | -1 | 00/FFFF | CV = $25
22 | 1 brutaltester.s 22 | Empty | ?? | | -1 | 00/FFFF |
23 | 1 brutaltester.s 23 | Equivalence | ?? | | -1 | 00/FFFF | dpSTRING = $fc
24 | 1 brutaltester.s 24 | Equivalence | ?? | | -1 | 00/FFFF | dpDFTVALUE = $fe
25 | 1 brutaltester.s 25 | Empty | ?? | | -1 | 00/FFFF |
26 | 1 brutaltester.s 26 | Equivalence | ?? | | -1 | 00/FFFF | KBD = $C000
27 | 1 brutaltester.s 27 | Equivalence | ?? | | -1 | 00/FFFF | KBDSTROBE = $C010
28 | 1 brutaltester.s 28 | Empty | ?? | | -1 | 00/FFFF |
29 | 1 brutaltester.s 29 | Equivalence | ?? | | -1 | 00/FFFF | INIT = $FB2F
30 | 1 brutaltester.s 30 | Equivalence | ?? | | -1 | 00/FFFF | TABV = $FB5B
31 | 1 brutaltester.s 31 | Equivalence | ?? | | -1 | 00/FFFF | HOME = $FC58
32 | 1 brutaltester.s 32 | Equivalence | ?? | | -1 | 00/FFFF | WAIT = $FCA8
33 | 1 brutaltester.s 33 | Equivalence | ?? | | -1 | 00/FFFF | RDKEY = $FD0C
34 | 1 brutaltester.s 34 | Equivalence | ?? | | -1 | 00/FFFF | PRBYTE = $FDDA
35 | 1 brutaltester.s 35 | Equivalence | ?? | | -1 | 00/FFFF | COUT = $FDED
36 | 1 brutaltester.s 36 | Empty | ?? | | -1 | 00/FFFF |
37 | 1 brutaltester.s 37 | Comment | ?? | | -1 | 00/FFFF | *-------------- EQUATES
38 | 1 brutaltester.s 38 | Empty | ?? | | -1 | 00/FFFF |
39 | 1 brutaltester.s 39 | Equivalence | ?? | | -1 | 00/FFFF | VERSION = 1 ; v0.x
40 | 1 brutaltester.s 40 | Empty | ?? | | -1 | 00/FFFF |
41 | 1 brutaltester.s 41 | Equivalence | ?? | | -1 | 00/FFFF | T0 = 0
42 | 1 brutaltester.s 42 | Equivalence | ?? | | -1 | 00/FFFF | T1 = 1
43 | 1 brutaltester.s 43 | Equivalence | ?? | | -1 | 00/FFFF | T2 = 2
44 | 1 brutaltester.s 44 | Empty | ?? | | -1 | 00/FFFF |
45 | 1 brutaltester.s 45 | Equivalence | ?? | | -1 | 00/FFFF | FREQ_A2F0 = 0
46 | 1 brutaltester.s 46 | Equivalence | ?? | | -1 | 00/FFFF | FREQ_A235 = 1
47 | 1 brutaltester.s 47 | Equivalence | ?? | | -1 | 00/FFFF | FREQ_20MHZ = 2
48 | 1 brutaltester.s 48 | Equivalence | ?? | | -1 | 00/FFFF | FREQ_CUSTOM = 3
49 | 1 brutaltester.s 49 | Empty | ?? | | -1 | 00/FFFF |
50 | 1 brutaltester.s 50 | Equivalence | ?? | | -1 | 00/FFFF | T2_DISP_OFF = 0
51 | 1 brutaltester.s 51 | Equivalence | ?? | | -1 | 00/FFFF | T2_DISP_ON = 1
52 | 1 brutaltester.s 52 | Empty | ?? | | -1 | 00/FFFF |
53 | 1 brutaltester.s 53 | Equivalence | ?? | | -1 | 00/FFFF | FALSE = 0
54 | 1 brutaltester.s 54 | Equivalence | ?? | | -1 | 00/FFFF | TRUE = 255
55 | 1 brutaltester.s 55 | Empty | ?? | | -1 | 00/FFFF |
56 | 1 brutaltester.s 56 | Comment | ?? | | -1 | 00/FFFF | *-------------- MACROS
57 | 1 brutaltester.s 57 | Empty | ?? | | -1 | 00/FFFF |
58 | 1 brutaltester.s 58 | Directive | ?? | | -1 | 00/FFFF | @printSTRING mac
59 | 1 brutaltester.s 59 | Directive | ?? | | -1 | 00/FFFF | ldx #>]1
60 | 1 brutaltester.s 60 | Directive | ?? | | -1 | 00/FFFF | ldy #<]1
61 | 1 brutaltester.s 61 | Directive | ?? | | -1 | 00/FFFF | jsr printSTRING
62 | 1 brutaltester.s 62 | Directive | ?? | | -1 | 00/FFFF | <<<
63 | 1 brutaltester.s 63 | Empty | ?? | | -1 | 00/FFFF |
64 | 1 brutaltester.s 64 | Directive | ?? | | -1 | 00/FFFF | @setDPSTRING mac
65 | 1 brutaltester.s 65 | Directive | ?? | | -1 | 00/FFFF | ldx #>]1
66 | 1 brutaltester.s 66 | Directive | ?? | | -1 | 00/FFFF | stx dpSTRING+1
67 | 1 brutaltester.s 67 | Directive | ?? | | -1 | 00/FFFF | ldy #<]1
68 | 1 brutaltester.s 68 | Directive | ?? | | -1 | 00/FFFF | sty dpSTRING
69 | 1 brutaltester.s 69 | Directive | ?? | | -1 | 00/FFFF | <<<
70 | 1 brutaltester.s 70 | Empty | ?? | | -1 | 00/FFFF |
71 | 1 brutaltester.s 71 | Directive | ?? | | -1 | 00/FFFF | @setDPDFTVALUE mac
72 | 1 brutaltester.s 72 | Directive | ?? | | -1 | 00/FFFF | ldx #>]1
73 | 1 brutaltester.s 73 | Directive | ?? | | -1 | 00/FFFF | stx dpDFTVALUE+1
74 | 1 brutaltester.s 74 | Directive | ?? | | -1 | 00/FFFF | ldy #<]1
75 | 1 brutaltester.s 75 | Directive | ?? | | -1 | 00/FFFF | sty dpDFTVALUE
76 | 1 brutaltester.s 76 | Directive | ?? | | -1 | 00/FFFF | <<<
77 | 1 brutaltester.s 77 | Empty | ?? | | -1 | 00/FFFF |
78 | 1 brutaltester.s 78 | Comment | ?? | | -1 | 00/FFFF | *-------------- CODE
79 | 1 brutaltester.s 79 | Empty | ?? | | -1 | 00/FFFF |
80 | 1 brutaltester.s 80 | Code | ?? | | -1 | 00/FFFF : 00 | jsr HOME
81 | 1 brutaltester.s 81 | Macro | ?? | | -1 | 00/FFFF | @printSTRING #strHELLO
82 | 1 brutaltester.s 82 | Empty | ?? | | -1 | 00/FFFF |
83 | 1 brutaltester.s 83 | Comment | ?? | | -1 | 00/FFFF | *---
84 | 1 brutaltester.s 84 | Empty | ?? | | -1 | 00/FFFF |
85 | 1 brutaltester.s 85 | Macro | ?? | | -1 | 00/FFFF | loopTEST @printSTRING #strMENU
86 | 1 brutaltester.s 86 | Code | ?? | | -1 | 00/FFFF : 00 | jsr RDKEY
87 | 1 brutaltester.s 87 | Code | ?? | | -1 | 00/FFFF : 00 | jsr COUT
88 | 1 brutaltester.s 88 | Code | ?? | | -1 | 00/FFFF : 00 | cmp #"0"
89 | 1 brutaltester.s 89 | Code | ?? | | -1 | 00/FFFF : 00 | bne noTEST0
90 | 1 brutaltester.s 90 | Empty | ?? | | -1 | 00/FFFF |
91 | 1 brutaltester.s 91 | Macro | ?? | | -1 | 00/FFFF | @printSTRING #strGOODBYE
92 | 1 brutaltester.s 92 | Code | ?? | | -1 | 00/FFFF : 00 | jmp INIT
93 | 1 brutaltester.s 93 | Empty | ?? | | -1 | 00/FFFF |
94 | 1 brutaltester.s 94 | Code | ?? | | -1 | 00/FFFF : 00 | noTEST0 cmp #"1" ; set slot & launch tests
95 | 1 brutaltester.s 95 | Code | ?? | | -1 | 00/FFFF : 00 | bne noTEST1
96 | 1 brutaltester.s 96 | Code | ?? | | -1 | 00/FFFF : 00 | jmp doSETSLOT
97 | 1 brutaltester.s 97 | Empty | ?? | | -1 | 00/FFFF |
98 | 1 brutaltester.s 98 | Code | ?? | | -1 | 00/FFFF : 00 | noTEST1 cmp #"2" ; launch tests
99 | 1 brutaltester.s 99 | Code | ?? | | -1 | 00/FFFF : 00 | bne loopTEST
100 | 1 brutaltester.s 100 | Code | ?? | | -1 | 00/FFFF : 00 | jmp doTEST
101 | 1 brutaltester.s 101 | Empty | ?? | | -1 | 00/FFFF |
102 | 1 brutaltester.s 102 | Comment | ?? | | -1 | 00/FFFF | *-------------- SET SLOT AND LAUNCH TESTS...
103 | 1 brutaltester.s 103 | Empty | ?? | | -1 | 00/FFFF |
104 | 1 brutaltester.s 104 | Macro | ?? | | -1 | 00/FFFF | doSETSLOT @printSTRING #strSETSLOT
105 | 1 brutaltester.s 105 | Code | ?? | | -1 | 00/FFFF : 00 | jsr RDKEY
106 | 1 brutaltester.s 106 | Code | ?? | | -1 | 00/FFFF : 00 | jsr COUT
107 | 1 brutaltester.s 107 | Code | ?? | | -1 | 00/FFFF : 00 | cmp #"1"
108 | 1 brutaltester.s 108 | Code | ?? | | -1 | 00/FFFF : 00 | bcc doSETSLOT
109 | 1 brutaltester.s 109 | Code | ?? | | -1 | 00/FFFF : 00 | cmp #"7"+1
110 | 1 brutaltester.s 110 | Code | ?? | | -1 | 00/FFFF : 00 | bcs doSETSLOT
111 | 1 brutaltester.s 111 | Empty | ?? | | -1 | 00/FFFF |
112 | 1 brutaltester.s 112 | Code | ?? | | -1 | 00/FFFF : 00 | sec
113 | 1 brutaltester.s 113 | Code | ?? | | -1 | 00/FFFF : 00 | sbc #"0"
114 | 1 brutaltester.s 114 | Code | ?? | | -1 | 00/FFFF : 00 | sta theSLOT
115 | 1 brutaltester.s 115 | Code | ?? | | -1 | 00/FFFF : 00 | asl
116 | 1 brutaltester.s 116 | Code | ?? | | -1 | 00/FFFF : 00 | asl
117 | 1 brutaltester.s 117 | Code | ?? | | -1 | 00/FFFF : 00 | asl
118 | 1 brutaltester.s 118 | Code | ?? | | -1 | 00/FFFF : 00 | asl
119 | 1 brutaltester.s 119 | Code | ?? | | -1 | 00/FFFF : 00 | sta theSLOT16
120 | 1 brutaltester.s 120 | Empty | ?? | | -1 | 00/FFFF |
121 | 1 brutaltester.s 121 | Comment | ?? | | -1 | 00/FFFF | * jmp loopTEST
122 | 1 brutaltester.s 122 | Empty | ?? | | -1 | 00/FFFF |
123 | 1 brutaltester.s 123 | Comment | ?? | | -1 | 00/FFFF | *-------------- DO ALL TESTS
124 | 1 brutaltester.s 124 | Comment | ?? | | -1 | 00/FFFF | * 1- reset T1, start/stop/display/compare/reset to 0
125 | 1 brutaltester.s 125 | Empty | ?? | | -1 | 00/FFFF |
126 | 1 brutaltester.s 126 | Comment | ?? | | -1 | 00/FFFF | * Can you write simple test program for automatic check cart
127 | 1 brutaltester.s 127 | Comment | ?? | | -1 | 00/FFFF | * ( Start/Stop timer and check value for T1. Clear and check if 0 ,
128 | 1 brutaltester.s 128 | Comment | ?? | | -1 | 00/FFFF | * Start/Stop T2 and check value , change Source freq and check again value .
129 | 1 brutaltester.s 129 | Comment | ?? | | -1 | 00/FFFF | * On/Off display )
130 | 1 brutaltester.s 130 | Comment | ?? | | -1 | 00/FFFF | * .This can be automatic . I will provide values of timer for different Freq .
131 | 1 brutaltester.s 131 | Empty | ?? | | -1 | 00/FFFF |
132 | 1 brutaltester.s 132 | Code | ?? | | -1 | 00/FFFF : 00 | doTESTS lda #T0 ; reset all timers
133 | 1 brutaltester.s 133 | Code | ?? | | -1 | 00/FFFF : 00 | jsr resetTIMER2
134 | 1 brutaltester.s 134 | Empty | ?? | | -1 | 00/FFFF |
135 | 1 brutaltester.s 135 | Macro | ?? | | -1 | 00/FFFF | @setDPSTRING #strT1dft ; test T1
136 | 1 brutaltester.s 136 | Macro | ?? | | -1 | 00/FFFF | @setDPDFTVALUE #dftT1
137 | 1 brutaltester.s 137 | Empty | ?? | | -1 | 00/FFFF |
138 | 1 brutaltester.s 138 | Code | ?? | | -1 | 00/FFFF : 00 | lda #T1 ; do it
139 | 1 brutaltester.s 139 | Code | ?? | | -1 | 00/FFFF : 00 | jsr testTIMER
140 | 1 brutaltester.s 140 | Empty | ?? | | -1 | 00/FFFF |
141 | 1 brutaltester.s 141 | Code | ?? | | -1 | 00/FFFF : 00 | lda #0 ; test T2
142 | 1 brutaltester.s 142 | Code | ?? | | -1 | 00/FFFF : 00 | ]lp sta theFREQ
143 | 1 brutaltester.s 143 | Code | ?? | | -1 | 00/FFFF : 00 | asl
144 | 1 brutaltester.s 144 | Code | ?? | | -1 | 00/FFFF : 00 | tax
145 | 1 brutaltester.s 145 | Code | ?? | | -1 | 00/FFFF : 00 | lda tblSTRT2,x ; default string
146 | 1 brutaltester.s 146 | Code | ?? | | -1 | 00/FFFF : 00 | sta dpSTRING
147 | 1 brutaltester.s 147 | Code | ?? | | -1 | 00/FFFF : 00 | lda tblSTRT2+1,x
148 | 1 brutaltester.s 148 | Code | ?? | | -1 | 00/FFFF : 00 | sta dpSTRING+1
149 | 1 brutaltester.s 149 | Empty | ?? | | -1 | 00/FFFF |
150 | 1 brutaltester.s 150 | Code | ?? | | -1 | 00/FFFF : 00 | lda tblDFTT2,x ; default expected value
151 | 1 brutaltester.s 151 | Code | ?? | | -1 | 00/FFFF : 00 | sta dpDFTVALUE
152 | 1 brutaltester.s 152 | Code | ?? | | -1 | 00/FFFF : 00 | lda tblDFTT2+1,x
153 | 1 brutaltester.s 153 | Code | ?? | | -1 | 00/FFFF : 00 | sta dpDFTVALUE+1
154 | 1 brutaltester.s 154 | Empty | ?? | | -1 | 00/FFFF |
155 | 1 brutaltester.s 155 | Code | ?? | | -1 | 00/FFFF : 00 | lda theFREQ ; set frequency
156 | 1 brutaltester.s 156 | Code | ?? | | -1 | 00/FFFF : 00 | jsr setT2FREQUENCY2
157 | 1 brutaltester.s 157 | Code | ?? | | -1 | 00/FFFF : 00 | lda #T2 ; do it
158 | 1 brutaltester.s 158 | Code | ?? | | -1 | 00/FFFF : 00 | jsr testTIMER
159 | 1 brutaltester.s 159 | Code | ?? | | -1 | 00/FFFF : 00 | lda theFREQ ; next frequency
160 | 1 brutaltester.s 160 | Code | ?? | | -1 | 00/FFFF : 00 | clc
161 | 1 brutaltester.s 161 | Code | ?? | | -1 | 00/FFFF : 00 | adc #1
162 | 1 brutaltester.s 162 | Code | ?? | | -1 | 00/FFFF : 00 | cmp #3+1
163 | 1 brutaltester.s 163 | Code | ?? | | -1 | 00/FFFF : 00 | bcc ]lp
164 | 1 brutaltester.s 164 | Empty | ?? | | -1 | 00/FFFF |
165 | 1 brutaltester.s 165 | Code | ?? | | -1 | 00/FFFF : 00 | jsr testDISPLAY ; test the display
166 | 1 brutaltester.s 166 | Code | ?? | | -1 | 00/FFFF : 00 | jmp loopTEST ; exit
167 | 1 brutaltester.s 167 | Empty | ?? | | -1 | 00/FFFF |
168 | 1 brutaltester.s 168 | Comment | ?? | | -1 | 00/FFFF | *---
169 | 1 brutaltester.s 169 | Empty | ?? | | -1 | 00/FFFF |
170 | 1 brutaltester.s 170 | Data | ?? | | -1 | 00/FFFF : | strT1dft asc "000001B5"00
171 | 1 brutaltester.s 171 | Data | ?? | | -1 | 00/FFFF : | strT2F0dft asc "00000000"00
172 | 1 brutaltester.s 172 | Data | ?? | | -1 | 00/FFFF : | strT2F1dft asc "00000100"00
173 | 1 brutaltester.s 173 | Data | ?? | | -1 | 00/FFFF : | strT2F2dft asc "00000200"00
174 | 1 brutaltester.s 174 | Data | ?? | | -1 | 00/FFFF : | strT2F3dft asc "00000300"00
175 | 1 brutaltester.s 175 | Empty | ?? | | -1 | 00/FFFF |
176 | 1 brutaltester.s 176 | Data | ?? | | -1 | 00/FFFF : | tblSTRT2 da strT2F0dft
177 | 1 brutaltester.s 177 | Data | ?? | | -1 | 00/FFFF : | da strT2F1dft
178 | 1 brutaltester.s 178 | Data | ?? | | -1 | 00/FFFF : | da strT2F2dft
179 | 1 brutaltester.s 179 | Data | ?? | | -1 | 00/FFFF : | da strT2F3dft
180 | 1 brutaltester.s 180 | Empty | ?? | | -1 | 00/FFFF |
181 | 1 brutaltester.s 181 | Data | ?? | | -1 | 00/FFFF : | tblDFTT2 da dftT2F0
182 | 1 brutaltester.s 182 | Data | ?? | | -1 | 00/FFFF : | da dftT2F1
183 | 1 brutaltester.s 183 | Data | ?? | | -1 | 00/FFFF : | da dftT2F2
184 | 1 brutaltester.s 184 | Data | ?? | | -1 | 00/FFFF : | da dftT2F3
185 | 1 brutaltester.s 185 | Empty | ?? | | -1 | 00/FFFF |
186 | 1 brutaltester.s 186 | Data | ?? | | -1 | 00/FFFF : | dftT1 adrl 437
187 | 1 brutaltester.s 187 | Data | ?? | | -1 | 00/FFFF : | dftT2F0 adrl $000
188 | 1 brutaltester.s 188 | Data | ?? | | -1 | 00/FFFF : | dftT2F1 adrl $100
189 | 1 brutaltester.s 189 | Data | ?? | | -1 | 00/FFFF : | dftT2F2 adrl $200
190 | 1 brutaltester.s 190 | Data | ?? | | -1 | 00/FFFF : | dftT2F3 adrl $300
191 | 1 brutaltester.s 191 | Empty | ?? | | -1 | 00/FFFF |
192 | 1 brutaltester.s 192 | Comment | ?? | | -1 | 00/FFFF | *-------------- TEST DISPLAY
193 | 1 brutaltester.s 193 | Empty | ?? | | -1 | 00/FFFF |
194 | 1 brutaltester.s 194 | Code | ?? | | -1 | 00/FFFF : 00 | testDISPLAY lda #0 ; set to 1MHz
195 | 1 brutaltester.s 195 | Code | ?? | | -1 | 00/FFFF : 00 | jsr setT2FREQUENCY2
196 | 1 brutaltester.s 196 | Empty | ?? | | -1 | 00/FFFF |
197 | 1 brutaltester.s 197 | Code | ?? | | -1 | 00/FFFF : 00 | lda #T2 ; select T2
198 | 1 brutaltester.s 198 | Code | ?? | | -1 | 00/FFFF : 00 | jsr resetTIMER2
199 | 1 brutaltester.s 199 | Empty | ?? | | -1 | 00/FFFF |
200 | 1 brutaltester.s 200 | Macro | ?? | | -1 | 00/FFFF | @printSTRING #strDISPLAYOFF ; tell it
201 | 1 brutaltester.s 201 | Code | ?? | | -1 | 00/FFFF : 00 | lda #T2_DISP_OFF ; turn display off
202 | 1 brutaltester.s 202 | Code | ?? | | -1 | 00/FFFF : 00 | jsr doDISPLAY ; test
203 | 1 brutaltester.s 203 | Empty | ?? | | -1 | 00/FFFF |
204 | 1 brutaltester.s 204 | Macro | ?? | | -1 | 00/FFFF | @printSTRING #strDISPLAYON
205 | 1 brutaltester.s 205 | Code | ?? | | -1 | 00/FFFF : 00 | lda #T2_DISP_ON ; turn display on
206 | 1 brutaltester.s 206 | Code | ?? | | -1 | 00/FFFF : 00 | jsr doDISPLAY ; test
207 | 1 brutaltester.s 207 | Empty | ?? | | -1 | 00/FFFF |
208 | 1 brutaltester.s 208 | Code | ?? | | -1 | 00/FFFF : 00 | jsr waitFORKEY ; wait
209 | 1 brutaltester.s 209 | Code | ?? | | -1 | 00/FFFF : 00 | jmp loopTEST ; and return
210 | 1 brutaltester.s 210 | Empty | ?? | | -1 | 00/FFFF |
211 | 1 brutaltester.s 211 | Comment | ?? | | -1 | 00/FFFF | *---
212 | 1 brutaltester.s 212 | Empty | ?? | | -1 | 00/FFFF |
213 | 1 brutaltester.s 213 | Equivalence | ?? | | -1 | 00/FFFF | NBTESTS = 15
214 | 1 brutaltester.s 214 | Empty | ?? | | -1 | 00/FFFF |
215 | 1 brutaltester.s 215 | Code | ?? | | -1 | 00/FFFF : 00 | doDISPLAY jsr setT2DISPLAY2 ; turn display on/off
216 | 1 brutaltester.s 216 | Empty | ?? | | -1 | 00/FFFF |
217 | 1 brutaltester.s 217 | Code | ?? | | -1 | 00/FFFF : 00 | lda #T2 ; start timer
218 | 1 brutaltester.s 218 | Code | ?? | | -1 | 00/FFFF : 00 | jsr startTIMER2
219 | 1 brutaltester.s 219 | Code | ?? | | -1 | 00/FFFF : 00 | ldx #0 ; make 10 loops
220 | 1 brutaltester.s 220 | Code | ?? | | -1 | 00/FFFF : 00 | ]lp lda #"." ; show it
221 | 1 brutaltester.s 221 | Code | ?? | | -1 | 00/FFFF : 00 | jsr COUT
222 | 1 brutaltester.s 222 | Code | ?? | | -1 | 00/FFFF : 00 | jsr doTEST ; make the test
223 | 1 brutaltester.s 223 | Code | ?? | | -1 | 00/FFFF : 00 | inx
224 | 1 brutaltester.s 224 | Code | ?? | | -1 | 00/FFFF : 00 | cpx #NBTESTS
225 | 1 brutaltester.s 225 | Code | ?? | | -1 | 00/FFFF : 00 | bcc ]lp ; loop
226 | 1 brutaltester.s 226 | Empty | ?? | | -1 | 00/FFFF |
227 | 1 brutaltester.s 227 | Code | ?? | | -1 | 00/FFFF : 00 | lda #T2 ; stop the timer
228 | 1 brutaltester.s 228 | Code | ?? | | -1 | 00/FFFF : 00 | jmp stopTIMER2 ; we do not reset it
229 | 1 brutaltester.s 229 | Empty | ?? | | -1 | 00/FFFF |
230 | 1 brutaltester.s 230 | Comment | ?? | | -1 | 00/FFFF | *---
231 | 1 brutaltester.s 231 | Empty | ?? | | -1 | 00/FFFF |
232 | 1 brutaltester.s 232 | Data | ?? | | -1 | 00/FFFF : | strDISPLAYOFF asc 8d"Display is off "00
233 | 1 brutaltester.s 233 | Data | ?? | | -1 | 00/FFFF : | strDISPLAYON asc 8d"Display is on "00
234 | 1 brutaltester.s 234 | Empty | ?? | | -1 | 00/FFFF |
235 | 1 brutaltester.s 235 | Comment | ?? | | -1 | 00/FFFF | *-------------- TEST & COMPARE
236 | 1 brutaltester.s 236 | Empty | ?? | | -1 | 00/FFFF |
237 | 1 brutaltester.s 237 | Data | ?? | | -1 | 00/FFFF : | ds \
238 | 1 brutaltester.s 238 | Empty | ?? | | -1 | 00/FFFF |
239 | 1 brutaltester.s 239 | Code | ?? | | -1 | 00/FFFF : 00 | testTIMER sta theTIMER
240 | 1 brutaltester.s 240 | Code | ?? | | -1 | 00/FFFF : 00 | jsr resetTIMER ; make it 0
241 | 1 brutaltester.s 241 | Code | ?? | | -1 | 00/FFFF : 00 | jsr startTIMER ; start it
242 | 1 brutaltester.s 242 | Code | ?? | | -1 | 00/FFFF : 00 | jsr doTEST ; do the test
243 | 1 brutaltester.s 243 | Code | ?? | | -1 | 00/FFFF : 00 | jsr stopTIMER ; stop it
244 | 1 brutaltester.s 244 | Code | ?? | | -1 | 00/FFFF : 00 | jsr readTIMER ; read value
245 | 1 brutaltester.s 245 | Empty | ?? | | -1 | 00/FFFF |
246 | 1 brutaltester.s 246 | Macro | ?? | | -1 | 00/FFFF | @printSTRING #strTVALUE ; Tx want
247 | 1 brutaltester.s 247 | Code | ?? | | -1 | 00/FFFF : 00 | ldx dpSTRING+1
248 | 1 brutaltester.s 248 | Code | ?? | | -1 | 00/FFFF : 00 | ldy dpSTRING ; aabbccdd
249 | 1 brutaltester.s 249 | Code | ?? | | -1 | 00/FFFF : 00 | jsr printSTRING
250 | 1 brutaltester.s 250 | Macro | ?? | | -1 | 00/FFFF | @printSTRING #strTREAD ; read...
251 | 1 brutaltester.s 251 | Code | ?? | | -1 | 00/FFFF : 00 | jsr printTIMER ; show read value
252 | 1 brutaltester.s 252 | Empty | ?? | | -1 | 00/FFFF |
253 | 1 brutaltester.s 253 | Code | ?? | | -1 | 00/FFFF : 00 | ldy #0
254 | 1 brutaltester.s 254 | Code | ?? | | -1 | 00/FFFF : 00 | ]lp lda (dpDFTVALUE),y
255 | 1 brutaltester.s 255 | Code | ?? | | -1 | 00/FFFF : 00 | cmp valTIMER,y
256 | 1 brutaltester.s 256 | Code | ?? | | -1 | 00/FFFF : 00 | bne notTHESAME
257 | 1 brutaltester.s 257 | Code | ?? | | -1 | 00/FFFF : 00 | iny
258 | 1 brutaltester.s 258 | Code | ?? | | -1 | 00/FFFF : 00 | cpy #4
259 | 1 brutaltester.s 259 | Code | ?? | | -1 | 00/FFFF : 00 | bcc ]lp
260 | 1 brutaltester.s 260 | Macro | ?? | | -1 | 00/FFFF | @printSTRING #strOK
261 | 1 brutaltester.s 261 | Code | ?? | | -1 | 00/FFFF : 00 | jmp testRESET
262 | 1 brutaltester.s 262 | Macro | ?? | | -1 | 00/FFFF | notTHESAME @printSTRING #strNOTOK
263 | 1 brutaltester.s 263 | Empty | ?? | | -1 | 00/FFFF |
264 | 1 brutaltester.s 264 | Comment | ?? | | -1 | 00/FFFF | *--- test the reset
265 | 1 brutaltester.s 265 | Empty | ?? | | -1 | 00/FFFF |
266 | 1 brutaltester.s 266 | Code | ?? | | -1 | 00/FFFF : 00 | testRESET jsr resetTIMER
267 | 1 brutaltester.s 267 | Code | ?? | | -1 | 00/FFFF : 00 | jsr readTIMER
268 | 1 brutaltester.s 268 | Macro | ?? | | -1 | 00/FFFF | @printSTRING #strRESET
269 | 1 brutaltester.s 269 | Empty | ?? | | -1 | 00/FFFF |
270 | 1 brutaltester.s 270 | Code | ?? | | -1 | 00/FFFF : 00 | lda valTIMER
271 | 1 brutaltester.s 271 | Code | ?? | | -1 | 00/FFFF : 00 | ora valTIMER+1
272 | 1 brutaltester.s 272 | Code | ?? | | -1 | 00/FFFF : 00 | ora valTIMER+2
273 | 1 brutaltester.s 273 | Code | ?? | | -1 | 00/FFFF : 00 | ora valTIMER+3
274 | 1 brutaltester.s 274 | Code | ?? | | -1 | 00/FFFF : 00 | bne notRESET
275 | 1 brutaltester.s 275 | Macro | ?? | | -1 | 00/FFFF | @printSTRING #strOK
276 | 1 brutaltester.s 276 | Code | ?? | | -1 | 00/FFFF : 00 | rts
277 | 1 brutaltester.s 277 | Macro | ?? | | -1 | 00/FFFF | notRESET @printSTRING #strNOTOK
278 | 1 brutaltester.s 278 | Code | ?? | | -1 | 00/FFFF : 00 | rts
279 | 1 brutaltester.s 279 | Empty | ?? | | -1 | 00/FFFF |
280 | 1 brutaltester.s 280 | Comment | ?? | | -1 | 00/FFFF | *---
281 | 1 brutaltester.s 281 | Empty | ?? | | -1 | 00/FFFF |
282 | 1 brutaltester.s 282 | Data | ?? | | -1 | 00/FFFF : | strTVALUE asc 8d"T% want "00
283 | 1 brutaltester.s 283 | Data | ?? | | -1 | 00/FFFF : | strTREAD asc " read "00
284 | 1 brutaltester.s 284 | Data | ?? | | -1 | 00/FFFF : | strOK asc " OK"00
285 | 1 brutaltester.s 285 | Data | ?? | | -1 | 00/FFFF : | strNOTOK asc " NOT OK"00
286 | 1 brutaltester.s 286 | Data | ?? | | -1 | 00/FFFF : | strRESET asc 8d" Reset"00
287 | 1 brutaltester.s 287 | Empty | ?? | | -1 | 00/FFFF |
288 | 1 brutaltester.s 288 | Comment | ?? | | -1 | 00/FFFF | *-------------- THE TEST
289 | 1 brutaltester.s 289 | Empty | ?? | | -1 | 00/FFFF |
290 | 1 brutaltester.s 290 | Data | ?? | | -1 | 00/FFFF : | ds \ ; page aligned
291 | 1 brutaltester.s 291 | Empty | ?? | | -1 | 00/FFFF |
292 | 1 brutaltester.s 292 | Directive | ?? | | -1 | 00/FFFF | doTEST lup 200
293 | 1 brutaltester.s 293 | Code | ?? | | -1 | 00/FFFF : 00 | nop ; 2 cycles x 200
294 | 1 brutaltester.s 294 | Directive | ?? | | -1 | 00/FFFF | --^
295 | 1 brutaltester.s 295 | Code | ?? | | -1 | 00/FFFF : 00 | rts ; 6
296 | 1 brutaltester.s 296 | Empty | ?? | | -1 | 00/FFFF |
297 | 1 brutaltester.s 297 | Data | ?? | | -1 | 00/FFFF : | ds \
298 | 1 brutaltester.s 298 | Empty | ?? | | -1 | 00/FFFF |
299 | 1 brutaltester.s 299 | Comment | ?? | | -1 | 00/FFFF | *-------------- BRUTAL TIMER ROUTINES
300 | 1 brutaltester.s 300 | Empty | ?? | | -1 | 00/FFFF |
301 | 1 brutaltester.s 301 | Comment | ?? | | -1 | 00/FFFF | *------- Reset TIMER
302 | 1 brutaltester.s 302 | Empty | ?? | | -1 | 00/FFFF |
303 | 1 brutaltester.s 303 | Code | ?? | | -1 | 00/FFFF : 00 | resetTIMER2 sta theTIMER
304 | 1 brutaltester.s 304 | Code | ?? | | -1 | 00/FFFF : 00 | resetTIMER ldx theSLOT16
305 | 1 brutaltester.s 305 | Code | ?? | | -1 | 00/FFFF : 00 | lda theTIMER
306 | 1 brutaltester.s 306 | Code | ?? | | -1 | 00/FFFF : 00 | sta $c080,x
307 | 1 brutaltester.s 307 | Code | ?? | | -1 | 00/FFFF : 00 | rts
308 | 1 brutaltester.s 308 | Empty | ?? | | -1 | 00/FFFF |
309 | 1 brutaltester.s 309 | Comment | ?? | | -1 | 00/FFFF | *------- Start TIMER
310 | 1 brutaltester.s 310 | Empty | ?? | | -1 | 00/FFFF |
311 | 1 brutaltester.s 311 | Code | ?? | | -1 | 00/FFFF : 00 | startTIMER2 sta theTIMER
312 | 1 brutaltester.s 312 | Code | ?? | | -1 | 00/FFFF : 00 | startTIMER ldx theSLOT16 ; 4 ** no **
313 | 1 brutaltester.s 313 | Code | ?? | | -1 | 00/FFFF : 00 | lda theTIMER ; 4 ** no **
314 | 1 brutaltester.s 314 | Code | ?? | | -1 | 00/FFFF : 00 | sta $c081,x ; 5
315 | 1 brutaltester.s 315 | Code | ?? | | -1 | 00/FFFF : 00 | rts ; 6
316 | 1 brutaltester.s 316 | Empty | ?? | | -1 | 00/FFFF |
317 | 1 brutaltester.s 317 | Comment | ?? | | -1 | 00/FFFF | *------- Pause TIMER
318 | 1 brutaltester.s 318 | Empty | ?? | | -1 | 00/FFFF |
319 | 1 brutaltester.s 319 | Code | ?? | | -1 | 00/FFFF : 00 | pauseTIMER2 sta theTIMER
320 | 1 brutaltester.s 320 | Code | ?? | | -1 | 00/FFFF : 00 | pauseTIMER ldx theSLOT16
321 | 1 brutaltester.s 321 | Code | ?? | | -1 | 00/FFFF : 00 | lda theTIMER
322 | 1 brutaltester.s 322 | Code | ?? | | -1 | 00/FFFF : 00 | sta $c082,x
323 | 1 brutaltester.s 323 | Code | ?? | | -1 | 00/FFFF : 00 | rts
324 | 1 brutaltester.s 324 | Empty | ?? | | -1 | 00/FFFF |
325 | 1 brutaltester.s 325 | Comment | ?? | | -1 | 00/FFFF | *------- Stop TIMER
326 | 1 brutaltester.s 326 | Empty | ?? | | -1 | 00/FFFF |
327 | 1 brutaltester.s 327 | Code | ?? | | -1 | 00/FFFF : 00 | stopTIMER2 sta theTIMER
328 | 1 brutaltester.s 328 | Code | ?? | | -1 | 00/FFFF : 00 | stopTIMER ldx theSLOT16 ; 4 ** yes **
329 | 1 brutaltester.s 329 | Code | ?? | | -1 | 00/FFFF : 00 | lda theTIMER ; 4 ** yes **
330 | 1 brutaltester.s 330 | Code | ?? | | -1 | 00/FFFF : 00 | sta $c082,x ; 5 ** yes **
331 | 1 brutaltester.s 331 | Code | ?? | | -1 | 00/FFFF : 00 | rts
332 | 1 brutaltester.s 332 | Empty | ?? | | -1 | 00/FFFF |
333 | 1 brutaltester.s 333 | Comment | ?? | | -1 | 00/FFFF | *------- Set T2 frequency
334 | 1 brutaltester.s 334 | Empty | ?? | | -1 | 00/FFFF |
335 | 1 brutaltester.s 335 | Code | ?? | | -1 | 00/FFFF : 00 | setT2FREQUENCY2 sta theFREQ
336 | 1 brutaltester.s 336 | Code | ?? | | -1 | 00/FFFF : 00 | setT2FREQUENCY ldx theSLOT16
337 | 1 brutaltester.s 337 | Code | ?? | | -1 | 00/FFFF : 00 | lda theFREQ
338 | 1 brutaltester.s 338 | Code | ?? | | -1 | 00/FFFF : 00 | sta $c084,x
339 | 1 brutaltester.s 339 | Code | ?? | | -1 | 00/FFFF : 00 | rts
340 | 1 brutaltester.s 340 | Empty | ?? | | -1 | 00/FFFF |
341 | 1 brutaltester.s 341 | Comment | ?? | | -1 | 00/FFFF | *------- Turn off/on display
342 | 1 brutaltester.s 342 | Empty | ?? | | -1 | 00/FFFF |
343 | 1 brutaltester.s 343 | Code | ?? | | -1 | 00/FFFF : 00 | setT2DISPLAY2 sta theDISPLAY
344 | 1 brutaltester.s 344 | Code | ?? | | -1 | 00/FFFF : 00 | setT2DISPLAY ldx theSLOT16
345 | 1 brutaltester.s 345 | Code | ?? | | -1 | 00/FFFF : 00 | lda theDISPLAY
346 | 1 brutaltester.s 346 | Code | ?? | | -1 | 00/FFFF : 00 | sta $c085,x
347 | 1 brutaltester.s 347 | Code | ?? | | -1 | 00/FFFF : 00 | rts
348 | 1 brutaltester.s 348 | Empty | ?? | | -1 | 00/FFFF |
349 | 1 brutaltester.s 349 | Comment | ?? | | -1 | 00/FFFF | *------- Read T1 value
350 | 1 brutaltester.s 350 | Empty | ?? | | -1 | 00/FFFF |
351 | 1 brutaltester.s 351 | Code | ?? | | -1 | 00/FFFF : 00 | readTIMER lda theTIMER
352 | 1 brutaltester.s 352 | Code | ?? | | -1 | 00/FFFF : 00 | cmp #T1
353 | 1 brutaltester.s 353 | Code | ?? | | -1 | 00/FFFF : 00 | beq readT1
354 | 1 brutaltester.s 354 | Code | ?? | | -1 | 00/FFFF : 00 | cmp #T2
355 | 1 brutaltester.s 355 | Code | ?? | | -1 | 00/FFFF : 00 | beq readT2
356 | 1 brutaltester.s 356 | Code | ?? | | -1 | 00/FFFF : 00 | rts
357 | 1 brutaltester.s 357 | Empty | ?? | | -1 | 00/FFFF |
358 | 1 brutaltester.s 358 | Code | ?? | | -1 | 00/FFFF : 00 | readT1 ldx theSLOT16
359 | 1 brutaltester.s 359 | Code | ?? | | -1 | 00/FFFF : 00 | lda $c088,x ; T1
360 | 1 brutaltester.s 360 | Code | ?? | | -1 | 00/FFFF : 00 | sta valTIMER
361 | 1 brutaltester.s 361 | Code | ?? | | -1 | 00/FFFF : 00 | lda $c089,x
362 | 1 brutaltester.s 362 | Code | ?? | | -1 | 00/FFFF : 00 | sta valTIMER+1
363 | 1 brutaltester.s 363 | Code | ?? | | -1 | 00/FFFF : 00 | lda $c08a,x
364 | 1 brutaltester.s 364 | Code | ?? | | -1 | 00/FFFF : 00 | sta valTIMER+2
365 | 1 brutaltester.s 365 | Code | ?? | | -1 | 00/FFFF : 00 | lda $c08b,x
366 | 1 brutaltester.s 366 | Code | ?? | | -1 | 00/FFFF : 00 | sta valTIMER+3
367 | 1 brutaltester.s 367 | Code | ?? | | -1 | 00/FFFF : 00 | rts
368 | 1 brutaltester.s 368 | Empty | ?? | | -1 | 00/FFFF |
369 | 1 brutaltester.s 369 | Comment | ?? | | -1 | 00/FFFF | *------- Read T2 value
370 | 1 brutaltester.s 370 | Empty | ?? | | -1 | 00/FFFF |
371 | 1 brutaltester.s 371 | Code | ?? | | -1 | 00/FFFF : 00 | readT2 ldx theSLOT16
372 | 1 brutaltester.s 372 | Code | ?? | | -1 | 00/FFFF : 00 | lda $c08c,x ; T2
373 | 1 brutaltester.s 373 | Code | ?? | | -1 | 00/FFFF : 00 | sta valTIMER
374 | 1 brutaltester.s 374 | Code | ?? | | -1 | 00/FFFF : 00 | lda $c08d,x
375 | 1 brutaltester.s 375 | Code | ?? | | -1 | 00/FFFF : 00 | sta valTIMER+1
376 | 1 brutaltester.s 376 | Code | ?? | | -1 | 00/FFFF : 00 | lda $c08e,x
377 | 1 brutaltester.s 377 | Code | ?? | | -1 | 00/FFFF : 00 | sta valTIMER+2
378 | 1 brutaltester.s 378 | Code | ?? | | -1 | 00/FFFF : 00 | lda $c08f,x
379 | 1 brutaltester.s 379 | Code | ?? | | -1 | 00/FFFF : 00 | sta valTIMER+3
380 | 1 brutaltester.s 380 | Code | ?? | | -1 | 00/FFFF : 00 | rts
381 | 1 brutaltester.s 381 | Empty | ?? | | -1 | 00/FFFF |
382 | 1 brutaltester.s 382 | Comment | ?? | | -1 | 00/FFFF | *------- Print timer value
383 | 1 brutaltester.s 383 | Empty | ?? | | -1 | 00/FFFF |
384 | 1 brutaltester.s 384 | Code | ?? | | -1 | 00/FFFF : 00 | printTIMER lda valTIMER+3
385 | 1 brutaltester.s 385 | Code | ?? | | -1 | 00/FFFF : 00 | jsr PRBYTE
386 | 1 brutaltester.s 386 | Code | ?? | | -1 | 00/FFFF : 00 | lda valTIMER+2
387 | 1 brutaltester.s 387 | Code | ?? | | -1 | 00/FFFF : 00 | jsr PRBYTE
388 | 1 brutaltester.s 388 | Code | ?? | | -1 | 00/FFFF : 00 | lda valTIMER+1
389 | 1 brutaltester.s 389 | Code | ?? | | -1 | 00/FFFF : 00 | jsr PRBYTE
390 | 1 brutaltester.s 390 | Code | ?? | | -1 | 00/FFFF : 00 | lda valTIMER
391 | 1 brutaltester.s 391 | Code | ?? | | -1 | 00/FFFF : 00 | jmp PRBYTE
392 | 1 brutaltester.s 392 | Empty | ?? | | -1 | 00/FFFF |
393 | 1 brutaltester.s 393 | Comment | ?? | | -1 | 00/FFFF | *---
394 | 1 brutaltester.s 394 | Empty | ?? | | -1 | 00/FFFF |
395 | 1 brutaltester.s 395 | Data | ?? | | -1 | 00/FFFF : | strTHELOOP asc 8d"Loop: "00
396 | 1 brutaltester.s 396 | Data | ?? | | -1 | 00/FFFF : | strTIMER2 asc " / Timer: "00
397 | 1 brutaltester.s 397 | Data | ?? | | -1 | 00/FFFF : | strTIMER asc 8d"Timer: "00
398 | 1 brutaltester.s 398 | Data | ?? | | -1 | 00/FFFF : | valTIMER ds 4 ; the 32-bit value
399 | 1 brutaltester.s 399 | Empty | ?? | | -1 | 00/FFFF |
400 | 1 brutaltester.s 400 | Comment | ?? | | -1 | 00/FFFF | *------- Miscellaneous
401 | 1 brutaltester.s 401 | Empty | ?? | | -1 | 00/FFFF |
402 | 1 brutaltester.s 402 | Code | ?? | | -1 | 00/FFFF : 00 | printSTRING sty printSTRING1+1
403 | 1 brutaltester.s 403 | Code | ?? | | -1 | 00/FFFF : 00 | stx printSTRING1+2
404 | 1 brutaltester.s 404 | Empty | ?? | | -1 | 00/FFFF |
405 | 1 brutaltester.s 405 | Code | ?? | | -1 | 00/FFFF : 00 | printSTRING1 lda $bdbd
406 | 1 brutaltester.s 406 | Code | ?? | | -1 | 00/FFFF : 00 | beq printSTRING4
407 | 1 brutaltester.s 407 | Empty | ?? | | -1 | 00/FFFF |
408 | 1 brutaltester.s 408 | Code | ?? | | -1 | 00/FFFF : 00 | ldx theTIMER
409 | 1 brutaltester.s 409 | Code | ?? | | -1 | 00/FFFF : 00 | cmp #"%"
410 | 1 brutaltester.s 410 | Code | ?? | | -1 | 00/FFFF : 00 | beq printSTRING2
411 | 1 brutaltester.s 411 | Code | ?? | | -1 | 00/FFFF : 00 | ldx #VERSION
412 | 1 brutaltester.s 412 | Code | ?? | | -1 | 00/FFFF : 00 | cmp #"@"
413 | 1 brutaltester.s 413 | Code | ?? | | -1 | 00/FFFF : 00 | beq printSTRING2
414 | 1 brutaltester.s 414 | Code | ?? | | -1 | 00/FFFF : 00 | ldx theSLOT
415 | 1 brutaltester.s 415 | Code | ?? | | -1 | 00/FFFF : 00 | cmp #"#"
416 | 1 brutaltester.s 416 | Code | ?? | | -1 | 00/FFFF : 00 | bne printSTRING3
417 | 1 brutaltester.s 417 | Code | ?? | | -1 | 00/FFFF : 00 | printSTRING2 txa
418 | 1 brutaltester.s 418 | Code | ?? | | -1 | 00/FFFF : 00 | ora #"0"
419 | 1 brutaltester.s 419 | Empty | ?? | | -1 | 00/FFFF |
420 | 1 brutaltester.s 420 | Code | ?? | | -1 | 00/FFFF : 00 | printSTRING3 jsr COUT
421 | 1 brutaltester.s 421 | Empty | ?? | | -1 | 00/FFFF |
422 | 1 brutaltester.s 422 | Code | ?? | | -1 | 00/FFFF : 00 | inc printSTRING1+1
423 | 1 brutaltester.s 423 | Code | ?? | | -1 | 00/FFFF : 00 | bne printSTRING1
424 | 1 brutaltester.s 424 | Code | ?? | | -1 | 00/FFFF : 00 | inc printSTRING1+2
425 | 1 brutaltester.s 425 | Code | ?? | | -1 | 00/FFFF : 00 | lda printSTRING1+2 ; force end of routine
426 | 1 brutaltester.s 426 | Code | ?? | | -1 | 00/FFFF : 00 | cmp #$c0 ; if we reach $C000
427 | 1 brutaltester.s 427 | Code | ?? | | -1 | 00/FFFF : 00 | bcc printSTRING1
428 | 1 brutaltester.s 428 | Empty | ?? | | -1 | 00/FFFF |
429 | 1 brutaltester.s 429 | Code | ?? | | -1 | 00/FFFF : 00 | printSTRING4 rts
430 | 1 brutaltester.s 430 | Empty | ?? | | -1 | 00/FFFF |
431 | 1 brutaltester.s 431 | Comment | ?? | | -1 | 00/FFFF | *------- waitFORKEY
432 | 1 brutaltester.s 432 | Empty | ?? | | -1 | 00/FFFF |
433 | 1 brutaltester.s 433 | Code | ?? | | -1 | 00/FFFF : 00 | waitFORKEY lda KBD
434 | 1 brutaltester.s 434 | Code | ?? | | -1 | 00/FFFF : 00 | bpl waitFORKEY
435 | 1 brutaltester.s 435 | Code | ?? | | -1 | 00/FFFF : 00 | sta KBDSTROBE
436 | 1 brutaltester.s 436 | Code | ?? | | -1 | 00/FFFF : 00 | rts
437 | 1 brutaltester.s 437 | Empty | ?? | | -1 | 00/FFFF |
438 | 1 brutaltester.s 438 | Comment | ?? | | -1 | 00/FFFF | *-------------- DATA
439 | 1 brutaltester.s 439 | Empty | ?? | | -1 | 00/FFFF |
440 | 1 brutaltester.s 440 | Data | ?? | | -1 | 00/FFFF : | theTIMER ds 1 ; 1..2
441 | 1 brutaltester.s 441 | Data | ?? | | -1 | 00/FFFF : | theFREQ ds 1 ; 0..3
442 | 1 brutaltester.s 442 | Data | ?? | | -1 | 00/FFFF : | theDISPLAY ds 1 ; 0..1
443 | 1 brutaltester.s 443 | Data | ?? | | -1 | 00/FFFF : | theSLOT dfb 7 ; 0..7
444 | 1 brutaltester.s 444 | Data | ?? | | -1 | 00/FFFF : | theSLOT16 dfb $70 ; 10=slot 1, ..., 70=slot 7
445 | 1 brutaltester.s 445 | Empty | ?? | | -1 | 00/FFFF |
446 | 1 brutaltester.s 446 | Data | ?? | | -1 | 00/FFFF : | strHELLO asc "Brutal Timer Auto Test v0.@"8d
447 | 1 brutaltester.s 447 | Data | ?? | | -1 | 00/FFFF : | asc "(c) 2026, Plamen Vaysilov &"8d
448 | 1 brutaltester.s 448 | Data | ?? | | -1 | 00/FFFF : | asc "Brutal Deluxe Software"8d00
449 | 1 brutaltester.s 449 | Empty | ?? | | -1 | 00/FFFF |
450 | 1 brutaltester.s 450 | Comment | ?? | | -1 | 00/FFFF | * asc "1234567890123456789012345"
451 | 1 brutaltester.s 451 | Empty | ?? | | -1 | 00/FFFF |
452 | 1 brutaltester.s 452 | Data | ?? | | -1 | 00/FFFF : | strMENU asc 8d
453 | 1 brutaltester.s 453 | Data | ?? | | -1 | 00/FFFF : | asc "1- Set slot & Test (#)"8d
454 | 1 brutaltester.s 454 | Data | ?? | | -1 | 00/FFFF : | asc "2- Launch tests"8d
455 | 1 brutaltester.s 455 | Data | ?? | | -1 | 00/FFFF : | asc "Select entry (0 to exit) > "00
456 | 1 brutaltester.s 456 | Empty | ?? | | -1 | 00/FFFF |
457 | 1 brutaltester.s 457 | Data | ?? | | -1 | 00/FFFF : | strSETSLOT asc 8d
458 | 1 brutaltester.s 458 | Data | ?? | | -1 | 00/FFFF : | asc "Set slot (1-7) > "00
459 | 1 brutaltester.s 459 | Empty | ?? | | -1 | 00/FFFF |
460 | 1 brutaltester.s 460 | Data | ?? | | -1 | 00/FFFF : | strT2FREQ0 asc "A2-F0 clock"00
461 | 1 brutaltester.s 461 | Data | ?? | | -1 | 00/FFFF : | strT2FREQ1 asc "A2-3.5 MHz"00
462 | 1 brutaltester.s 462 | Data | ?? | | -1 | 00/FFFF : | strT2FREQ2 asc "20 MHz clock"00
463 | 1 brutaltester.s 463 | Data | ?? | | -1 | 00/FFFF : | strT2FREQ3 asc "Custom quartz"00
464 | 1 brutaltester.s 464 | Empty | ?? | | -1 | 00/FFFF |
465 | 1 brutaltester.s 465 | Data | ?? | | -1 | 00/FFFF : | strGOODBYE asc 8d"Good bye!"00
------+--------------------------+-------------+----+---------+------+-----------------------+-------------------------------------------------------------------
+74
View File
@@ -0,0 +1,74 @@
Segment Name;Segment Line;File Name;File Line;Address;Name;Type;Data Type;Size;MX;Reloc
Segment1;89;brutaltester.s;86;00/200A;loopTEST;Code;;2;11;
Segment1;105;brutaltester.s;96;00/2026;noTEST0;Code;;2;11;
Segment1;109;brutaltester.s;100;00/202D;noTEST1;Code;;2;11;
Segment1;115;brutaltester.s;106;00/2034;doSETSLOT;Code;;2;11;
Segment1;146;brutaltester.s;134;00/2056;doTESTS;Code;;2;11;
Segment1;167;brutaltester.s;147;00/2077;ozunid_1;Code;;3;11;
Segment1;195;brutaltester.s;175;00/20AB;strT1dft;Data;asc;9;11;
Segment1;196;brutaltester.s;176;00/20B4;strT2F0dft;Data;asc;9;11;
Segment1;197;brutaltester.s;177;00/20BD;strT2F1dft;Data;asc;9;11;
Segment1;198;brutaltester.s;178;00/20C6;strT2F2dft;Data;asc;9;11;
Segment1;199;brutaltester.s;179;00/20CF;strT2F3dft;Data;asc;9;11;
Segment1;201;brutaltester.s;181;00/20D8;tblSTRT2;Data;da;2;11;
Segment1;206;brutaltester.s;186;00/20E0;tblDFTT2;Data;da;2;11;
Segment1;211;brutaltester.s;191;00/20E8;dftT1;Data;adrl;4;11;
Segment1;212;brutaltester.s;192;00/20EC;dftT2F0;Data;adrl;4;11;
Segment1;213;brutaltester.s;193;00/20F0;dftT2F1;Data;adrl;4;11;
Segment1;214;brutaltester.s;194;00/20F4;dftT2F2;Data;adrl;4;11;
Segment1;215;brutaltester.s;195;00/20F8;dftT2F3;Data;adrl;4;11;
Segment1;219;brutaltester.s;199;00/20FC;testDISPLAY;Code;;2;11;
Segment1;246;brutaltester.s;220;00/2124;doDISPLAY;Code;;3;11;
Segment1;251;brutaltester.s;225;00/212E;ozunid_2;Code;;2;11;
Segment1;263;brutaltester.s;237;00/2140;strDISPLAYOFF;Data;asc;17;11;
Segment1;264;brutaltester.s;238;00/2151;strDISPLAYON;Data;asc;17;11;
Segment1;270;brutaltester.s;244;00/2200;testTIMER;Code;;3;11;
Segment1;291;brutaltester.s;259;00/222C;ozunid_3;Code;;2;11;
Segment1;302;brutaltester.s;267;00/2242;notTHESAME;Code;;2;11;
Segment1;309;brutaltester.s;271;00/2249;testRESET;Code;;3;11;
Segment1;326;brutaltester.s;282;00/226C;notRESET;Code;;2;11;
Segment1;334;brutaltester.s;287;00/2274;strTVALUE;Data;asc;10;11;
Segment1;335;brutaltester.s;288;00/227E;strTREAD;Data;asc;7;11;
Segment1;336;brutaltester.s;289;00/2285;strOK;Data;asc;4;11;
Segment1;337;brutaltester.s;290;00/2289;strNOTOK;Data;asc;8;11;
Segment1;338;brutaltester.s;291;00/2291;strRESET;Data;asc;10;11;
Segment1;344;brutaltester.s;298;00/2300;doTEST;Code;;1;11;
Segment1;552;brutaltester.s;308;00/2400;resetTIMER2;Code;;3;11;
Segment1;553;brutaltester.s;309;00/2403;resetTIMER;Code;;3;11;
Segment1;560;brutaltester.s;316;00/240D;startTIMER2;Code;;3;11;
Segment1;561;brutaltester.s;317;00/2410;startTIMER;Code;;3;11;
Segment1;568;brutaltester.s;324;00/241A;pauseTIMER2;Code;;3;11;
Segment1;569;brutaltester.s;325;00/241D;pauseTIMER;Code;;3;11;
Segment1;576;brutaltester.s;332;00/2427;stopTIMER2;Code;;3;11;
Segment1;577;brutaltester.s;333;00/242A;stopTIMER;Code;;3;11;
Segment1;584;brutaltester.s;340;00/2434;setT2FREQUENCY2;Code;;3;11;
Segment1;585;brutaltester.s;341;00/2437;setT2FREQUENCY;Code;;3;11;
Segment1;592;brutaltester.s;348;00/2441;setT2DISPLAY2;Code;;3;11;
Segment1;593;brutaltester.s;349;00/2444;setT2DISPLAY;Code;;3;11;
Segment1;600;brutaltester.s;356;00/244E;readTIMER;Code;;3;11;
Segment1;607;brutaltester.s;363;00/245A;readT1;Code;;3;11;
Segment1;620;brutaltester.s;376;00/2476;readT2;Code;;3;11;
Segment1;633;brutaltester.s;389;00/2492;printTIMER;Code;;3;11;
Segment1;644;brutaltester.s;400;00/24AA;strTHELOOP;Data;asc;8;11;
Segment1;645;brutaltester.s;401;00/24B2;strTIMER2;Data;asc;11;11;
Segment1;646;brutaltester.s;402;00/24BD;strTIMER;Data;asc;9;11;
Segment1;647;brutaltester.s;403;00/24C6;valTIMER;Data;ds;4;11;
Segment1;651;brutaltester.s;407;00/24CA;printSTRING;Code;;3;11;
Segment1;654;brutaltester.s;410;00/24D0;printSTRING1;Code;;3;11;
Segment1;666;brutaltester.s;422;00/24E9;printSTRING2;Code;;1;11;
Segment1;669;brutaltester.s;425;00/24EC;printSTRING3;Code;;3;11;
Segment1;678;brutaltester.s;434;00/24FE;printSTRING4;Code;;1;11;
Segment1;682;brutaltester.s;438;00/24FF;waitFORKEY;Code;;3;11;
Segment1;689;brutaltester.s;445;00/2508;theTIMER;Data;ds;1;11;
Segment1;690;brutaltester.s;446;00/2509;theFREQ;Data;ds;1;11;
Segment1;691;brutaltester.s;447;00/250A;theDISPLAY;Data;ds;1;11;
Segment1;692;brutaltester.s;448;00/250B;theSLOT;Data;dfb;1;11;
Segment1;693;brutaltester.s;449;00/250C;theSLOT16;Data;dfb;1;11;
Segment1;695;brutaltester.s;451;00/250D;strHELLO;Data;asc;28;11;
Segment1;701;brutaltester.s;457;00/255C;strMENU;Data;asc;2;11;
Segment1;706;brutaltester.s;462;00/25A1;strSETSLOT;Data;asc;1;11;
Segment1;709;brutaltester.s;465;00/25B4;strT2FREQ0;Data;asc;12;11;
Segment1;710;brutaltester.s;466;00/25C0;strT2FREQ1;Data;asc;11;11;
Segment1;711;brutaltester.s;467;00/25CB;strT2FREQ2;Data;asc;13;11;
Segment1;712;brutaltester.s;468;00/25D8;strT2FREQ3;Data;asc;14;11;
Segment1;714;brutaltester.s;470;00/25E6;strGOODBYE;Data;asc;11;11;
Binary file not shown.