Pomoc w poprawie skryptu batch MS-DOS 6.22

Forum obejmujące tematy systemów operacyjnych oraz wszelakiego, ciekawego oprogramowania.
Orion90
Posty: 57
Rejestracja: 16 kwie 2022, 21:10

Pomoc w poprawie skryptu batch MS-DOS 6.22

Post autor: Orion90 » 14 sie 2023, 16:52

Cześć

Niedawno postanowiłem napisać sobie skrypt batch wraz z menu na podstawie kilku źródeł, lecz z uporządkowanymi sekcjami, podobnie jak we FreeDos ale coś nie pykło. Wydaje mi się, że albo popełniam gdzieś drobne błędy albo nie może być to uporządkowane. Dodatkowo chciałbym, aby po zainicjowaniu Keybrd4.sys od razu wyświetlały się polskie znaki podczas dalszego uruchamiania.

Zidentyfikowane problemy w opcji Pamięć Konwencjonalna to mniej więcej:
CTSB16.sys /Unit - Missing Unit parameter
VIDE-CCD.SYS - Error in line 14 config.sys
DI1000DD.SYS - ASPI Manager not installed
net initialize - IFSHLP.SYS driver is not installed
nwlink - Protocol manager could not be opened. NWLINK load failure.
netstart - bad command or file name
MSCDEX.EXE /D:MSCD001 - File Not Found
GOTO END - Label not found

Skrypt dla Autoexec.bat

Kod: Zaznacz cały

@ECHO OFF
PROMPT=$p$g
SET PATH=C:\DOS;C:\NC
SET TMP=D:\TEMP
SET TEMP=D:\TEMP

:CMC
ECHO Inicjacja buforowania dysku...
C:\DOS\SMARTDRV.EXE /X
ECHO Inicjacja zakończona.
ECHO.

ECHO Inicjacja sterownika ekranu...
MODE CON CODEPAGE PREPARE=((852), C:\DOS\EGA.CPI)
MODE CON CODEPAGE SELECT=852
KEYB PL,,C:\DOS\KEYBRD4.SYS
ECHO Inicjacja zakończona.
ECHO.

ECHO Inicjacja sterownika myszy...
LH C:\DRIVERS\MOUSE\MOUSE.EXE
ECHO Inicjacja zakończona.
ECHO.

ECHO Inicjacja sterownika sieci...
C:\DRIVERS\NET\net initialize
C:\DRIVERS\NET\nwlink
C:\DRIVERS\NET\netstart
ECHO Inicjacja zakończona.
ECHO.

ECHO Inicjacja sterownika dźwięku...
SET BLASTER=A220 I5 D1 H5 P330 T6
SET SOUND=C:\DRIVERS\SB16
SET MIDI=SYNTH:1 MAP:E
C:\DRIVERS\SB16\DIAGNOSE /S
C:\DRIVERS\SB16\MIXERSET /P /Q
ECHO Inicjacja zakończona.
ECHO.

ECHO Inicjacja sterowników CD-ROM
LH C:\DRIVERS\MSCDEX.EXE /D:MSCD001
ECHO Inicjacja zakończona.
ECHO.

ECHO Moduły korzystające z pamięci:
MEM.EXE
ECHO.

ECHO Witamy w systemie operacyjnym MS-DOS 6.22.
ECHO Wprowadź polecenie NC, aby uruchomić nakładkę Norton Commander.

:EMS
ECHO Inicjacja buforowania dysku...
C:\DOS\SMARTDRV.EXE /X
ECHO Inicjacja zakończona.
ECHO.

ECHO Inicjacja sterownika ekranu...
MODE CON CODEPAGE PREPARE=((852), C:\DOS\EGA.CPI)
MODE CON CODEPAGE SELECT=852
KEYB PL,,C:\DOS\KEYBRD4.SYS
ECHO Inicjacja zakończona.
ECHO.

ECHO Inicjacja sterownika myszy...
LH C:\DRIVERS\MOUSE\MOUSE.EXE
ECHO Inicjacja zakończona.
ECHO.

ECHO Inicjacja sterownika sieci...
C:\DRIVERS\NET\net initialize
C:\DRIVERS\NET\nwlink
C:\DRIVERS\NET\netstart
ECHO Inicjacja zakończona.
ECHO.

ECHO Inicjacja sterownika dźwięku...
SET BLASTER=A220 I5 D1 H5 P330 T6
SET SOUND=C:\DRIVERS\SB16
SET MIDI=SYNTH:1 MAP:E
C:\DRIVERS\SB16\DIAGNOSE /S
C:\DRIVERS\SB16\MIXERSET /P /Q
ECHO Inicjacja zakończona.
ECHO.

ECHO Inicjacja sterowników CD-ROM
LH C:\DRIVERS\MSCDEX.EXE /D:MSCD001
ECHO Inicjacja zakończona.
ECHO.

ECHO Moduły korzystające z pamięci:
MEM.EXE
ECHO.

ECHO Witamy w systemie operacyjnym MS-DOS 6.22.
ECHO Wprowadź polecenie NC, aby uruchomić nakładkę Norton Commander.

GOTO END

:XMS
ECHO Inicjacja buforowania dysku...
C:\DOS\SMARTDRV.EXE /X
ECHO Inicjacja zakończona.
ECHO.

ECHO Inicjacja sterownika ekranu...
MODE CON CODEPAGE PREPARE=((852), C:\DOS\EGA.CPI)
MODE CON CODEPAGE SELECT=852
KEYB PL,,C:\DOS\KEYBRD4.SYS
ECHO Inicjacja zakończona.
ECHO.

