]> cloudbase.mooo.com Git - z180-stamp.git/blobdiff - z180/r3init.180
new fifos msg in, msg out, console in, console out
[z180-stamp.git] / z180 / r3init.180
index 1936c9be0bd5de4704823fcceff31871d69f3c2c..2dd1bb8f7343119d30c37ba43752f7d9d38e32d9 100644 (file)
@@ -313,7 +313,7 @@ buf.init:
        ret\r
 \r
 ;----------------------------------------------------------------------\r
-\r
+if 0\r
        extrn   msginit,msg_tx_fifo,msg_rx_fifo\r
        extrn   msg.sout\r
 \r
@@ -325,19 +325,19 @@ bufferinit:
        ld      (40h+0),hl\r
        ld      (40h+2),a\r
 \r
-       ld      (bufdat+1),hl\r
-       ld      (bufdat+3),a\r
-       xor     a\r
-       ld      (bufdat+0),a\r
-       ld      hl,inimsg\r
-       call    msg.sout\r
+;      ld      (bufdat+1),hl\r
+;      ld      (bufdat+3),a\r
+;      ld      a,1\r
+;      ld      (bufdat+0),a\r
+;      ld      hl,inimsg\r
+;      call    msg.sout\r
 \r
        ld      de,msg_rx_fifo\r
        in0     a,cbr\r
        call    log2phys\r
        ld      (bufdat+1),hl\r
        ld      (bufdat+3),a\r
-       ld      a,1\r
+       ld      a,2\r
        ld      (bufdat+0),a\r
        ld      hl,inimsg\r
        call    msg.sout\r
@@ -355,50 +355,63 @@ bufdat:
        db      0\r
 inimsg_e:\r
 \r
+endif\r
 ;----------------------------------------------------------------------\r
 ;\r
-if 0\r
 \r
-       extrn   msginit,msg.sout,msg_fifo\r
-       extrn   tx.buf,rx.buf\r
+       extrn   msginit,msg.sout\r
+       extrn   mtx.fifo,mrx.fifo\r
+       extrn   co.fifo,ci.fifo\r
 \r
 \r
 bufferinit:\r
        call     msginit\r
 \r
        ld      hl,buffers\r
-       ld      bc,0300h        ; b:count, c:buffer nr\r
+       ld      b,buftablen\r
 bfi_1:\r
+       ld      a,(hl)\r
+       inc     hl\r
+       ld      (bufdat+0),a\r
        ld      e,(hl)\r
        inc     hl\r
        ld      d,(hl)\r
        inc     hl\r
        push    hl\r
+\r
+       or      a\r
+       jr      nz,bfi_2\r
+       in0     a,cbr\r
+       call    log2phys\r
+       ld      (40h+0),hl\r
+       ld      (40h+2),a\r
+       out0    (AVRINT5),a\r
+       jr      bfi_3   \r
+bfi_2:\r
        in0     a,cbr\r
        call    log2phys\r
        ld      (bufdat+1),hl\r
        ld      (bufdat+3),a\r
-       ld      a,c\r
-       ld      (bufdat+0),a\r
        ld      hl,inimsg\r
        call    msg.sout\r
+bfi_3:\r
        pop     hl\r
-       inc     c\r
        djnz    bfi_1\r
        ret\r
 \r
-       rept    20\r
-       db      0\r
-       endm\r
-\r
 buffers:\r
-       dw      msg_fifo\r
-       dw      tx.buf\r
-       dw      rx.buf\r
+       db      0\r
+       dw      mtx.fifo\r
+       db      1\r
+       dw      mrx.fifo\r
+       db      2\r
+       dw      co.fifo\r
+       db      3\r
+       dw      ci.fifo\r
+buftablen equ  ($ - buffers)/3\r
 \r
 inimsg:\r
-       db      inimsg_e - $ -2\r
-       db      PMSG\r
+       db      inimsg_e - $ -1\r
        db      81h\r
        db      inimsg_e - $ -1\r
        db      0\r
@@ -408,7 +421,6 @@ bufdat:
        db      0\r
 inimsg_e:\r
 \r
-endif\r
 \r
 ;\r
 ;----------------------------------------------------------------------\r