libpropeller
Making PropellerGCC Easier
 All Classes Files Functions Variables Enumerations Enumerator Macros Pages
Variables
serial.S File Reference

Variables

section serial cog
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg 
PHSA
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov 
CTRA
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov 
DIRA
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov 
CTRB
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov 
FRQB
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong 
Step_clocks
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong 
OUTB
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong PAR
mov 
Timestamp
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong PAR
mov Step_clocks add CNT
Rx_cleanup mov 
PHSB
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong PAR
mov Step_clocks add CNT
Rx_cleanup mov Rx_main jmpret 
Lockstep_ret
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong PAR
mov Step_clocks add CNT
Rx_cleanup mov Rx_main jmpret
Tx_jump mov 
Bits_in
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong PAR
mov Step_clocks add CNT
Rx_cleanup mov Rx_main jmpret
Tx_jump mov PHSB wz if_z jmp
jmpret Tx_jump cmp Step_clocks 
wz
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong PAR
mov Step_clocks add CNT
Rx_cleanup mov Rx_main jmpret
Tx_jump mov PHSB wz if_z jmp
jmpret Tx_jump cmp Step_clocks
wc if_b jmpret Tx_jump mov
Rx_main get_bit jmpret Tx_jump
test 
Maskrx
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong PAR
mov Step_clocks add CNT
Rx_cleanup mov Rx_main jmpret
Tx_jump mov PHSB wz if_z jmp
jmpret Tx_jump cmp Step_clocks
wc if_b jmpret Tx_jump mov
Rx_main get_bit jmpret Tx_jump
test INA wc rcr 
Data_in
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong PAR
mov Step_clocks add CNT
Rx_cleanup mov Rx_main jmpret
Tx_jump mov PHSB wz if_z jmp
jmpret Tx_jump cmp Step_clocks
wc if_b jmpret Tx_jump mov
Rx_main get_bit jmpret Tx_jump
test INA wc rcr jmpret Tx_jump
djnz shr jmpret Tx_jump test
INA wc if_nc jmp add 
Rx_ptr
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong PAR
mov Step_clocks add CNT
Rx_cleanup mov Rx_main jmpret
Tx_jump mov PHSB wz if_z jmp
jmpret Tx_jump cmp Step_clocks
wc if_b jmpret Tx_jump mov
Rx_main get_bit jmpret Tx_jump
test INA wc rcr jmpret Tx_jump
djnz shr jmpret Tx_jump test
INA wc if_nc jmp add
Rx_head_ptr wrbyte Rx_ptr add
jmpret Tx_jump cmpsub
Rx_end_ptr wc if_nc sub
Rx_head_ptr wrword
Update_head_ptr tjz Tx_jump
jmp Lockstep waitcnt
Step_clocks ror Write_bit
Lockstep_ret jmp Tx_main
rdlong 
Bytes_out
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong PAR
mov Step_clocks add CNT
Rx_cleanup mov Rx_main jmpret
Tx_jump mov PHSB wz if_z jmp
jmpret Tx_jump cmp Step_clocks
wc if_b jmpret Tx_jump mov
Rx_main get_bit jmpret Tx_jump
test INA wc rcr jmpret Tx_jump
djnz shr jmpret Tx_jump test
INA wc if_nc jmp add
Rx_head_ptr wrbyte Rx_ptr add
jmpret Tx_jump cmpsub
Rx_end_ptr wc if_nc sub
Rx_head_ptr wrword
Update_head_ptr tjz Tx_jump
jmp Lockstep waitcnt
Step_clocks ror Write_bit
Lockstep_ret jmp Tx_main
rdlong PAR jmpret 
Tx_jump
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong PAR
mov Step_clocks add CNT
Rx_cleanup mov Rx_main jmpret
Tx_jump mov PHSB wz if_z jmp
jmpret Tx_jump cmp Step_clocks
wc if_b jmpret Tx_jump mov
Rx_main get_bit jmpret Tx_jump
test INA wc rcr jmpret Tx_jump
djnz shr jmpret Tx_jump test
INA wc if_nc jmp add
Rx_head_ptr wrbyte Rx_ptr add
jmpret Tx_jump cmpsub
Rx_end_ptr wc if_nc sub
Rx_head_ptr wrword
Update_head_ptr tjz Tx_jump
jmp Lockstep waitcnt
Step_clocks ror Write_bit
Lockstep_ret jmp Tx_main
rdlong PAR jmpret rdlong
Period_ptr jmpret tjz mov 
Write_ptr
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong PAR
mov Step_clocks add CNT
Rx_cleanup mov Rx_main jmpret
Tx_jump mov PHSB wz if_z jmp
jmpret Tx_jump cmp Step_clocks
wc if_b jmpret Tx_jump mov
Rx_main get_bit jmpret Tx_jump
test INA wc rcr jmpret Tx_jump
djnz shr jmpret Tx_jump test
INA wc if_nc jmp add
Rx_head_ptr wrbyte Rx_ptr add
jmpret Tx_jump cmpsub
Rx_end_ptr wc if_nc sub
Rx_head_ptr wrword
Update_head_ptr tjz Tx_jump
jmp Lockstep waitcnt
Step_clocks ror Write_bit
Lockstep_ret jmp Tx_main
rdlong PAR jmpret rdlong
Period_ptr jmpret tjz mov
Bytes_out shr add jmpret
Tx_main tx_byte rdbyte 
Tmp
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong PAR
mov Step_clocks add CNT
Rx_cleanup mov Rx_main jmpret
Tx_jump mov PHSB wz if_z jmp
jmpret Tx_jump cmp Step_clocks
wc if_b jmpret Tx_jump mov
Rx_main get_bit jmpret Tx_jump
test INA wc rcr jmpret Tx_jump
djnz shr jmpret Tx_jump test
INA wc if_nc jmp add
Rx_head_ptr wrbyte Rx_ptr add
jmpret Tx_jump cmpsub
Rx_end_ptr wc if_nc sub
Rx_head_ptr wrword
Update_head_ptr tjz Tx_jump
jmp Lockstep waitcnt
Step_clocks ror Write_bit
Lockstep_ret jmp Tx_main
rdlong PAR jmpret rdlong
Period_ptr jmpret tjz mov
Bytes_out shr add jmpret
Tx_main tx_byte rdbyte
Write_ptr add or jmpret mov 
INA
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong PAR
mov Step_clocks add CNT
Rx_cleanup mov Rx_main jmpret
Tx_jump mov PHSB wz if_z jmp
jmpret Tx_jump cmp Step_clocks
wc if_b jmpret Tx_jump mov
Rx_main get_bit jmpret Tx_jump
test INA wc rcr jmpret Tx_jump
djnz shr jmpret Tx_jump test
INA wc if_nc jmp add
Rx_head_ptr wrbyte Rx_ptr add
jmpret Tx_jump cmpsub
Rx_end_ptr wc if_nc sub
Rx_head_ptr wrword
Update_head_ptr tjz Tx_jump
jmp Lockstep waitcnt
Step_clocks ror Write_bit
Lockstep_ret jmp Tx_main
rdlong PAR jmpret rdlong
Period_ptr jmpret tjz mov
Bytes_out shr add jmpret
Tx_main tx_byte rdbyte
Write_ptr add or jmpret mov
INA and Maskcts nr if_nz jmp
shl sar mov Tmp mov 
Half_bits_out
 
