Mercurial > hg > Members > kono > nitros9-code
view level1/modules/dwrdmess.asm @ 3267:024ad1d926fd
Get gfx2 to build from cmds folders
Now that gfx2.asm needs to include coco3vtio.d the latter needs to be
built first and be accessed from the port-specific defs folder.
OTOH the one built in 3rd-party/packages/basic09 is built only later
during a full build.
(All the different defs folders and .d files still puzzle me.)
Also updated coco3fpga/defs/makefile to be based on the coco3 one.
The mc09l2 port doesn't need gfx and gfx2.
Note for later:
This whole build of basic09 components from the 3rdparty folder
during the ports builds is not very nice. At a minimum we should
try to limit the extra --includedir to the few commands needing it.
author | Tormod Volden <debian.tormod@gmail.com> |
---|---|
date | Wed, 17 Jul 2019 01:14:55 +0200 |
parents | c505ae3120c4 |
children |
line wrap: on
line source
******************************************************* * * DWRdMess * Receive a response from the DriveWire server via MESS FIFO * 4/27/10 AAW - Based on John Linville's example driver * * Entry: * X = starting address where data is to be stored * Y = number of bytes expected * * Exit: * CC = carry set on framing error, Z set if all bytes received * X = starting address of data received * Y = checksum * U is preserved. All accumulators are clobbered * DWRead clra ; clear Carry (no framing error) pshs u,x,cc ; preserve registers, push timeout msb orcc #$50 ; mask interrupts leau ,x ; U = storage ptr ldx #0 ; initialize checksum * Read a byte rxByte ldb $ffe1 ; check for data in FIFO beq rxByte ; loop while empty ldb $ffe0 ; read data value stb ,u+ ; store received byte to memory abx ; update checksum leay ,-y ; decrement request count bne rxByte ; loop if another byte wanted * Clean up, set status and return rxExit leay ,x ; return checksum in Y puls cc,x,u,pc ; restore registers and return setdp $00