; ~ confirm flags and high nybble print "`", F, "'", T
;
; predefined addresses and operations
-; A B C D E set setting address to PORTx S := 0xf80-0xf84
-; H L Z set TRIS and LAT rel.to PORT modify *(S+0x09), *(S+0x92)
-; according to B according to B, and print op
+; A B C D E set setting address to PORTx S := 0xf80-0xf84, print op
+; H L Z T set TRIS and LAT rel.to PORT modify *(S+0x09), *(S+0x92)
+; according to B (T: toggle LAT) according to B, and print op
; NB address addition no carry
;
; byte operations
checkequal 'H', command_trislat_h
checkequal 'L', command_trislat_l
checkequal 'Z', command_trislat_z
+ checkequal 'T', command_trislat_t
checkatleast 'E'+1, command_ifnot_portaddr
checkatleast 'A', command_portaddr
set_f sh
mov_fw original_op
rcall serial_write_char
- bra command_address_confirm
+ bra command_endswitch
;--------------------
; trislat commands
and_wff INDF2
bra command_trislat_nz
+command_trislat_t
+ rcall trislat_setup_indf2_lat
+ xor_wff INDF2
+ bra command_trislat_nz
+
;----------
trislat_setup_indf2_lat
; W undefined B
rcall serial_write_hex_digit
mov_fw s
rcall serial_write_hex
- bra command_endswitch
+ return
command_confirm_flags_highnyb
rcall confirm_flags