]> cloudbase.mooo.com Git - z180-stamp-cpm3.git/commitdiff
seldsk/read/write: remove b0call
authorLeo C <erbl259-lmu@yahoo.de>
Wed, 29 Jun 2016 23:34:19 +0000 (01:34 +0200)
committerLeo C <erbl259-lmu@yahoo.de>
Wed, 29 Jun 2016 23:34:19 +0000 (01:34 +0200)
cbios/bioskrnl.180
cbios/mm.180

index 794e0ff4f1f191c0ccd5825233a4c0568ecae7c1..39663427d3afed542e91b379038eff6780fa25b9 100644 (file)
@@ -454,10 +454,6 @@ bnksel:
        ;               in <HL>\r
 \r
 seldsk:\r
-       b0call  _seldsk\r
-       ret\r
-\r
-_seldsk:\r
        ld      a,c             ; save drive select code\r
        ld      (@adrv),a\r
        xor     a\r
@@ -488,7 +484,10 @@ _seldsk:
        inc     hl\r
        ld      h,(hl)\r
        ld      l,a\r
+       ld      (bs$stack),sp\r
+       ld      sp,bs$stack\r
        call    ijphl           ; call LOGIN\r
+       ld      sp,(bs$stack)\r
 notfirst:\r
        ld      hl,(@xdph)      ; recover DPH pointer\r
        ret\r
@@ -566,17 +565,16 @@ sectrn:
        ;               extended disk parameter header (XDPH).\r
 \r
 read:\r
-       b0call  _read\r
-       ret\r
-\r
-_read:\r
+       ld      (bs$stack),sp\r
+       ld      sp,bs$stack\r
        ld      a,1\r
        ld      (@op),a\r
        ld      ix,(@xdph)      ; get drive descriptor pointer\r
        ld      l,(ix-8)        ; get read routine entry\r
        ld      h,(ix-7)\r
-       jp      (hl)\r
-\r
+       call    ijphl           ; call LOGIN\r
+       ld      sp,(bs$stack)\r
+       ret\r
 \r
        ; WRITE\r
        ;       Write physical sector from currently selected drive.\r
@@ -584,16 +582,16 @@ _read:
        ;               extended disk parameter header (XDPH).\r
 \r
 write:\r
-       b0call  _write\r
-       ret\r
-\r
-_write:\r
+       ld      (bs$stack),sp\r
+       ld      sp,bs$stack\r
        ld      a,2\r
        ld      (@op),a\r
        ld      ix,(@xdph)      ; get drive descriptor pointer\r
        ld      l,(ix-10)       ; get write routine entry\r
        ld      h,(ix- 9)\r
-       jp      (hl)\r
+       call    ijphl           ; call LOGIN\r
+       ld      sp,(bs$stack)\r
+       ret\r
 \r
 \r
 \r
index d1f472c8778ed1e1c5bf9190780b562f99a2acc1..0c3fc363a3c782517ca0b4688b349ea1971131ad 100644 (file)
@@ -645,5 +645,6 @@ bnk2bbr:
         db     '|'\r
        endm\r
 bs$stack:\r
+       dw      0\r
 \r
        end\r