Browse Source

More XModem Tuning

- Fix bug in USB-FIFO specific driver of XMX
- Tighten receive loop (now achieves 38400 baud w/o flow control on 4MHz CPU system)
patch
Wayne Warthen 6 years ago
parent
commit
08f40d88df
  1. 0
      Source/Apps/XM/XModem Xfer Anomaly.txt
  2. 6
      Source/Apps/XM/xmdm125.asm
  3. 6
      Source/Apps/XM/xmx.180

0
Source/Apps/XM/XModem Xfer Anomaly → Source/Apps/XM/XModem Xfer Anomaly.txt

6
Source/Apps/XM/xmdm125.asm

@ -3497,6 +3497,12 @@ RECVDG: CALL GETCHR
CALL GETCHR
;
RECV: PUSH D ; Save 'DE' regs.
;
; [WBW] BEGIN: Check immediately for char pending to avoid delay
CALL RCVRDY ; Input from modem ready
JZ MCHAR ; Got the character
; [WBW] END
;
; [WBW] BEGIN: Use dynamic CPU speed
; MVI E,MHZ ; Get the clock speed
LDA CPUMHZ ; Get the clock speed

6
Source/Apps/XM/xmx.180

@ -281,7 +281,7 @@ RCVSCL DW 6600 ; RECV loop timeout scalar
UNIT DB 0 ; BIOS serial device unit number
BIOSBID DB 00H ; BIOS bank id
;
TAG DB "RomWBW, 23-May-2020$"
TAG DB "RomWBW, 30-May-2020$"
;
HB_LBL DB ", HBIOS FastPath$"
UB_LBL DB ", UNA UBIOS$"
@ -776,8 +776,8 @@ UF_JPTBL:
; USB-FIFO initialization
;
UF_INIT:
LD HL,12000 ; Receive loop timeout scalar
LD (RCVSCL),HL ; ... for UART RCVRDY timing
LD DE,12000 ; Receive loop timeout scalar
LD (RCVSCL),DE ; ... for UART RCVRDY timing
;
LD A,L ; Get base I/O port address (data port)
LD (UF_SCDP),A ; Set data port in SENDR

Loading…
Cancel
Save