2015-12-15 15:59:49 -08:00
|
|
|
PrinterReceive:: ; 2057
|
|
|
|
ld a, [hROMBank]
|
|
|
|
push af
|
|
|
|
ld a, BANK(_PrinterReceive)
|
|
|
|
rst Bankswitch
|
|
|
|
|
|
|
|
call _PrinterReceive
|
|
|
|
pop af
|
|
|
|
rst Bankswitch
|
|
|
|
|
|
|
|
ret
|
|
|
|
; 2063
|
|
|
|
|
2014-02-01 17:26:39 -08:00
|
|
|
AskSerial:: ; 2063
|
2013-09-08 20:53:04 -07:00
|
|
|
; send out a handshake while serial int is off
|
2015-02-10 15:14:41 -08:00
|
|
|
ld a, [wc2d4]
|
2013-09-08 20:53:04 -07:00
|
|
|
bit 0, a
|
|
|
|
ret z
|
2016-04-10 11:42:14 -07:00
|
|
|
|
2015-02-10 15:14:41 -08:00
|
|
|
ld a, [wc2d5]
|
2013-09-08 20:53:04 -07:00
|
|
|
and a
|
|
|
|
ret nz
|
2016-04-10 11:42:14 -07:00
|
|
|
|
2013-09-08 20:53:04 -07:00
|
|
|
; once every 6 frames
|
2015-02-10 15:14:41 -08:00
|
|
|
ld hl, wca8a
|
2013-09-08 20:53:04 -07:00
|
|
|
inc [hl]
|
|
|
|
ld a, [hl]
|
|
|
|
cp 6
|
|
|
|
ret c
|
2016-04-10 11:42:14 -07:00
|
|
|
|
2013-09-08 20:53:04 -07:00
|
|
|
xor a
|
|
|
|
ld [hl], a
|
2016-04-10 11:42:14 -07:00
|
|
|
|
2013-09-08 20:53:04 -07:00
|
|
|
ld a, $c
|
2015-02-10 15:14:41 -08:00
|
|
|
ld [wc2d5], a
|
2016-04-10 11:42:14 -07:00
|
|
|
|
2013-09-08 20:53:04 -07:00
|
|
|
; handshake
|
|
|
|
ld a, $88
|
|
|
|
ld [rSB], a
|
2016-04-10 11:42:14 -07:00
|
|
|
|
2013-09-08 20:53:04 -07:00
|
|
|
; switch to internal clock
|
|
|
|
ld a, %00000001
|
|
|
|
ld [rSC], a
|
2016-04-10 11:42:14 -07:00
|
|
|
|
2013-09-08 20:53:04 -07:00
|
|
|
; start transfer
|
|
|
|
ld a, %10000001
|
|
|
|
ld [rSC], a
|
2016-04-10 11:42:14 -07:00
|
|
|
|
2013-09-08 20:53:04 -07:00
|
|
|
ret
|
|
|
|
; 208a
|