home *** CD-ROM | disk | FTP | other *** search
- ; s.DebugHdr
-
- GBLL Debug
-
- DebugOn * 1 :SHL: 0
- UseVDU * 1 :SHL: 1
- UseTracker * 1 :SHL: 2
- UseBeeb * 1 :SHL: 3
- UseRAM * 1 :SHL: 4
-
- MACRO
- $label DBF $argstr, $cc
- [ Debug
- IMPORT DebugF
- $label
-
- [ "$cc" <> ""
- B$cc %ft10
- B %ft20
- ]
-
- 10 STMFD sp!, {lr, pc}
- BL DebugF
- = "$argstr", 0
- ALIGN
- LDR lr, [sp], #8
- 20
- |
- $label
- ]
- MEND
-
- MACRO
- $label DBFIF $cond, $argstr
- [ $cond
- $label DBF $argstr
- |
- $label
- ]
- MEND
-
- MACRO
- $label DBFLAGS $and, $eor, $cc
- [ Debug
- IMPORT DebugFlags
- $label STM$cc.FD sp!, {r0-r2, lr}
- MOV$cc r1, #$and
- MOV$cc r0, #$eor
- BL$cc DebugFlags
- LDM$cc.FD sp!, {r0-r2, lr}
- |
- $label
- ]
- MEND
-
- MACRO
- $label DBON $cc
- $label DBFLAGS :NOT: DebugOn, DebugOn, $cc
- MEND
-
- MACRO
- $label DBOFF $cc
- $label DBFLAGS :NOT: DebugOn, 0, $cc
- MEND
-
- MACRO
- $label DBSET $flags, $cc
- $label DBFLAGS 0, $flags, $cc
- MEND
-
- MACRO
- $label DBREGS
- $label DBF " %0w %1w %2w %3w %4w %5w\n %6w %7w %8w %9w %aw %bw\n %cw %dw %ew %fp\n"
- MEND
-
- MACRO
- $label DBBACK $cc
- $label
- IMPORT DebugBacktrace
- BL$cc DebugBacktrace
- MEND
-
- MACRO
- $label DBPALETTE $log, $mode, $red, $green, $blue
- $label
- [ Debug
- STMFD sp!, {r0-r1, r8-r9, lr}
- MOV r8, pc
- ORR r9, r8, #S0_bit :OR: S1_bit ; Force SVC mode
- TEQP r9, #0
- MOV r0, r0
- STMFD sp!, {r8, lr} ; Save old PC, LR
-
- ; Now build parameters on stack
-
- MOV r0, #($log )
- ORR r0, r0, #($mode ) :SHL: 8
- ORR r0, r0, #($red ) :SHL: 16
- ORR r0, r0, #($green) :SHL: 24
- MOV r1, #($blue )
- STMFD sp!, {r0-r1}
- MOV r0, #12
- MOV r1, sp
- SWI &07 ; OS_Word
- ADD sp, sp, #word * 2
- LDMFD sp!, {r8, lr}
- TEQP r8, #0
- MOV r0, r0
- LDMFD sp!, {r0-r1, r8-r9, lr}
- ]
- MEND
-
- END
-