From ef85cfad4cd26c13432d6b5d38ab19bd7180f54e Mon Sep 17 00:00:00 2001 From: Anatoliy Belyanskiy Date: Sun, 17 Sep 2023 06:45:03 +1000 Subject: [PATCH] =?UTF-8?q?=D1=80=D1=8E=D1=88=D0=B5=D1=87=D0=BA=D0=B8=20?= =?UTF-8?q?=D1=81=20=D1=86=D0=B2=D0=B5=D1=82=D0=B0=D0=BC=D0=B8=20=D0=B8=20?= =?UTF-8?q?=D0=B2=D1=8B=D1=80=D0=B0=D0=B2=D0=BD=D0=B8=D0=B2=D0=B0=D0=BD?= =?UTF-8?q?=D0=B8=D0=B5=D0=BC=20=D0=BF=D1=80=D0=B8=20=D0=B4=D0=B5=D1=82?= =?UTF-8?q?=D0=B5=D0=BA=D1=82=D0=B5=20ide=20=D0=B8=20=D0=B7=D0=B0=D0=B3?= =?UTF-8?q?=D1=80=D1=83=D0=B7=D0=BA=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/bios/rom/SETUP/MAIN.asm | 33 +++++++++++++----- src/bios/rom/SETUP/VIDEO_IO.asm | 7 ++-- src/bios/rom/SETUP/messages.z80 | 62 ++++++++++++++++----------------- 3 files changed, 60 insertions(+), 42 deletions(-) diff --git a/src/bios/rom/SETUP/MAIN.asm b/src/bios/rom/SETUP/MAIN.asm index 672d6ba..eef2753 100644 --- a/src/bios/rom/SETUP/MAIN.asm +++ b/src/bios/rom/SETUP/MAIN.asm @@ -647,7 +647,9 @@ INFO_MESSAGE: ;!FIXIT LD BC,#0710 ; !HARDCODE маска и ячейка для чтения значения кмос для основного загрузочного драйва CALL PrepareToBOOT LD A,msgStrings.bootFail - CALL C,POSTMSG + LD E,COLORS.CGA.INC.LRED + ;CALL C,POSTMSG + CALL C,POSTMSC CALL ScreenPOS.CRLF ABOOT: LD A,msgStrings.bootAltDrv @@ -994,21 +996,21 @@ OS_LOAD: EX AF,AF' PUSH AF LD A,msgStrings.bootOk - CALL POSTMSG + LD E,COLORS.CGA.INC.LGREEN + ;CALL POSTMSG + CALL POSTMSC CALL ScreenPOS.CRLF POP AF POP HL ; JP MOVE0 -MOVE0: - DI +MOVE0: DI IM 1 LD HL,MOVE1 LD DE,#7C00 ; !HARDCODE LD BC,MOVE1.length LDIR JP #7C00 -MOVE1: - LD SP,#7FFF ; !HARDCODE +MOVE1: LD SP,#7FFF ; !HARDCODE LD HL,TEMP LD DE,#8000 ; !HARDCODE LD BC,#0200 ; !HARDCODE @@ -1554,11 +1556,26 @@ PRINT_CHANEL: ; LD A,msgStrings.parSecIdeSl .print_chanel: - CALL FindStringAddr + CALL FindStringAddr + ;CALL LP_GET_PLACE + ;LD A,ScreenPOS.SUBNAME.POS + ;SUB E + ;LD B,A LD B,0 - LD D,':' ; !HARDCODE стоп символ для строки в messages.z80 + LD D,#FF JP LP_PRINT_LINE6 ; +/* + Detecting IDE Primary Master ... [Press F4 to skip] + Определяем Первичный IDE Master ... [F4 для пропуска] +Boot from HDD Primary IDE Master OK +Boot from HDD Primary IDE Slave OK +Boot from HDD Secondary IDE Master OK +Boot from HDD Secondary IDE Slave OK +Запуск с HDD Secondary IDE Master OK +Запуск с CD-ROM Secondary IDE Master OK +Boot from ATAPI Secondary IDE Master OK +*/ ;--------------------------------------- INCLUDE 'src/bios/ROM/SETUP/messages.z80' ;--------------------------------------- diff --git a/src/bios/rom/SETUP/VIDEO_IO.asm b/src/bios/rom/SETUP/VIDEO_IO.asm index e05f3f2..4f2f242 100644 --- a/src/bios/rom/SETUP/VIDEO_IO.asm +++ b/src/bios/rom/SETUP/VIDEO_IO.asm @@ -1,7 +1,7 @@ def_pal_mask EQU #FF PIC_SET_PAL_FF EQU def_pal_mask*256+BIOS.PIC_SET_PAL - +ScreenPOS.SUBNAME.POS EQU 37 IF NEW_FEATURE @@ -13,7 +13,7 @@ PIC_SET_PAL_FF EQU def_pal_mask*256+BIOS.PIC_SET_PAL ScreenPOS: .SUBNAME: CALL LP_GET_PLACE - LD E,#24 + LD E,.SUBNAME.POS ;!HARDCODE autodetected hdd/cdrom info JP LP_SET_PLACE .CRLF: CALL LP_GET_PLACE @@ -22,6 +22,7 @@ ScreenPOS: JP LP_SET_PLACE ;; +;!TODO переделать, а то криво как-то DWPRINT: LD A,(HL) CP ' ' @@ -35,7 +36,7 @@ DWPRINT: INC HL DJNZ DWPRINT RET - +;!TODO переделать, а то криво как-то PRINTDW: PUSH BC LD E,(HL) diff --git a/src/bios/rom/SETUP/messages.z80 b/src/bios/rom/SETUP/messages.z80 index fabf316..72a05d0 100644 --- a/src/bios/rom/SETUP/messages.z80 +++ b/src/bios/rom/SETUP/messages.z80 @@ -526,10 +526,10 @@ msgStrings: _mSetStr forAltBootButton, tmp_Counter : DZ ' for Alternative boot' _mSetStr cmosChecksumErr, tmp_Counter : DZ 'WARNING! CMOS CHECKSUM ERROR, DEFAULT VALUES SET!' _mSetStr cmosDateTimeErr, tmp_Counter : DZ 'WARNING! CMOS DATE/TIME ERROR, DEFAULT VALUES SET!' - _mSetStr detectIdePrMA, tmp_Counter : DZ ' Detecting IDE Primary Master ... [Press F4 to skip]' - _mSetStr detectIdePrSL, tmp_Counter : DZ ' Detecting IDE Primary Slave ... [Press F4 to skip]' - _mSetStr detectIdeSecMA, tmp_Counter : DZ ' Detecting IDE Secondary Master ... [Press F4 to skip]' - _mSetStr detectIdeSecSL, tmp_Counter : DZ ' Detecting IDE Secondary Slave ... [Press F4 to skip]' + _mSetStr detectIdePrMA, tmp_Counter : DZ ' Detecting IDE Primary Master ... [Press F4 to skip]' + _mSetStr detectIdePrSL, tmp_Counter : DZ ' Detecting IDE Primary Slave ... [Press F4 to skip]' + _mSetStr detectIdeSecMA, tmp_Counter : DZ ' Detecting IDE Secondary Master ... [Press F4 to skip]' + _mSetStr detectIdeSecSL, tmp_Counter : DZ ' Detecting IDE Secondary Slave ... [Press F4 to skip]' _mSetStr ideUnknown, tmp_Counter : DZ 'Unknown ' _mSetStr ideNone, tmp_Counter : DZ 'None ' _mSetStr ideSkiped, tmp_Counter : DZ 'Skipped ' @@ -542,15 +542,15 @@ msgStrings: ; _mSetStr unknownSTR1, tmp_Counter : DZ "7" ; _mSetStr unknownSTR2, tmp_Counter : DZ "8" _mSetStr boardID, tmp_Counter : DZ 'Board ID : ' - _mSetStr bootFdd, tmp_Counter : DZ 'Boot from Diskette... ' -; _mSetStr bootHdd, tmp_Counter : DZ 'Boot from Hard disk... ' - _mSetStr bootHdd, tmp_Counter : DZ 'Boot from HDD at ' - _mSetStr bootCd, tmp_Counter : DZ 'Boot from CD-ROM at ' - _mSetStr bootRamDrv, tmp_Counter : DZ 'Boot from RAM disk... ' - _mSetStr bootRecovery, tmp_Counter : DZ 'Starting recovery...' + _mSetStr bootFdd, tmp_Counter : DZ 'Boot from Diskette' +; _mSetStr bootHdd, tmp_Counter : DZ 'Boot from Hard disk ' + _mSetStr bootHdd, tmp_Counter : DZ 'Boot from HDD ' + _mSetStr bootCd, tmp_Counter : DZ 'Boot from CD-ROM ' + _mSetStr bootRamDrv, tmp_Counter : DZ 'Boot from RAM disk' + _mSetStr bootRecovery, tmp_Counter : DZ 'Starting recovery' _mSetStr bootAltDrv, tmp_Counter : DZ 'Alternative ' - _mSetStr bootFail, tmp_Counter : DZ 'fail' ; !FIXIT strFail - _mSetStr bootOk, tmp_Counter : DZ 'OK' + _mSetStr bootFail, tmp_Counter : DZ ' fail' ; !FIXIT strFail + _mSetStr bootOk, tmp_Counter : DZ ' OK' _mSetStr afterBootFail, tmp_Counter : DZ 'PRESS TO REBOOT, TO ENTER SETUP OR TO ZX-MODE . . .' ; _mSetStr parLang, tmp_Counter : DZ 'Language (Язык) : ' @@ -594,12 +594,12 @@ msgStrings: ; _mSetStr val1440, tmp_Counter : DZ '1.44M ' _mSetStr valDash6, tmp_Counter : DZ '------' _mSetStr parFddSecond, tmp_Counter : DZ 'FDD Second : ' - _mSetStr parPriIdeMA, tmp_Counter : DZ 'Primary IDE Master : ' + _mSetStr parPriIdeMA, tmp_Counter : DZ 'Primary IDE Master',#FF,' : ' _mSetStr valSetup, tmp_Counter : DZ 'Setup ' _mSetStr valCdRom, tmp_Counter : DZ 'CD-ROM' - _mSetStr parPriIdeSl, tmp_Counter : DZ 'Primary IDE Slave : ' - _mSetStr parSecIdeMA, tmp_Counter : DZ 'Secondary IDE Master : ' - _mSetStr parSecIdeSl, tmp_Counter : DZ 'Secondary IDE Slave : ' + _mSetStr parPriIdeSl, tmp_Counter : DZ 'Primary IDE Slave',#FF,' : ' + _mSetStr parSecIdeMA, tmp_Counter : DZ 'Secondary IDE Master',#FF,' : ' + _mSetStr parSecIdeSl, tmp_Counter : DZ 'Secondary IDE Slave',#FF,' : ' IF HDDwriteProtect _mSetStr parHddWrPr, tmp_Counter : DZ 'HDD Write protect : ' ENDIF @@ -675,10 +675,10 @@ msgRusStrings: _mSetStrRus forAltBootButton, tmp_Counter : DZ ' для Альтернативной загрузки' _mSetStrRus cmosChecksumErr, tmp_Counter : DZ 'ВНИМАНИЕ! ОШИБКА КОНТРОЛЬНОЙ СУММЫ CMOS, УСТАНОВЛЕНЫ ЗНАЧЕНИЯ ПО УМОЛЧАНИЮ' _mSetStrRus cmosDateTimeErr, tmp_Counter : DZ 'ВНИМАНИЕ! ОШИБКА ДАТЫ/ВРЕМЕНИ CMOS, УСТАНОВЛЕНЫ ЗНАЧЕНИЯ ПО УМОЛЧАНИЮ' - _mSetStrRus detectIdePrMA, tmp_Counter : DZ 'Определяем Первичный IDE Master ... [F4 для пропуска] ' - _mSetStrRus detectIdePrSL, tmp_Counter : DZ 'Определяем Первичный IDE Slave ... [F4 для пропуска] ' - _mSetStrRus detectIdeSecMA, tmp_Counter : DZ 'Определяем Вторичный IDE Master ... [F4 для пропуска] ' - _mSetStrRus detectIdeSecSL, tmp_Counter : DZ 'Определяем Вторичный IDE Slave ... [F4 для пропуска] ' + _mSetStrRus detectIdePrMA, tmp_Counter : DZ ' Определяем Первичный IDE Master ... [F4 для пропуска] ' + _mSetStrRus detectIdePrSL, tmp_Counter : DZ ' Определяем Первичный IDE Slave ... [F4 для пропуска]' + _mSetStrRus detectIdeSecMA, tmp_Counter : DZ ' Определяем Вторичный IDE Master ... [F4 для пропуска]' + _mSetStrRus detectIdeSecSL, tmp_Counter : DZ ' Определяем Вторичный IDE Slave ... [F4 для пропуска]' _mSetStrRus ideUnknown, tmp_Counter : DZ 'Неизвестный ' _mSetStrRus ideNone, tmp_Counter : DZ 'Нет ' _mSetStrRus ideSkiped, tmp_Counter : DZ 'Пропущен ' @@ -691,14 +691,14 @@ msgRusStrings: ; _mSetStrRus unknownSTR1, tmp_Counter : DZ '7" ; _mSetStrRus unknownSTR2, tmp_Counter : DZ '8" _mSetStrRus boardID, tmp_Counter : DZ 'ID платы : ' - _mSetStrRus bootFdd, tmp_Counter : DZ 'Запуск с дискеты... ' - _mSetStrRus bootHdd, tmp_Counter : DZ 'Запуск с HDD на ' - _mSetStrRus bootCd, tmp_Counter : DZ 'Запуск с CD-ROM на ' - _mSetStrRus bootRamDrv, tmp_Counter : DZ 'Запуск с RAM диска... ' - _mSetStrRus bootRecovery, tmp_Counter : DZ 'Запуск восстановления... ' + _mSetStrRus bootFdd, tmp_Counter : DZ 'Запуск с дискеты' + _mSetStrRus bootHdd, tmp_Counter : DZ 'Запуск с HDD ' + _mSetStrRus bootCd, tmp_Counter : DZ 'Запуск с CD-ROM ' + _mSetStrRus bootRamDrv, tmp_Counter : DZ 'Запуск с RAM диска' + _mSetStrRus bootRecovery, tmp_Counter : DZ 'Запуск восстановления' _mSetStrRus bootAltDrv, tmp_Counter : DZ 'Альтернативный ' - _mSetStrRus bootFail, tmp_Counter : DZ 'невозможен' - _mSetStrRus bootOk, tmp_Counter : DZ 'OK' + _mSetStrRus bootFail, tmp_Counter : DZ ' невозможен' + _mSetStrRus bootOk, tmp_Counter : DZ ' OK' _mSetStrRus afterBootFail, tmp_Counter : DZ 'НАЖМИТЕ ДЛЯ ПЕРЕЗАГРУЗКИ, ДЛЯ НАСТРОЕК ИЛИ ДЛЯ ZX-MODE . . .' ; _mSetStrRus parLang, tmp_Counter : DZ 'Язык (Language) : ' @@ -742,12 +742,12 @@ msgRusStrings: ; _mSetStrRus val1440, tmp_Counter : DZ '1.44M ' _mSetStrRus valDash6, tmp_Counter : DZ '------' _mSetStrRus parFddSecond, tmp_Counter : DZ 'FDD второй : ' - _mSetStrRus parPriIdeMA, tmp_Counter : DZ 'Primary IDE Master : ' + _mSetStrRus parPriIdeMA, tmp_Counter : DZ 'Primary IDE Master',#FF,' : ' _mSetStrRus valSetup, tmp_Counter : DZ 'Setup ' _mSetStrRus valCdRom, tmp_Counter : DZ 'CD-ROM' - _mSetStrRus parPriIdeSl, tmp_Counter : DZ 'Primary IDE Slave : ' - _mSetStrRus parSecIdeMA, tmp_Counter : DZ 'Secondary IDE Master : ' - _mSetStrRus parSecIdeSl, tmp_Counter : DZ 'Secondary IDE Slave : ' + _mSetStrRus parPriIdeSl, tmp_Counter : DZ 'Primary IDE Slave',#FF,' : ' + _mSetStrRus parSecIdeMA, tmp_Counter : DZ 'Secondary IDE Master',#FF,' : ' + _mSetStrRus parSecIdeSl, tmp_Counter : DZ 'Secondary IDE Slave',#FF,' : ' IF HDDwriteProtect _mSetStrRus parHddWrPr, tmp_Counter : DZ 'Защита записи на HDD : ' ENDIF