diff options
author | Leo C | 2019-05-04 09:56:54 +0200 |
---|---|---|
committer | Leo C | 2019-05-04 09:56:54 +0200 |
commit | 65abc3dc76fcbf4ee91a2256dd2dfbbc3e22e66c (patch) | |
tree | bfba73508bd6da17f187982efa4433f9fc2ed362 | |
parent | 4d8aefb1047c9c80bc14a1c33bf71a9610c0256d (diff) | |
download | z180-stamp-cpm3-65abc3dc76fcbf4ee91a2256dd2dfbbc3e22e66c.zip |
Update IXON flag from character device table (@ctbl)hexrel-6.9
-rw-r--r-- | cbios/ascii.180 | 30 |
1 files changed, 22 insertions, 8 deletions
diff --git a/cbios/ascii.180 b/cbios/ascii.180 index 5c93f1f..9b9566a 100644 --- a/cbios/ascii.180 +++ b/cbios/ascii.180 @@ -156,8 +156,13 @@ init_st: ld b,(ix+o.absdev)
ld c,8 ;
mlt bc ;
- ld hl,@ctbl+7 ;
+ ld hl,@ctbl+6 ;
add hl,bc ;
+ res IXON,(ix+o.fflags)
+ bit mbxon_bit,(hl) ;get cpm3 xon flag
+ jr z,$+6
+ set IXON,(ix+o.fflags)
+ inc hl
ld a,(hl) ;get baudrate index
call as_br_div
ld c,astc0l
@@ -219,18 +224,22 @@ mod_tab: func_tcgeta:
call chk_ptr
+ ld b,(ix+o.absdev)
+ ld c,8 ;
+ mlt bc ;
+ ld hl,@ctbl+6 ;
+ add hl,bc ;
+ res IXON,(ix+o.fflags)
+ bit mbxon_bit,(hl) ;get cpm3 xon flag
+ jr z,$+6
+ set IXON,(ix+o.fflags)
+ inc hl
ld a,(ix+o.iflags)
call b_st_a
inc de
ld a,(ix+o.fflags)
call b_st_a
inc de
-
- ld b,(ix+o.absdev)
- ld c,8 ;
- mlt bc ;
- ld hl,@ctbl+7 ;
- add hl,bc ;
ld a,(hl) ;get baudrate index
and M_CBAUD
ld b,a
@@ -261,8 +270,13 @@ func_tcseta: ld b,(ix+o.absdev)
ld c,8 ;
mlt bc ;
- ld hl,@ctbl+7 ;
+ ld hl,@ctbl+6 ;
add hl,bc ;
+ res mbxon_bit,(hl)
+ bit IXON,a
+ jr z,$+4
+ set mbxon_bit,(hl)
+ inc hl
call b_ld_a
ld (ix+o.cflags),a
and M_CBAUD
|