diff --git a/Source/HBIOS/updater.asm b/Source/HBIOS/updater.asm index 414ab9a8..6fd1bd24 100644 --- a/Source/HBIOS/updater.asm +++ b/Source/HBIOS/updater.asm @@ -764,26 +764,48 @@ VERF: POP BC ; EXIT WITH FAIL POP BC ; FAIL MESSAGE AND JP FAILWF ; RETURN TO MENU ; -OPTIONG:LD HL,msgChangeNow - CALL PRTSTR0 - LD A,(RECSPD) -; CALL PRTHEXB - CALL DECBAUD +OPTIONG:LD HL,msgChangeNow ; CHANGE + CALL PRTSTR0 ; SERIAL + LD A,(RECSPD) ; DEVICE + PUSH AF ; BAUD RATE + CALL DECBAUD ; TO RECOMMENDED LD HL,msgPressKey CALL PRTSTR0 + POP AF + CALL CHGSPD CALL GETINP JP MENULP ; -OPTIONL:LD HL,msgChangeNow - CALL PRTSTR0 - LD A,(ORISPD) -; CALL PRTHEXB - CALL DECBAUD +OPTIONL:LD HL,msgChangeNow ; CHANGE + CALL PRTSTR0 ; SERIAL + LD A,(ORISPD) ; DEVICE + PUSH AF ; BAUD RATE + CALL DECBAUD ; TO ORIGINAL LD HL,msgPressKey CALL PRTSTR0 - CALL GETINP + POP AF + CALL CHGSPD + CALL GETINP JP MENULP ; +CHGSPD: PUSH AF + LD B,$05 ; GET SERIAL DEVICE + LD A,(SERDEV) ; CHARACTERISTICS + LD C,A + RST 08 + LD A,D ; MASK OUT EXISTING + AND %11100000 ; REPLACE WITH RATE + LD D,A + POP AF + OR D + LD D,A +; + LD B,$04 ; SET NEW + LD A,(SERDEV) ; SPEED + LD C,A + RST 08 + RET +; OPTIONV:LD A,(WRTVER) ; TOGGLE CPL ; VERIFY LD (WRTVER),A ; FLAG