section serial ax global
Fds_entry compress off start
org Fds_entry neg mov Ctra_val
mov Masktx mov Ctrb_val mov
rdlong Period_ptr wrlong PAR
mov Step_clocks add CNT
Rx_cleanup mov Rx_main jmpret
Tx_jump mov PHSB wz if_z jmp
jmpret Tx_jump cmp Step_clocks
wc if_b jmpret Tx_jump mov
Rx_main get_bit jmpret Tx_jump
test INA wc rcr jmpret Tx_jump
djnz shr jmpret Tx_jump test
INA wc if_nc jmp add
Rx_head_ptr wrbyte Rx_ptr add
jmpret Tx_jump cmpsub
Rx_end_ptr wc if_nc sub
Rx_head_ptr wrword
Update_head_ptr tjz Tx_jump
jmp Lockstep waitcnt
Step_clocks ror Write_bit
Lockstep_ret jmp Tx_main
rdlong PAR jmpret rdlong
Period_ptr jmpret tjz mov
Bytes_out shr add jmpret
Tx_main tx_byte rdbyte
Write_ptr add or jmpret mov
INA and Maskcts nr if_nz jmp
shl sar mov Tmp mov Tx_main
tx_bit jmpret xor 
Write_bit
 

Variable Documentation

section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz Bits_in
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test INA wc if_nc jmp add Rx_head_ptr wrbyte Rx_ptr add jmpret Tx_jump cmpsub Rx_end_ptr wc if_nc sub Rx_head_ptr wrword Update_head_ptr tjz Tx_jump jmp Lockstep waitcnt Step_clocks ror Write_bit Lockstep_ret jmp Tx_main rdlong PAR jmpret rdlong Period_ptr jmpret tjz mov Bytes_out shr add jmpret Tx_main tx_byte rdbyte Write_ptr add or jmpret mov INA and Maskcts nr if_nz jmp shl sar mov Tmp mov Tx_main tx_bit jmpret xor djnz jmpret djnz wrlong Bytes_out
section serial cog
section serial ax global Fds_entry compress off start org Fds_entry neg mov CTRA
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov CTRB
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test INA wc if_nc jmp add Rx_head_ptr wrbyte Data_in
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov DIRA
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov FRQB
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test INA wc if_nc jmp add Rx_head_ptr wrbyte Rx_ptr add jmpret Tx_jump cmpsub Rx_end_ptr wc if_nc sub Rx_head_ptr wrword Update_head_ptr tjz Tx_jump jmp Lockstep waitcnt Step_clocks ror Write_bit Lockstep_ret jmp Tx_main rdlong PAR jmpret rdlong Period_ptr jmpret tjz mov Bytes_out shr add jmpret Tx_main tx_byte rdbyte Write_ptr add or jmpret mov INA and Maskcts nr if_nz jmp shl sar mov Tmp mov Tx_main tx_bit jmpret xor djnz Half_bits_out
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test INA wc if_nc jmp add Rx_head_ptr wrbyte Rx_ptr add jmpret Tx_jump cmpsub Rx_end_ptr wc if_nc sub Rx_head_ptr wrword Update_head_ptr tjz Tx_jump jmp Lockstep waitcnt Step_clocks ror Write_bit Lockstep_ret jmp Tx_main rdlong PAR jmpret rdlong Period_ptr jmpret tjz mov Bytes_out shr add jmpret Tx_main tx_byte rdbyte Write_ptr add or jmpret mov INA and INA
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test INA wc if_nc jmp add Rx_head_ptr wrbyte Rx_ptr add jmpret Lockstep_ret
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test Maskrx
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong OUTB
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test INA wc if_nc jmp add Rx_head_ptr wrbyte Rx_ptr add jmpret Tx_jump cmpsub Rx_end_ptr wc if_nc sub Rx_head_ptr wrword Update_head_ptr tjz Tx_jump jmp Lockstep waitcnt Step_clocks ror Write_bit Lockstep_ret jmp Tx_main rdlong PAR jmpret rdlong Period_ptr jmpret tjz mov Bytes_out shr add jmpret Tx_main tx_byte rdbyte Write_ptr add or jmpret mov INA and Maskcts nr if_nz jmp shl sar mov PHSA
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test INA wc if_nc jmp add Rx_head_ptr wrbyte Rx_ptr add jmpret Tx_jump cmpsub Rx_end_ptr wc if_nc sub Rx_head_ptr wrword Update_head_ptr tjz PHSB
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test INA wc if_nc jmp add Rx_head_ptr wrbyte Rx_ptr add jmpret Tx_jump cmpsub Rx_end_ptr wc if_nc sub Rx_head_ptr wrword Rx_ptr
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test INA wc if_nc jmp add Rx_head_ptr wrbyte Rx_ptr add jmpret Tx_jump cmpsub Rx_end_ptr wc if_nc sub Rx_head_ptr wrword Update_head_ptr tjz Tx_jump jmp Lockstep waitcnt Step_clocks ror Write_bit Lockstep_ret jmp Tx_main rdlong PAR jmpret rdlong Step_clocks
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test INA wc if_nc jmp add Rx_head_ptr wrbyte Rx_ptr add jmpret Tx_jump cmpsub Rx_end_ptr wc if_nc sub Rx_head_ptr wrword Update_head_ptr tjz Tx_jump jmp Lockstep waitcnt Timestamp
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test INA wc if_nc jmp add Rx_head_ptr wrbyte Rx_ptr add jmpret Tx_jump cmpsub Rx_end_ptr wc if_nc sub Rx_head_ptr wrword Update_head_ptr tjz Tx_jump jmp Lockstep waitcnt Step_clocks ror Write_bit Lockstep_ret jmp Tx_main rdlong PAR jmpret rdlong Period_ptr jmpret tjz mov Bytes_out shr add jmpret Tx_main tx_byte rdbyte Write_ptr add or jmpret mov INA and Maskcts nr if_nz jmp shl sar Tmp
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test INA wc if_nc jmp add Rx_head_ptr wrbyte Rx_ptr add jmpret Tx_jump cmpsub Rx_end_ptr wc if_nc sub Rx_head_ptr wrword Update_head_ptr tjz Tx_jump jmp Lockstep waitcnt Step_clocks ror Write_bit Lockstep_ret jmp Tx_main rdlong PAR jmpret rdlong Period_ptr jmpret tjz mov Bytes_out shr add jmpret Tx_main tx_byte rdbyte Write_ptr add or jmpret mov INA and Maskcts nr if_nz jmp shl sar mov Tmp mov Tx_main tx_bit jmpret xor djnz jmpret djnz wrlong PAR jmpret Tx_jump
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test INA wc if_nc jmp add Rx_head_ptr wrbyte Rx_ptr add jmpret Tx_jump cmpsub Rx_end_ptr wc if_nc sub Rx_head_ptr wrword Update_head_ptr tjz Tx_jump jmp Lockstep waitcnt Step_clocks ror Write_bit Lockstep_ret jmp Tx_main rdlong PAR jmpret rdlong Period_ptr jmpret tjz mov Bytes_out shr add jmpret Tx_main tx_byte rdbyte Write_ptr add or jmpret mov INA and Maskcts nr if_nz jmp shl sar mov Tmp mov Tx_main tx_bit jmpret xor Write_bit
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test INA wc if_nc jmp add Rx_head_ptr wrbyte Rx_ptr add jmpret Tx_jump cmpsub Rx_end_ptr wc if_nc sub Rx_head_ptr wrword Update_head_ptr tjz Tx_jump jmp Lockstep waitcnt Step_clocks ror Write_bit Lockstep_ret jmp Tx_main rdlong PAR jmpret rdlong Period_ptr jmpret tjz mov Bytes_out shr add jmpret Tx_main tx_byte rdbyte Write_ptr add Write_ptr
section serial ax global Fds_entry compress off start org Fds_entry neg mov Ctra_val mov Masktx mov Ctrb_val mov rdlong Period_ptr wrlong PAR mov Step_clocks add CNT Rx_cleanup mov Rx_main jmpret Tx_jump mov PHSB wz if_z jmp jmpret Tx_jump cmp Step_clocks wc if_b jmpret Tx_jump mov Rx_main get_bit jmpret Tx_jump test INA wc rcr jmpret Tx_jump djnz shr jmpret Tx_jump test INA wc if_nc jmp add Rx_head_ptr wrbyte Rx_ptr add jmpret Tx_jump cmpsub Rx_end_ptr wc if_nc sub Rx_head_ptr wrword Update_head_ptr tjz Tx_jump jmp Lockstep waitcnt Step_clocks ror Write_bit Lockstep_ret jmp Tx_main rdlong PAR jmpret rdlong Period_ptr jmpret tjz mov Bytes_out shr add jmpret Tx_main tx_byte rdbyte Write_ptr add or jmpret mov INA and Maskcts wz