From 8ff8a37a68ad3a801c2db965b107eef616cb8e59 Mon Sep 17 00:00:00 2001 From: David Schmenk Date: Wed, 21 Jan 2015 15:47:45 -0800 Subject: [PATCH] Adding handle based swapping memory manager --- DEMO.0.10.PO | Bin 143360 -> 0 bytes DEMO.0.9.PO | Bin 143360 -> 0 bytes src/libsrc/memmgr.pla | 775 +++++++++++++++++++++++++++++++++++++ src/makefile | 7 +- src/samplesrc/etherip.pla | 115 ++++-- src/samplesrc/uthernet.pla | 57 ++- src/toolsrc/parse.c | 52 ++- 7 files changed, 936 insertions(+), 70 deletions(-) delete mode 100644 DEMO.0.10.PO delete mode 100644 DEMO.0.9.PO create mode 100644 src/libsrc/memmgr.pla diff --git a/DEMO.0.10.PO b/DEMO.0.10.PO deleted file mode 100644 index 76d4b64663a65594c9c7997a906afa7c7beb7989..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 143360 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 wJG6k4bi8Vv=ME^M[^str] = char +end +def swapfile(filestr, hmem) + memcpy(filestr, @swapvol, swapvol + 1) + strcharadd(filestr, 'H') + strcharadd(filestr, hexchar[(hmem >> 12) & $0F]) + strcharadd(filestr, hexchar[(hmem >> 8) & $0F]) + strcharadd(filestr, hexchar[(hmem >> 4) & $0F]) + strcharadd(filestr, hexchar[ hmem & $0F]) +end +def open(path) + byte params[6] + + params.0 = 3 + params:1 = path + params:3 = iobuffer + params.5 = 0 + syscall($C8, @params) + return params.5 +end +def close(refnum) + byte params[2] + + params.0 = 1 + params.1 = refnum + return syscall($CC, @params) +end +def read(refnum, buff, len) + byte params[8] + + params.0 = 4 + params.1 = refnum + params:2 = buff + params:4 = len + params:6 = 0 + syscall($CA, @params) + return params:6 +end +def write(refnum, buff, len) + byte params[8] + + params.0 = 4 + params.1 = refnum + params:2 = buff + params:4 = len + params:6 = 0 + syscall($CB, @params) + return params:6 +end +def get_eof(refnum) + byte params[5] + + params.0 = 2 + params.1 = refnum + params:2 = 0 + params.4 = 0 + syscall($D1, @params) + return params:2 +end +def get_info(path, infoptr) + byte params[18] + + memset(@params, 18, 0) + params.0 = 10 + params:1 = path + syscall($C4, @params) + return memcpy(infoptr, @params.3, 15) +end +def create(path, access, type, aux) + byte params[12], kind + + kind = $01 + if type == $0F + kind = $0D + fin + params.0 = 7 + params:1 = path + params.3 = access + params.4 = type + params:5 = aux + params.7 = kind + params:8 = 0 + params:10 = 0 + return syscall($C0, @params) +end +def destroy(path) + byte params[12] + + params.0 = 1 + params:1 = path + return syscall($C1, @params) +end +def volumes(unit, buff) + byte params[4] + + params.0 = 2 + params.1 = unit + params:2 = buff + return syscall($C5, @params) +end +// +// Find exact/best free memory match +// +def unlink(freblk) + // + // Unlink free block + // + if freblk=>freprv + freblk=>freprv=>frenxt = freblk=>frenxt + else + frelst = freblk=>frenxt + fin + if freblk=>frenxt + freblk=>frenxt=>freprv = freblk=>freprv + fin + return freblk +end +def unfre(freblk, size) + word shrink + + if freblk=>fresiz == size + // + // Unlink free block + // + unlink(freblk) + elsif freblk=>fresiz > size + // + // Shrink free block + // + shrink = freblk + size + if freblk=>freprv + freblk=>freprv=>frenxt = shrink + else + frelst = shrink + fin + if freblk=>frenxt + freblk=>frenxt=>freprv = shrink + fin + shrink=>fresiz = freblk=>fresiz - size + shrink=>frenxt = freblk=>frenxt + shrink=>freprv = freblk=>freprv + else + freblk = 0 + fin + return freblk +end +def addfre(freblk) + word srch + + freblk=>fresiz = freblk=>blksiz << 4 + if frelst and frelst < freblk + srch = frelst + while srch=>frenxt + if srch=>frenxt > freblk + // + // Insert into list + // + freblk=>freprv = srch + freblk=>frenxt = srch=>frenxt + srch=>frenxt=>freprv = freblk + srch=>frenxt = freblk + fin + srch = srch=>frenxt + loop + // + // Add to end of list + // + freblk=>freprv = srch + freblk=>frenxt = 0 + srch=>frenxt = freblk + else + // + // Add to beginning of list + // + freblk=>freprv = 0 + freblk=>frenxt = frelst + frelst = freblk + fin +end +def findexact(size) + word srch + + srch = frelst + while srch + if srch=>fresiz == size + return unlink(srch) + fin + srch = srch=>frenxt + loop +end +def findbest(size) + word srch, shrink + + srch = frelst + while srch + if srch=>fresiz >= size + return unfre(srch, size) + fin + srch = srch=>frenxt + loop +end +// +// Memory coallesce/compaction/swap out routines +// +def coallesce + word srch, combined + + combined = 0 + srch = frelst + while srch + if srch + srch=>fresiz == srch=>frenxt + // + // Combine adjacent free space + // + srch=>frenxt = srch=>frenxt=>frenxt + if srch=>frenxt + srch=>frenxt=>freprv = srch + fin + combined = 1 + fin + srch = srch=>frenxt + loop + return combined +end +def compact + word page, entry, memblk, moveblk, size, srch + byte moved + + moved = 0 + for page = PG_TBL_SIZE - 1 downto 0 + if hpgtbl[page] + for entry = 255 downto 0 + if hpgtbl:[page, entry].lsb & HMEM_STATE == HMEM_MOVEABLE + memblk = hpgtbl:[page, entry] + size = memblk=>blksiz << 4 + moveblk = 0 + srch = frelst + while srch and srch < memblk + if srch=>fresiz >= size + moveblk = unfre(srch) + break + fin + srch = srch=>frenxt + loop + if moveblk + memcpy(moveblk, memblk, size) + hpgtbl:[page, entry] = moveblk + addfre(memblk) + moved = 1 + fin + fin + next + break + fin + next + if moved + coallesce + fin + return moved +end +// +// Swap out memory block +// +def swapout(accessed) + byte[64] filename + byte ref + word page, entry, memblk, size, hmem + byte swapped + + swapped = 0 + for page = PG_TBL_SIZE - 1 downto 0 + if hpgtbl[page] + for entry = 255 downto 0 + if hpgtbl:[page, entry].lsb & HMEM_STATE == HMEM_MOVEABLE + memblk = hpgtbl:[page, entry] + if not memblk->blklok & accessed + // + // Swap this block out + // + size = memblk=>blksiz << 4 + hmem.lsb = page + hmem.msb = entry + swapfile(@filename, hmem) + create(@filename, $C3, $00, $0000) + ref = open(@filename) + if ref + // + // Write it out + // + if write(ref, memblk, size) == 0 + hpgtbl:[page, entry] = HMEM_SWAPPED + addfre(memblk) + swapped = 1 + fin + fin + close(ref) + fin + fin + next + break + fin + next + if swapped + coallesce + compact + fin + return swapped +end +// +// Find a memory block +// +def getblk(size) + word addr + + size = ((size + t_memblk) | MIN_BLK_MASK) + 1 + if size > MAX_BLK_SIZE; return 0; fin + addr = findexact(size) + if !addr + coallesce + addr = findexact(size) + if !addr + compact + addr = findbest(size) + if !addr + swapout(HMEM_ACCESSED) + addr = findbest(size) + if !addr + swapout(0) + addr = findbest(size) + fin + fin + fin + fin + // + // Fill in the block + // + if addr + addr->blksiz = size >> 4 + addr->blkref = 1 + addr->blklok = 0 + fin + return addr +end +// +// Swap in a memory block +// +def swapin(hmem) + byte[64] filename + byte ref + word memblk, size + + memblk = 0 + if hpgtbl:[hmem.lsb, hmem.msb].lsb == HMEM_SWAPPED + // + // Swap this block back in + // + swapfile(@filename, hmem) + ref = open(@filename) + if ref + size = get_eof(ref) + memblk = getblk(size - t_memblk - 1) + // + // Read it in + // + if memblk + hpgtbl:[hmem.lsb, hmem.msb] = memblk + read(ref, memblk, size) + fin + close(ref) + destroy(@filename) + fin + fin + return memblk +end +// +// Incrementally clear the ACCESSED BIT +// +export def sweep + word memblk + + if hpgtbl[sweeppg] + memblk = hpgtbl:[sweeppg, sweepen] + when memblk.lsb & HMEM_STATE + is HMEM_MOVEABLE + is HMEM_LOCKED + memblk = memblk & HMEM_ADDR + if memblk->blklok & HMEM_ACCESSED + memblk->blklok = memblk->blklok & $7F + fin + wend + if sweepen == 255 + sweepen = 0 + if sweeppg == PG_TBL_SIZE - 1 + sweeppg = 0 + else + sweeppg = sweeppg + 1 + fin + else + sweepen = sweepen + 1 + fin + else + if sweeppg == PG_TBL_SIZE - 1 + sweeppg = 0 + else + sweeppg = sweeppg + 1 + fin + fin +end +// +// Set end of memory pool +// +export def brk(addr) + word brksiz, brkblk, srch + + // + // Check if addr is too high or low + // + if isugt(addr, @brksiz); return 0; fin + if isule(addr, heapmark); return 0; fin + brksiz = 0 + if not pooladdr + // + // Allocate the memory pool + // + brksiz = addr - heapmark + if isult(brksiz, MAX_BLK_SIZE); return 0; fin // Not enough heap + poolsize = brksiz + pooladdr = heapalloc(poolsize) + frelst = pooladdr + frelst=>fresiz = poolsize + frelst=>frenxt = 0 + frelst=>freprv = 0 + else + // + // Can we extend the memory pool? + // + if pooladdr + poolsize == heapmark + brksiz = addr - heapmark + if isuge(brksiz, MIN_BLK_SIZE) + brkblk = heapalloc(brksiz) + // + // Add block to end of free list + // + brkblk=>fresiz = brksiz + brkblk=>frenxt = 0 + if frelst + srch = frelst + while srch=>frenxt; srch = srch=>frenxt; loop + srch=>frenxt = brkblk + brkblk=>freprv = srch + else + frelst = brkblk + brkblk=>freprv = 0 + fin + fin + fin + fin + return brksiz +end +export def sbrk(size) + return brk(heapmark + size) +end +// +// Allocate memory block +// +export def hmemNew(size) + word page, entry, hnew, memblk + + // + // First, find a free handle + // + for page = PG_TBL_SIZE - 1 downto 0 + if !hpgtbl[page] + // + // Allocate a new page table + // + hpgtbl[page] = heapalloc(PG_SIZE) + memset(hpgtbl[page], PG_SIZE, HMEM_AVAIL) + // + // Check if we need to allocate the memory pool + // + if not pooladdr + // + // Allocate 3/4 of available heap on 128K machine, 1/2 on 64K machine + // + poolsize = ((@page - heapmark) >> 1) & $7FFF + if MACHID & $30 == $30 + poolsize = poolsize + (poolsize >> 1) + fin + sbrk(poolsize) + fin + fin + for entry = 255 downto 0 + if hpgtbl:[page, entry].lsb == HMEM_AVAIL + // + // Search for the best match + // + memblk = getblk(size) + if !memblk; return 0; fin + hpgtbl:[page, entry] = memblk + hnew.lsb = page + hnew.msb = entry + return hnew + fin + next + next +end +// +// Lock memory block in place +// +export def hmemLock(hmem) + word memblk + + memblk = hpgtbl:[hmem.lsb, hmem.msb] + when memblk.lsb & HMEM_STATE + is HMEM_SWAPPED + memblk = swapin(hmem) + if not memblk; return 0; fin + is HMEM_MOVEABLE + hpgtbl:[hmem.lsb, hmem.msb] = memblk | HMEM_LOCKED + is HMEM_LOCKED + memblk = memblk & HMEM_ADDR + memblk->blklok = (memblk->blklok + 1) | HMEM_ACCESSED + return memblk + t_memblk + wend +end +// +// Unlock memory block +// +export def hmemUnlock(hmem) + byte lock + word memblk + + memblk = hpgtbl:[hmem.lsb, hmem.msb] + if memblk.lsb & HMEM_STATE == HMEM_LOCKED + memblk = memblk & HMEM_ADDR + lock = memblk->blklok - 1 + if lock == HMEM_ACCESSED + // + // Block is now moveable + // + hpgtbl:[hmem.lsb, hmem.msb] = memblk + fin + memblk->blklok = lock + fin +end +// +// Increment reference count +// +export def hmemRef(hmem) + word memblk + + memblk = hpgtbl:[hmem.lsb, hmem.msb] + when memblk.lsb & HMEM_STATE + is HMEM_SWAPPED + memblk = swapin(hmem) + is HMEM_LOCKED + is HMEM_MOVEABLE + memblk = memblk & HMEM_ADDR + if not memblk; return 0; fin + memblk->blkref = memblk->blkref + 1 + wend +end +// +// Decrement reference count +// +export def hmemUnref(hmem) + byte ref + word memblk + + memblk = hpgtbl:[hmem.lsb, hmem.msb] + when memblk & HMEM_STATE + is HMEM_SWAPPED + memblk = swapin(hmem) + is HMEM_LOCKED + is HMEM_MOVEABLE + memblk = memblk & HMEM_ADDR + if not memblk; return 0; fin + ref = memblk->blkref - 1 + if ref == 0 + // + // No more references, free block + // + hpgtbl:[hmem.lsb, hmem.msb] = HMEM_AVAIL + addfre(memblk) + else + memblk->blkref = ref + fin + wend +end +// +// DEBUG +// +def putln + return putc($0D) +end +def putb(hexb) + return call($FDDA, hexb, 0, 0, 0) +end +def puth(hex) + return call($F941, hex >> 8, hex, 0, 0) +end +def puti(i) + if i < 0; putc('-'); i = -i; fin + if i < 10 + putc(i + '0') + else + puti(i / 10) + putc(i % 10 + '0') + fin +end +// +// Search for best swap volume +// +initdata = heapmark // Use data at top of heap for initialization +volumes(0, iobuffer) +initdata=>volptr = iobuffer +initdata=>ramfree = 0 +initdata=>bestfree = 0 +for sweepen = 0 to 15 + ^initdata=>volptr = ^initdata=>volptr & $0F + if ^initdata=>volptr + memcpy(@swapvol + 2, initdata=>volptr + 1, ^initdata=>volptr) + swapvol = ^initdata=>volptr + 1 + get_info(@swapvol, @initdata->info) + initdata=>freeblks = initdata=>info:2 - initdata=>info:5 + if initdata=>volptr:1 == $522F and initdata=>volptr:3 == $4D41 // '/RAM' + if isugt(initdata=>freeblks, initdata=>ramfree) + initdata=>ramvol = initdata=>volptr + initdata=>ramfree = initdata=>freeblks + fin + elsif isugt(initdata=>freeblks, initdata=>bestfree) + initdata=>bestvol = initdata=>volptr + initdata=>bestfree = initdata=>freeblks + fin + fin + initdata=>volptr = initdata=>volptr + 16 +next +if isugt(initdata=>ramfree, $40) or isugt(initdata=>ramfree, initdata=>bestfree) // RAMdrive greater than 64K? Use it + initdata=>bestvol = initdata=>ramvol + initdata=>bestfree = initdata=>ramfree +fin +memcpy(@swapvol + 2, initdata=>bestvol + 1, ^initdata=>bestvol) +swapvol = ^initdata=>bestvol + 1 +memcpy(@swapvol + swapvol + 1, @swapdir + 1, swapdir) +swapvol = swapvol + swapdir +create(@swapvol, $C3, $0F, $0000) // Create the swap directory +// +// Clear out left over swap files +// +initdata->catref = open(@swapvol) +initdata->firstblk = 1 +initdata->swapstrlen = swapvol +repeat + if read(initdata->catref, @initdata->catalog, 512) == 512 + initdata=>catentry = @initdata->catalog.4 + if initdata->firstblk + initdata->entrylen = initdata->catalog.$23 + initdata->entriesblk = initdata->catalog.$24 + initdata=>filecnt = initdata=>catalog:$25 + initdata=>catentry = initdata=>catentry + initdata->entrylen + fin + for sweepen = initdata->firstblk to initdata->entriesblk + ^initdata=>catentry = ^initdata=>catentry & $0F + if ^initdata=>catentry + memcpy(@swapvol + swapvol + 1, initdata=>catentry + 1, ^initdata=>catentry) + swapvol = swapvol + ^initdata=>catentry + destroy(@swapvol) + swapvol = initdata->swapstrlen + fin + initdata=>catentry = initdata=>catentry + initdata->entrylen + next + initdata->firstblk = 0 + else + initdata->filecnt = 0 + fin +until !initdata->filecnt +close(initdata->catref) +puts(@swapvol); putln +done \ No newline at end of file diff --git a/src/makefile b/src/makefile index 5019437..bbc29a8 100644 --- a/src/makefile +++ b/src/makefile @@ -21,6 +21,7 @@ HGR1TEST= HGR1TEST\#FE1000 TEST = TEST\#FE1000 TESTLIB = TESTLIB\#FE1000 PROFILE = PROFILE\#FE1000 +MEMMGR = MEMMGR\#FE1000 PLASM = plasm INCS = toolsrc/tokens.h toolsrc/symbols.h toolsrc/lex.h toolsrc/parse.h toolsrc/codegen.h OBJS = toolsrc/plasm.c toolsrc/parse.o toolsrc/lex.o toolsrc/codegen.o @@ -40,7 +41,7 @@ TXTTYPE = .TXT #SYSTYPE = \#FF2000 #TXTTYPE = \#040000 -all: $(PLASM) $(PLVM) $(PLVM01) $(PLVM02) $(PLVM03) $(CMD) $(PROFILE) $(ED) $(SB) $(ROD) $(SIEVE) $(UTHERNET) $(ETHERIP) $(ROGUE) $(ROGUEMAP) $(ROGUECOMBAT) $(ROGUEIO) $(HGR1) +all: $(PLASM) $(PLVM) $(PLVM01) $(PLVM02) $(PLVM03) $(CMD) $(MEMMGR) $(SB) $(ROD) $(SIEVE) $(UTHERNET) $(ETHERIP) $(ROGUE) $(ROGUEMAP) $(ROGUECOMBAT) $(ROGUEIO) $(HGR1) clean: -rm *FE1000 *FF2000 $(PLASM) $(PLVM) $(PLVM01) $(PLVM02) $(PLVM03) @@ -97,6 +98,10 @@ $(SB): toolsrc/sb.pla $(PLVM02) $(PLASM) toolsrc/sb.pla ./$(PLASM) -A < toolsrc/sb.pla > toolsrc/sb.a acme --setpc 8192 -o $(SB) toolsrc/sb.a +$(MEMMGR): libsrc/memmgr.pla $(PLVM02) $(PLASM) + ./$(PLASM) -AM < libsrc/memmgr.pla > libsrc/memmgr.a + acme --setpc 4094 -o $(MEMMGR) libsrc/memmgr.a + $(ROD): samplesrc/rod.pla $(PLVM02) $(PLASM) ./$(PLASM) -AM < samplesrc/rod.pla > samplesrc/rod.a acme --setpc 4094 -o $(ROD) samplesrc/rod.a diff --git a/src/samplesrc/etherip.pla b/src/samplesrc/etherip.pla index 8c86fa2..2e8279a 100644 --- a/src/samplesrc/etherip.pla +++ b/src/samplesrc/etherip.pla @@ -1,7 +1,7 @@ import STDLIB predef syscall, call, memset, getc, gets, putc, puts, putln predef memset, memcpy, modaddr, modexec - predef heapmark, heapallocalign, heapalloc, heaprelease, heapavail + predef heapmark, heapallocalign, heapalloc, heaprelease byte MACHID end // @@ -12,10 +12,18 @@ struc t_edrvr word fillMAC word writeFrame word readFrame - word nextEvent + word recvFrame end word edrvr // +// Ethernet packet header +// +struc t_ether + byte[6] hwdst + byte[6] hwsrc + word payload +end +// // IP datagram header // const HW_ETHER = $0100 // BE format @@ -48,27 +56,29 @@ struc t_arp byte[6] arp_senderha byte[4] arp_senderip byte[6] arp_targha - byte[4] arp_ragip + byte[4] arp_targip end -byte hARP = $FF,$FF,$FF,$FF,$FF,$FF // BCAST -byte MAC = $00,$0A,$99,$1E,$02,$00 -byte = $08, $06 // ARP payload - -byte pARP = $00, $01 // HW TYPE -byte = $08, $00 // PROTO TYPE -byte = 6 // HLEN -byte = 4 // PLEN -byte = $00, $01 // OP -byte[6] senderha = $00,$0A,$99,$1E,$02,$00 -byte[4] senderip = 192,168,123,10 -byte[6] targha -byte[4] targip = 192,168,123,1 +// +// Broadcast address for Ethernet and IP +// +byte BCAST = $FF, $FF, $FF, $FF, $FF, $FF +// +// Pre-configured ARP packet +// +byte ARP = $00, $01 // HW TYPE +byte = $08, $00 // PROTO TYPE +byte = 6 // HLEN +byte = 4 // PLEN +byte = $00, $01 // OP +byte[6] localha +byte[4] localip = 192,168,123,10 +byte[6] remoteha +byte[4] remoteip = 192,168,123,1 +// +// Max Ethernet frame size +// const maxesize = 1518 -const ehdrsize = 14 -// -// Receive packet -// -byte[maxesize] recvpkt +word pkt, len // // Defines for ASM routines // @@ -88,10 +98,10 @@ asm swab RTS end // -// CHECKSUM BE format -// checksum(BUF, LEN) +// SUM BE format +// sum(BUF, LEN) // -asm checksum +export asm sum LDY #$00 LDA ESTKL+1,X STY ESTKL+1,X @@ -126,12 +136,6 @@ CHKLP LDA (SRC),Y DEC ESTKH,X BNE CHKLP INX - LDA ESTKL,X - EOR #$FF - STA ESTKL,X - LDA ESTKH,X - EOR #$FF - STA ESTKH,X RTS end // @@ -146,6 +150,41 @@ end def puth(hex) return call($F941, hex >> 8, hex, 0, 0) end +def puti(i) + if i < 0; putc('-'); i = -i; fin + if i < 10 + putc(i + '0') + else + puti(i / 10) + putc(i % 10 + '0') + fin +end +def putha(haptr) + byte i + + for i = 0 to 4 + putb(haptr->[i]); putc(':') + next + return putb(haptr->[i]) +end +def putip(ipptr) + byte i + + for i = 0 to 2 + puti(ipptr->[i]); putc('.') + next + return puti(ipptr->[i]) +end +def dumparp(packet) + putha(packet + arp_senderha) + putc('=') + putip(packet + arp_senderip) + putln + putha(packet + arp_targha) + putc('=') + putip(packet + arp_targip) + putln +end def dumpfrm(packet, len) word i @@ -161,13 +200,23 @@ def dumpfrm(packet, len) fin putb(^(packet+i)) next + putln end if modexec(@etherlib) == 0 edrvr = modaddr(@etherlib) - edrvr=>writeFrame(@hARP, @pARP, 28) - repeat; until edrvr=>nextEvent() or ^$C000 > 127 + edrvr=>fillMAC(@localha) + edrvr=>writeFrame(@BCAST, PAYLOAD_ARP, @ARP, t_arp) + repeat; len = edrvr=>recvFrame(); until len or ^$C000 > 127 + if len + pkt = heapalloc(len) + if edrvr=>readFrame(pkt) == PAYLOAD_ARP + dumparp(pkt) + else + dumpfrm(pkt, len) + fin + heaprelease(pkt) + fin ^$C010 - dumpfrm(@recvpkt, edrvr=>readFrame(@recvpkt)) fin done \ No newline at end of file diff --git a/src/samplesrc/uthernet.pla b/src/samplesrc/uthernet.pla index 9079553..ad36851 100644 --- a/src/samplesrc/uthernet.pla +++ b/src/samplesrc/uthernet.pla @@ -16,8 +16,8 @@ const modinitkeep = $4000 // word readFrame // word nextEvent // -predef fillmac, writefrm, readfrm, nextevt -word = @fillmac, @writefrm, @readfrm, @nextevt, 0 +predef fillmac, writefrm, readfrm, recvfrm +word = @fillmac, @writefrm, @readfrm, @recvfrm, 0 // // Uthernet register offsets // @@ -32,7 +32,7 @@ const AUTO_INC = $8000 // // Uthernet register addresses // -word slot +byte slot[] byte txcmd byte txlen byte isq @@ -41,7 +41,7 @@ byte pregdata // // MAC address // -byte MAC = $00,$0A,$99,$1E,$02,$00 +byte MAC = $00,$0A,$99,$1E,$02,$00 // // Ethernet header // @@ -51,6 +51,9 @@ struc t_ehdr word ehdr_type end // +// Current status an packet len +word status, len // MUST be in this order! +// // Defines for ASM routines // asm equates @@ -195,36 +198,51 @@ def fillmac(pmac) pmac=>4 = MAC:4 return pmac + 6 end -def writefrm(header, payload, size) +def writefrm(destha, payload, packet, size) + pokeiow(txcmd, $C0) pokeiow(txlen, size + t_ehdr) repeat; until peekpreg($0138) & $0100 - pokefrm(header, t_ehdr) - pokefrm(payload, size) + pokefrm(destha, 6) + pokefrm(@MAC, 6) + pokefrm(@payload, 2) + return pokefrm(packet, size) end def readfrm(packet) - word status, len - - peekfrm(@status, 4) + byte[t_ehdr] header + word readlen + + readlen = len if status & $0100 + peekfrm(@header, t_ehdr) peekfrm(packet, len) - else - pokepreg($0102, $0140) // Skip pkt - len = 0 + fin + status = 0 + len = 0 + return header:ehdr_type +end +def recvfrm + if len == 0 + if peekiow(isq) & $3F == 4 + peekfrm(@status, 4) + if !(status & $0100) + pokepreg($0102, $0140) // Skip pkt + status = 0 + len = 0 + else + len = len - t_ehdr + fin + fin fin return len end -def nextevt - return peekiow(isq) & $3F -end // // Identify Uthernet card and initialize // -for slot = $90 to $F0 step $10 +for slot = $F0 downto $90 step $10 if (peekiow(slot+TXCMD) & $CC3F) == $09 pokeiow(slot+PREG_INDEX, 0) - if peekiow(slot+PREG_DATA) == $630E - txcmd = slot + TXCMD + if peekiow(slot+PREG_DATA) == $630E txlen = slot + TXLEN isq = slot + INT_STATUS pregidx = slot + PREG_INDEX @@ -234,6 +252,7 @@ for slot = $90 to $F0 step $10 _pokefrmh.1 = slot+1 _peekfrml.1 = slot _peekfrmh.1 = slot+1 + txcmd = slot + TXCMD // Set this last pokepreg($0158, MAC:0) // MAC addr pokepreg($015A, MAC:2) // MAC addr pokepreg($015C, MAC:4) // MAC addr diff --git a/src/toolsrc/parse.c b/src/toolsrc/parse.c index fd3ec75..04fa5df 100755 --- a/src/toolsrc/parse.c +++ b/src/toolsrc/parse.c @@ -494,6 +494,12 @@ int parse_value(int rvalue) */ if (emit_value) { + if (ref_offset != 0) + { + emit_const(ref_offset); + emit_op(ADD_TOKEN); + ref_offset = 0; + } if (ref_type & PTR_TYPE) (ref_type & BPTR_TYPE) ? emit_lb() : emit_lw(); if (scan_lookahead() != CLOSE_PAREN_TOKEN) @@ -559,6 +565,15 @@ int parse_value(int rvalue) } emit_value = 1; } + else + { + if (ref_offset != 0) + { + emit_const(ref_offset); + emit_op(ADD_TOKEN); + ref_offset = 0; + } + } while (parse_expr()) { if (scantoken != COMMA_TOKEN) @@ -600,16 +615,20 @@ int parse_value(int rvalue) } emit_value = 1; } - ref_type = (scantoken == PTRB_TOKEN) ? BPTR_TYPE : WPTR_TYPE; - ref_offset = 0; - if (!parse_const(&ref_offset)) - scan_rewind(tokenstr); - if (ref_offset != 0) + else { - emit_const(ref_offset); - emit_op(ADD_TOKEN); + if (ref_offset != 0) + { + emit_const(ref_offset); + emit_op(ADD_TOKEN); + } + if (ref_type & PTR_TYPE) + (ref_type & BPTR_TYPE) ? emit_lb() : emit_lw(); } ref_offset = 0; + ref_type = (scantoken == PTRB_TOKEN) ? BPTR_TYPE : WPTR_TYPE; + if (!parse_const(&ref_offset)) + scan_rewind(tokenstr); break; case DOT_TOKEN: case COLON_TOKEN: @@ -637,21 +656,18 @@ int parse_value(int rvalue) emit_value = 1; } } - else - { - if (ref_offset != 0) - { - emit_const(ref_offset); - emit_op(ADD_TOKEN); - ref_offset = 0; - } - } break; } } if (emit_value) { - if (rvalue && deref && (ref_type & PTR_TYPE)) + if (ref_offset != 0) + { + emit_const(ref_offset); + emit_op(ADD_TOKEN); + ref_offset = 0; + } + if (deref && (ref_type & PTR_TYPE)) (ref_type & BPTR_TYPE) ? emit_lb() : emit_lw(); } else @@ -692,6 +708,8 @@ int parse_value(int rvalue) return (0); } } + if (type & PTR_TYPE) + ref_type = type; return (ref_type ? ref_type : WORD_TYPE); } int parse_expr()