Below is the file 'firm/debug.inc' from this revision. You can also download the file.

; ### BOILERPLATE ###
; 8^2 Automaton Firmware
; Copyright (C) 2005 Peter Todd <pete@petertodd.org>
;
; This program is free software; you can redistribute it and/or modify
; it under the terms of the GNU General Public License as published by
; the Free Software Foundation; either version 2 of the License, or
; (at your option) any later version.
;
; This program is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
; GNU General Public License for more details.
;
; You should have received a copy of the GNU General Public License along
; with this program; if not, write to the Free Software Foundation, Inc.,
; 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
; ### BOILERPLATE ###


; Handy little debug macro to bit-bang a byte using two pins.

dataout	macro	DOUTTMP,OUTPORT,PIN1,PIN2
	banksel	DOUTTMP
	; clock out on OUTPORT,PIN1, data out on OUTPORT,PIN2
	movwf   DOUTTMP

	; do 8-bits
	local	i = 0
	while	i < 8

	btfsc   DOUTTMP,7
	bsf     OUTPORT,PIN2
	btfss   DOUTTMP,7
	bcf     OUTPORT,PIN2
	rlf     DOUTTMP,f
	bsf     OUTPORT,PIN1
	bcf     OUTPORT,PIN1

i = i + 1
	endw
	endm