]> git.sur5r.net Git - cc65/blobdiff - libsrc/plus4/break.s
Merge pull request #24 from greg-king5/oric
[cc65] / libsrc / plus4 / break.s
index 52c77127c8f375d275335239eea3424c047926dd..248a558c714e9b7a95ce6c477823ac460cbc6297 100644 (file)
@@ -5,46 +5,46 @@
 ; void reset_brk (void);
 ;
 
-               .export         _set_brk, _reset_brk
-       .export         _brk_a, _brk_x, _brk_y, _brk_sr, _brk_pc
+        .export         _set_brk, _reset_brk
+        .export         _brk_a, _brk_x, _brk_y, _brk_sr, _brk_pc
         .import         brk_jmp
 
-       .include        "plus4.inc"
+        .include        "plus4.inc"
 
 
 .bss
-_brk_a:                .res    1
-_brk_x:                .res    1
-_brk_y:                .res    1
-_brk_sr:       .res    1
-_brk_pc:       .res    2
+_brk_a:         .res    1
+_brk_x:         .res    1
+_brk_y:         .res    1
+_brk_sr:        .res    1
+_brk_pc:        .res    2
 
-oldvec:        .res    2               ; Old vector
+oldvec:         .res    2               ; Old vector
 
 
 .data
-uservec:       jmp     $FFFF           ; Patched at runtime
+uservec:        jmp     $FFFF           ; Patched at runtime
 
 
 .code
 
 ; Set the break vector
-.proc  _set_brk
+.proc   _set_brk
 
-       sta     uservec+1
-       stx     uservec+2       ; Set the user vector
+        sta     uservec+1
+        stx     uservec+2       ; Set the user vector
 
-        lda    #<brk_handler   ; Set the break vector to our routine
-       sta     brk_jmp+1
-               lda     #>brk_handler
-       sta     brk_jmp+2
-       rts
+        lda     #<brk_handler   ; Set the break vector to our routine
+        sta     brk_jmp+1
+        lda     #>brk_handler
+        sta     brk_jmp+2
+        rts
 
 .endproc
 
 
 ; Reset the break vector
-.proc  _reset_brk
+.proc   _reset_brk
 
         lda     #$00
         sta     brk_jmp+1
@@ -55,38 +55,39 @@ uservec:            jmp     $FFFF           ; Patched at runtime
 
 
 
-; Break handler, called if a break occurs. Note: Y is not on the stack!
-
-.proc  brk_handler
-
-               sty     _brk_y
-       pla
-       sta     _brk_x
-       pla
-       sta     _brk_a
-       pla
-       and     #$EF            ; Clear break bit
-       sta     _brk_sr
-       pla                     ; PC low
-       sec
-       sbc     #2              ; Point to start of brk
-       sta     _brk_pc
-       pla                     ; PC high
-       sbc     #0
-       sta     _brk_pc+1
-
-       jsr     uservec         ; Call the user's routine
-
-       lda     _brk_pc+1
-       pha
-       lda     _brk_pc
-       pha
-       lda     _brk_sr
-       pha
-       ldx     _brk_x
-       ldy     _brk_y
-       lda     _brk_a
-       rti                     ; Jump back...
+; Break handler, called if a break occurs. 
+
+.proc   brk_handler
+
+        pla
+        sta     _brk_y
+        pla
+        sta     _brk_x
+        pla
+        sta     _brk_a
+        pla
+        and     #$EF            ; Clear break bit
+        sta     _brk_sr
+        pla                     ; PC low
+        sec
+        sbc     #2              ; Point to start of brk
+        sta     _brk_pc
+        pla                     ; PC high
+        sbc     #0
+        sta     _brk_pc+1
+
+        jsr     uservec         ; Call the user's routine
+
+        lda     _brk_pc+1
+        pha
+        lda     _brk_pc
+        pha
+        lda     _brk_sr
+        pha
+        ldx     _brk_x
+        ldy     _brk_y
+        lda     _brk_a
+        rti                     ; Jump back...
 
 .endproc