chiark / gitweb /
make crashread of pic0 work
authorian <ian>
Wed, 28 Dec 2005 23:02:03 +0000 (23:02 +0000)
committerian <ian>
Wed, 28 Dec 2005 23:02:03 +0000 (23:02 +0000)
detpic/panic.asm
detpic/program.asm

index 9bc2c9a79afe36c94b548598dfd6f3db449928ab..cee35b570c4dc6935a0bbd285964c0776cd1ff17 100644 (file)
@@ -103,13 +103,17 @@ stacksave_loop
 
        call    panic_kill_hook
 
-; re-initialise timer0 config
+; re-initialise timer0 config, etc.
        call    read_pic_no
        bra_z   panic_setup_if_master
 panic_setup_if_slave
        morse_t0setup sclock, (1<<TMR0ON), t0l_count, t0h_count
        bra     panic_setup_endif_masterslave
+
 panic_setup_if_master
+       mov_lw  0x0b ; AAARGH
+       bt_f_if1 TXSTA, TXEN
+       call    serial_write_char
        morse_t0setup mclock, (1<<TMR0ON), t0l_count, t0h_count
 panic_setup_endif_masterslave
 
@@ -369,7 +373,9 @@ panicd_serialrx
        bt_f_if1 RCSTA,OERR
        bra     panicd_serialrx_err
        bt_f_if1 panicst, panicst_ferroerr
-       mov_wf  RCREG
+       bra     panicst_oerrferr
+
+       mov_fw  RCREG
 ;...
 ;****************************************************************************
 ; MEMORY READOUT
@@ -454,7 +460,7 @@ write_if_master_masterread
 write_if_master_masterread_loop
        mov_fw  POSTINC1
        call    serial_write_char
-       dec_fw_ifnz panic_valcount
+       dec_f_ifnz panic_valcount
        bra     write_if_master_masterread_loop
        return
 
index d51fa5387723bf2d93c690c6922c440f290fa263..c2af276f02e5ec20c985fbd3e82f78f449de4759 100644 (file)
@@ -34,6 +34,7 @@ vector_reset
        bt_f_if1 idloc1,idloc1_master
        call    master_init
 
+ panic morse_TI1
        bs_f    INTCON, GIEH
        bs_f    INTCON, GIEL
 
@@ -71,12 +72,12 @@ intrl_handled_routine
 ;----------------------------------------
 master_init
 ; Master-specific initialisation.
+       call    serial_init
        call    i2cm_init
        call    serialtxbuf_init
        call    polarity_master_init
        call    points_master_init
        call    common_local_init
-       call    serial_init
        call    nmra_init
        call    serialtxfc_init
        call    mascan_init