ECHO Inicjacja sterownika myszy...
LH C:\DRIVERS\MOUSE\MOUSE.EXE
ECHO Inicjacja zakończona.
ECHO.

ECHO Inicjacja sterownika sieci...
C:\DRIVERS\NET\net initialize
C:\DRIVERS\NET\nwlink
C:\DRIVERS\NET\netstart
ECHO Inicjacja zakończona.
ECHO.

ECHO Inicjacja sterownika dźwięku...
SET BLASTER=A220 I5 D1 H5 P330 T6
SET SOUND=C:\DRIVERS\SB16
SET MIDI=SYNTH:1 MAP:E
C:\DRIVERS\SB16\DIAGNOSE /S
C:\DRIVERS\SB16\MIXERSET /P /Q
ECHO Inicjacja zakończona.
ECHO.

ECHO Inicjacja sterowników CD-ROM
LH C:\DRIVERS\MSCDEX.EXE /D:MSCD001
ECHO Inicjacja zakończona.
ECHO.

ECHO Moduły korzystające z pamięci:
MEM.EXE
ECHO.

ECHO Witamy w systemie operacyjnym MS-DOS 6.22.
ECHO Wprowadź polecenie NC, aby uruchomić nakładkę Norton Commander.

GOTO END
END
Skrypt dla Config.sys

Kod: Zaznacz cały

[MENU]
MENUITEM=CMS, Uruchom komputer z obsluga pamieci konwencjonalnej.
MENUITEM=EMS, Uruchom komputer z obsluga pamieci EMS.
MENUITEM=XMS, Uruchom komputer z obsluga pamieci XMS.
MENUDEFAULT=CMC,30
MENUCOLOR=7.0

[CMS]
DEVICE=C:\DOS\SETVER.EXE
DEVICE=C:\DOS\POWER.EXE ADV:MAX
DEVICE=C:\DOS\HIMEM.SYS /TESMEM:OFF
DEVICE=C:\DRIVERS\SB16\DRV\CTSB16.SYS /Unit:0 /BLASTER=A:220 I:5 D:1 H:5
DEVICE=C:\DRIVERS\MSCDEX\GSCDROM.SYS /D:MSCD001
DEVICE=C:\DOS\VIDE-CCD.SYS /D:IDE
DEVICE=C:\DRIVERS\USB\USBASPI.SYS /W /V
DEVICE=C:\DRIVERS\USB\DI1000DD.SYS

[EMS]
DEVICE=C:\DOS\SETVER.EXE
DEVICE=C:\DOS\POWER.EXE ADV:MAX

DEVICE=C:\DOS\HIMEM.SYS
DEVICE=C:\DOS\EMM386.EXE RAM
DEVICE=C:\DRIVERS\SB16\DRV\CTSB16.SYS /Unit:0 BLASTER=A:220
DEVICEHIGH=C:\DRIVERS\MSCDEX\GSCDROM.SYS /D:MSCD001
DEVICEHIGH=C:\DOS\VIDE-CCD.SYS /D:IDE
DEVICE=C:\DRIVERS\USB\USBASPI.SYS /W /V
DEVICE=C:\DRIVERS\USB\DI1000DD.SYS
DEVICEHIGH=C:\DOS\DRVSPACE.SYS /MOVE

[XMS]
DEVICE=C:\DOS\SETVER.EXE
DEVICE=C:\DOS\POWER.EXE ADV:MAX
DEVICE=C:\DOS\HIMEM.SYS
DEVICE=C:\DOS\EMM386.EXE NOEMS
DEVICE=C:\DRIVERS\SB16\DRV\CTSB16.SYS /Unit:0 BLASTER=A:220
DEVICEHIGH=C:\DRIVERS\MSCDEX\GSCDROM.SYS /D:MSCD001
DEVICEHIGH=C:\DOS\VIDE-CCD.SYS /D:IDE
DEVICE=C:\DRIVERS\USB\USBASPI.SYS /W /V
DEVICE=C:\DRIVERS\USB\DI1000DD.SYS
DEVICEHIGH=C:\DOS\DRVSPACE.SYS /MOVE

[COMMON]
DOS=HIGH, UMB
DEVICE=C:\DOS\DISPLAY.SYS CON=(EGA,,1)
COUNTRY=040,852,C:\DOS\COUNTRY.SYS
FILES=40
BUFFERS=40
LASTDRIVE=Z

Awatar użytkownika
Stasieusz
Posty: 252
Rejestracja: 24 maja 2023, 22:18
Lokalizacja: Gmina Choroszcz
Kontakt:

Re: Pomoc w poprawie skryptu batch MS-DOS 6.22

Post autor: Stasieusz » 31 sie 2023, 22:52

Ostatnio robiłem coś w rodzaju systemu operacyjnego, ale jest to program i napisałem to coś w batchu. Ma to system logowania, pulpit i notatnik. Jutro wstawię kod. Może się przyda ;).

A o to wspomniany kod:

Kod: Zaznacz cały

@echo off
color 0F
title BatDOS
:logowanie
cls
echo Wpisz nazwe:
set /p nazwa=
cls
goto pulpit
:pulpit
cls
echo Zalogowany user: %nazwa%
echo Dzis jest %date%
echo Aktualna godzina: %time% 
echo.
echo (1) Notatnik
echo.
set /p "cho=Wpisz numer programu:"
if %cho%==1 goto not
:not
cls
echo Wpisz tekst.
set /p p=
cls
echo Nadaj nazwe pliku
set /p 1=
cls
echo %p% > %1%.txt
cls
goto pulpit
Obrazek
Obrazek

ODPOWIEDZ