add hd_load to russian livecd
git-svn-id: svn://kolibrios.org@2783 a494cfbc-eb01-0410-851d-a64ba20cac60
BIN
data/common/HD_load/9x2klbr/LDKLBR.VXD
Normal file
BIN
data/common/HD_load/memdisk
Normal file
BIN
data/common/games/fara
Normal file
BIN
data/common/games/fara.gfx
Normal file
2183
data/common/games/fceu/ChangeLog.txt
Normal file
152
data/common/games/fceu/FCEU ReadMe.txt
Normal file
@ -0,0 +1,152 @@
|
|||||||
|
|
||||||
|
*******************************RUSSIAN****************************************
|
||||||
|
|
||||||
|
==Î ïðîãðàììå FCEU==
|
||||||
|
FCE Ultra - îäèí èç ëó÷øèõ ýìóëÿòîðîâ NES íà Linux, DOS, Windows,
|
||||||
|
BeOS, Mac OS X, à òåïåðü è íà Kolibri è Menuet!
|
||||||
|
|
||||||
|
Ñàéò: http://fceultra.sourceforge.net
|
||||||
|
|
||||||
|
Ïîääåðæèâàåìûå ìàïïåðû: 0-11, 13, 15-19, 21-26, 32-34, 40-49, 51, 52, 57, 61, 64-80,
|
||||||
|
82, 83, 85-90, 92-97, 99, 105, 107, 112-119, 140, 144,
|
||||||
|
151-156, 180, 182, 184, 189, 225-229, 232, 234, 235, 240,
|
||||||
|
242, 246, 248-250
|
||||||
|
|
||||||
|
Ïîñëå çàïóñêà ïðîãðàììû íóæíî ïðîïèñàòü ïîëíûé ïóòü ê íóæíîìó ôàéëó NES
|
||||||
|
è íàæàòü Enter (ïóòü îòîáðàæàåòñÿ â âåðõíåé ÷àñòè îêíà).
|
||||||
|
|
||||||
|
Âåðñèÿ ýìóëÿòîðà: 0.96
|
||||||
|
Âåðñèÿ ïîðòà: 0.3
|
||||||
|
|
||||||
|
==Ïîðòåð==
|
||||||
|
Asper
|
||||||
|
Ïèñàòü ñþäà: asper.85@mail.ru
|
||||||
|
|
||||||
|
Îñíîâíûå êëàâèøè:
|
||||||
|
|
||||||
|
Äëÿ ýìóëèðóåìîãî óñòðîéñòâà Family BASIC Keyboard:
|
||||||
|
Âêëþ÷èòü/Âûêëþ÷èòü Ââîä Êëàâèàòóðû Scroll Lock
|
||||||
|
(âêëþ÷åíèå ââîäà ñ ýìóëèðóåìîé êëàâèàòóðû îòêëþ÷àåò
|
||||||
|
êîììàíäíûå êëàâèøè)
|
||||||
|
Âñå ýìóëèðóåìûå êëàâèøè îòîáðàæàþòñÿ íà áëèæàéøóþ äîñòóïíóþ êëàâèøó
|
||||||
|
íà êëàâèàòóðå ÏÊ çà íåáîëüøèìè èñêëþ÷åíèÿìè. Ýìóëèðóåìàÿ êëàâèøà "@"
|
||||||
|
îòîáðàæàåòñÿ íà êëàâèøó "`"(grave), è ýìóëèðóåìàÿ êëàâèøà "kana"
|
||||||
|
îòîáðàæàåòñÿ íà êëàâèøó "Insert" (â áëîêå êëàâèø ðàçìåðà 3x2 íàä
|
||||||
|
êóðñîðíûìè êëàâèøàìè).
|
||||||
|
|
||||||
|
Äëÿ ýìóëèðóåìûõ óñòðîéñòâ game pads:
|
||||||
|
A Turbo B
|
||||||
|
S Turbo A
|
||||||
|
Left Control or Z or Space B
|
||||||
|
Left Alt or X A
|
||||||
|
Enter/Return Ñòàðò
|
||||||
|
Tab or BackSpace Ñåëåêò
|
||||||
|
Cursor Down Âíèç
|
||||||
|
Cursor Up Ââåðõ
|
||||||
|
Cursor Left Âëåâî
|
||||||
|
Cursor Right Âïðàâî
|
||||||
|
|
||||||
|
Äëÿ ýìóëèðóåìûõ óñòðîéñòâ power pads(êëàâèøè ñîîòâåòñòâóþò ðàñïîëîæåíèþ
|
||||||
|
êíîïîê íà ñòîðîíå "B"):
|
||||||
|
O P [ ]
|
||||||
|
K L ; '
|
||||||
|
M , . /
|
||||||
|
|
||||||
|
Äëÿ FDS èãð:
|
||||||
|
F6 Âûáðàòü äèñê/ñòîðîíó äèñêà.
|
||||||
|
F8 Èçâëå÷ü/Âñòàâèòü äèñê.
|
||||||
|
|
||||||
|
Äëÿ VS Unisystem èãð:
|
||||||
|
F8 Âñòàâèòü ìîíåòó.
|
||||||
|
F6 Îòîáðàçèòü/Ñêðûòü dip ïåðåêëþ÷àòåëè.
|
||||||
|
1-8 Ïåðåêëþ÷èòü dip ïåðåêëþ÷àòåëè (êîãäà dip
|
||||||
|
ïåðåêëþ÷àòåëè îòîáàæàþòñÿ).
|
||||||
|
|
||||||
|
0-9 Âûáðàòü ñëîò ñîõðàíåíèÿ.
|
||||||
|
Caps Lock Âûáðàòü âèðòóàëüíûé äæîéñòèê.
|
||||||
|
|
||||||
|
F2 Ìàññøòàáèðîâàòü îêíî.
|
||||||
|
F3 Îòêðûòü ôàéë.
|
||||||
|
F5/F7 Ñîõðàíèòü/Çàãðóçèòü ñîõðàíåíèå.
|
||||||
|
F9 Ñîõðàíèòü ñíèìîê ýêðàíà.
|
||||||
|
F10 Ïåðåçàãðóçêà.
|
||||||
|
F11 Âûêëþ÷èòü/Âêëþ÷èòü.
|
||||||
|
ESC/F12 Âûõîä.
|
||||||
|
|
||||||
|
|
||||||
|
*******************************ENGLISH****************************************
|
||||||
|
|
||||||
|
|
||||||
|
==About program FCEU==
|
||||||
|
FCE Ultra - is is one of the best emulators of NES on Linux, DOS, Windows,
|
||||||
|
BeOS, Mac OS X, and now on Kolibri and Menuet!
|
||||||
|
|
||||||
|
Website: http://fceultra.sourceforge.net
|
||||||
|
|
||||||
|
Supported mappers: 0-11, 13, 15-19, 21-26, 32-34, 40-49, 51, 52, 57, 61, 64-80,
|
||||||
|
82, 83, 85-90, 92-97, 99, 105, 107, 112-119, 140, 144,
|
||||||
|
151-156, 180, 182, 184, 189, 225-229, 232, 234, 235, 240,
|
||||||
|
242, 246, 248-250
|
||||||
|
|
||||||
|
After program executing you have to input full path to the NES file that you want
|
||||||
|
to be executed and press Enter (the path echo on the upper part of the window).
|
||||||
|
|
||||||
|
Emulator version number: 0.96
|
||||||
|
Port version 0.3
|
||||||
|
|
||||||
|
==Porter==
|
||||||
|
Asper
|
||||||
|
mailto: asper.85@mail.ru
|
||||||
|
|
||||||
|
|
||||||
|
Main keys:
|
||||||
|
|
||||||
|
For emulated Family BASIC Keyboard:
|
||||||
|
Enable/Disable Keyboard Input Scroll Lock
|
||||||
|
(enabling emulated keyboard input will disable
|
||||||
|
commands keys)
|
||||||
|
All emulated keys are mapped to the closest open key on the PC
|
||||||
|
keyboard, with a few exceptions. The emulated "@" key is
|
||||||
|
mapped to the "`"(grave) key, and the emulated "kana" key
|
||||||
|
is mapped to the "Insert" key(in the 3x2 key block above the
|
||||||
|
cursor keys).
|
||||||
|
|
||||||
|
For emulated game pads:
|
||||||
|
A Turbo B
|
||||||
|
S Turbo A
|
||||||
|
Left Control or Z or Space B
|
||||||
|
Left Alt or X A
|
||||||
|
Enter/Return Start
|
||||||
|
Tab or BackSpace Select
|
||||||
|
Cursor Down Down
|
||||||
|
Cursor Up Up
|
||||||
|
Cursor Left Left
|
||||||
|
Cursor Right Right
|
||||||
|
|
||||||
|
For emulated power pads(keys correspond to button locations on
|
||||||
|
side "B"):
|
||||||
|
O P [ ]
|
||||||
|
K L ; '
|
||||||
|
M , . /
|
||||||
|
|
||||||
|
For FDS games:
|
||||||
|
F6 Select disk/disk side.
|
||||||
|
F8 Eject/Insert disk.
|
||||||
|
|
||||||
|
For VS Unisystem games:
|
||||||
|
F8 Insert coin.
|
||||||
|
F6 Show/Hide dip switches.
|
||||||
|
1-8 Toggle dip switches(when dip switches
|
||||||
|
are shown).
|
||||||
|
|
||||||
|
0-9 Select save state.
|
||||||
|
Caps Lock Select virtual joystick.
|
||||||
|
|
||||||
|
F2 Scale window.
|
||||||
|
F3 Open file.
|
||||||
|
F5/F7 Save/Load state.
|
||||||
|
F9 Save screen snapshot.
|
||||||
|
F10 Reset.
|
||||||
|
F11 Power off/on.
|
||||||
|
ESC/F12 Exit.
|
||||||
|
|
33
data/common/games/fceu/History.txt
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
01.09.08 == Port v0.1 == Emulator v0.42
|
||||||
|
- çàãðóçêà NES ôàéëîâ | - load NES files
|
||||||
|
- èñïîëíåíèå NES ôàéëîâ | - execute NES files
|
||||||
|
- ìàññøòàáèðîâàíèå ðàçìåðà îêíà | - scale window size
|
||||||
|
- ðàáîòàåò â ÎÑ Kolibri è Menuet | - work in OS Kolibri and Menuet
|
||||||
|
|
||||||
|
|
||||||
|
24.10.08 == Port v0.2 == Emulator v0.42
|
||||||
|
- ðàáîòà ñ ñèñ. ôóíêöèåé 70 | - working with sys. function 70
|
||||||
|
- ñîçäàíèå ñîõðàíåíèé | - make saves
|
||||||
|
- çàãðóçêà ñîõðàíåíèé | - load saves
|
||||||
|
- ñîçäàíèå ñêðèíøîòîâ | - make screenshots
|
||||||
|
- äîáàâëåíû êëàâèøè Òóðáî A è Òóðáî B | - Turbo A and Turbo B keys were added
|
||||||
|
- ðàáîòàåò òîëüêî â ÎÑ Kolibri èç-çà | - work in OS Kolibri only because of
|
||||||
|
èñïîëüçîâàíèÿ ñèñ. ôóíêöèè 70 | using sys. function 70
|
||||||
|
|
||||||
|
09.07.09 == Port v0.3 == Emulator v0.96
|
||||||
|
- äîáàâëåíî 33 íîâûõ ìàïïåðà | - 33 new mappers were add
|
||||||
|
( 48, 51, 52, 57, 61, 72, 74, 77, 82, 83, 88, 92, 96, 114, 115-117, 140,
|
||||||
|
144, 152-156, 189, 227, 232, 234, 235, 242, 248-250 )
|
||||||
|
|
||||||
|
- äîáàâëåíû íîâûå ýìóëèðóåìûå | - new emulated devices were add
|
||||||
|
óñòðîéñòâà |
|
||||||
|
( power pads, game pads, zapper, arkanoid, shadow, Family BASIC Keyboard )
|
||||||
|
|
||||||
|
- âûáîð âèðòóàëüíîãî äæîéñòèêà | - select virtual joysticks
|
||||||
|
- óñêîðåííûé âûâîä ãðàôèêè | - faster graphics output
|
||||||
|
- âûâîä fps | - fps output
|
||||||
|
- ñîîáùåíèÿ òåïåðü âûâîäÿòñÿ íà äîñêó | - messages now output to the debug board
|
||||||
|
îòëàäêè |
|
||||||
|
- ñì. ôàéë "ChangeLog.txt" ÷òîáû | - see file "ChangeLog.txt" for full list of changes
|
||||||
|
ïðîñìîòðåòü âåñü ñïèñîê èçìåíåíèé |
|
||||||
|
|
BIN
data/common/games/fceu/fce
Normal file
BIN
data/common/games/lrl
Normal file
BIN
data/common/games/lrl.hsr
Normal file
BIN
data/common/games/lrl.lev
Normal file
BIN
data/common/games/pig/evil.png
Normal file
After Width: | Height: | Size: 54 KiB |
BIN
data/common/games/pig/font.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
data/common/games/pig/glasfont.png
Normal file
After Width: | Height: | Size: 148 KiB |
BIN
data/common/games/pig/icons.png
Normal file
After Width: | Height: | Size: 110 KiB |
BIN
data/common/games/pig/lifepig.png
Normal file
After Width: | Height: | Size: 6.0 KiB |
BIN
data/common/games/pig/pig
Normal file
BIN
data/common/games/pig/pigframe.png
Normal file
After Width: | Height: | Size: 52 KiB |
BIN
data/common/games/pig/slime.png
Normal file
After Width: | Height: | Size: 66 KiB |
BIN
data/common/games/pig/stars.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
data/common/games/pig/tiles.png
Normal file
After Width: | Height: | Size: 42 KiB |
BIN
data/common/games/soko/lev/100boxes.lev
Normal file
BIN
data/common/games/soko/lev/990602.lev
Normal file
BIN
data/common/games/soko/lev/aenigma.lev
Normal file
BIN
data/common/games/soko/lev/albg-bst.lev
Normal file
BIN
data/common/games/soko/lev/albg1-1.lev
Normal file
BIN
data/common/games/soko/lev/albg1-2.lev
Normal file
BIN
data/common/games/soko/lev/albg1-3.lev
Normal file
BIN
data/common/games/soko/lev/autogen.lev
Normal file
BIN
data/common/games/soko/lev/bagle.lev
Normal file
BIN
data/common/games/soko/lev/bagle2.lev
Normal file
BIN
data/common/games/soko/lev/boxxle1.lev
Normal file
BIN
data/common/games/soko/lev/boxxle2.lev
Normal file
BIN
data/common/games/soko/lev/cantrip.lev
Normal file
BIN
data/common/games/soko/lev/cantrip2.lev
Normal file
BIN
data/common/games/soko/lev/dh1.lev
Normal file
BIN
data/common/games/soko/lev/dh2.lev
Normal file
BIN
data/common/games/soko/lev/dim-york.lev
Normal file
BIN
data/common/games/soko/lev/erim.lev
Normal file
BIN
data/common/games/soko/lev/fpok.lev
Normal file
BIN
data/common/games/soko/lev/grig2001.lev
Normal file
BIN
data/common/games/soko/lev/grig2002.lev
Normal file
BIN
data/common/games/soko/lev/handmade.lev
Normal file
BIN
data/common/games/soko/lev/heytak.lev
Normal file
BIN
data/common/games/soko/lev/howard1.lev
Normal file
BIN
data/common/games/soko/lev/howard2.lev
Normal file
BIN
data/common/games/soko/lev/howard3.lev
Normal file
BIN
data/common/games/soko/lev/howard4.lev
Normal file
BIN
data/common/games/soko/lev/jcd.lev
Normal file
BIN
data/common/games/soko/lev/jct.lev
Normal file
BIN
data/common/games/soko/lev/kokoban.lev
Normal file
BIN
data/common/games/soko/lev/kompact.lev
Normal file
BIN
data/common/games/soko/lev/loma.lev
Normal file
BIN
data/common/games/soko/lev/maelstrm.lev
Normal file
BIN
data/common/games/soko/lev/mariob.lev
Normal file
BIN
data/common/games/soko/lev/masmicro.lev
Normal file
BIN
data/common/games/soko/lev/massasq.lev
Normal file
BIN
data/common/games/soko/lev/micrcosm.lev
Normal file
BIN
data/common/games/soko/lev/microban.lev
Normal file
BIN
data/common/games/soko/lev/minicosm.lev
Normal file
BIN
data/common/games/soko/lev/nabocosm.lev
Normal file
BIN
data/common/games/soko/lev/novoban.lev
Normal file
BIN
data/common/games/soko/lev/numbers.lev
Normal file
BIN
data/common/games/soko/lev/online.lev
Normal file
BIN
data/common/games/soko/lev/original.lev
Normal file
BIN
data/common/games/soko/lev/picocosm.lev
Normal file
BIN
data/common/games/soko/lev/sasq_.lev
Normal file
BIN
data/common/games/soko/lev/sasq_iii.lev
Normal file
BIN
data/common/games/soko/lev/sasq_iv.lev
Normal file
BIN
data/common/games/soko/lev/sasq_v.lev
Normal file
BIN
data/common/games/soko/lev/sasq_vi.lev
Normal file
BIN
data/common/games/soko/lev/simple.lev
Normal file
BIN
data/common/games/soko/lev/sokevo.lev
Normal file
BIN
data/common/games/soko/lev/sokhard.lev
Normal file
BIN
data/common/games/soko/lev/sokolate.lev
Normal file
BIN
data/common/games/soko/lev/soloban.lev
Normal file
BIN
data/common/games/soko/lev/stilmore.lev
Normal file
BIN
data/common/games/soko/lev/sven.lev
Normal file
BIN
data/common/games/soko/lev/takaken.lev
Normal file
BIN
data/common/games/soko/lev/titlscrn.lev
Normal file
BIN
data/common/games/soko/lev/twisty.lev
Normal file
180
data/common/games/soko/rules.txt
Normal file
@ -0,0 +1,180 @@
|
|||||||
|
SOKOBAN FOR MENUET v0.1 July 2, 2004
|
||||||
|
Written in pure assembler by Ivushkin Andrey aka Willow
|
||||||
|
Main idea, art & graphics
|
||||||
|
Sokofun for Windows 95 by Games 4 Brains
|
||||||
|
and Sokoban 2.3 by Björn Källmark
|
||||||
|
|
||||||
|
Level designers:
|
||||||
|
|
||||||
|
Alberto Garcia, Aymeric du Peloux, Brian Kent, David Holland,
|
||||||
|
David W Skinner, Erim Sever, Evgeniy Grigoriev, François Marques,
|
||||||
|
Frantisek Pokorny, Howard Abed,J franklin Mentzer, Jaques Duthen,
|
||||||
|
John C Davis, John Polhemus, Kobus Theron, Lee Haywood, Mario Bonenfant,
|
||||||
|
Martin P Holland, Mic (Jan Reineke), Phil Shapiro, Richard Weston,
|
||||||
|
Sven Egevad, Ken'ichiro Takahashi (takaken), Thinking Rabbit,
|
||||||
|
Yoshio Murase, ZICO (Zbigniew Kornas)
|
||||||
|
|
||||||
|
Special thanks to Hirohiko Nakamiya
|
||||||
|
|
||||||
|
More credits:
|
||||||
|
Masato Hiramatsu, Kazuo Fukushima, Klaus Clemens
|
||||||
|
|
||||||
|
Game uses its own format of levelset files *.LEV
|
||||||
|
with simple run-length compression
|
||||||
|
|
||||||
|
!!!!NB!!!!
|
||||||
|
It is strongly recommended that you place application files into C:\menuetos
|
||||||
|
directory. Otherwise you should change CUR_DIR (SOKO.ASM, line 30) to the
|
||||||
|
appropriate value!
|
||||||
|
|
||||||
|
Interface
|
||||||
|
|
||||||
|
When loaded, application opens skin file SKIN.RAW in the current directory.
|
||||||
|
It is an image 16x240 pt. Then so-named "standard" levels SOKO-?.LEV are
|
||||||
|
read in the same dir. ? means a number within 0 and 9.
|
||||||
|
You can navigate along the level list pressing PgUp and PgDn keys. User
|
||||||
|
selects the level desired by pressing keys 0-9. Space key moves focus to the
|
||||||
|
text field below, so you can enter filename there.
|
||||||
|
Additional levels are in program subfolder LEV. For example, you wish to load
|
||||||
|
a levelset file /HD/1/MENUETOS/LEV/AENIGMA.LEV. Then you should enter
|
||||||
|
lev/aenigma.lev
|
||||||
|
Within the textbox user can press Backspace. There's no cursor yet :-(
|
||||||
|
Pressing Enter in the text field is equvalent for button "Load file".
|
||||||
|
|
||||||
|
When in game, pressing Esc restarts the level, pressing Home returns back to
|
||||||
|
the levelset selection mode.
|
||||||
|
|
||||||
|
Game Rules
|
||||||
|
|
||||||
|
You have a little PUSHER. You will guide him using the cursor-keys.
|
||||||
|
|
||||||
|
SOKOBAN (same as SOKOBLUE or SOKOWAHN)
|
||||||
|
The pink pyramids have to be pushed onto the marked places.
|
||||||
|
The problem is: You can only push things, but not pull them.
|
||||||
|
A level is solved when every pyramid stands on a marked place.
|
||||||
|
|
||||||
|
SOKOLOR
|
||||||
|
Tiles of the same colour need to be pushed together.
|
||||||
|
|
||||||
|
SOKONEX
|
||||||
|
Push all CONNECTOR-TILES together!
|
||||||
|
|
||||||
|
Game-items of SOKONEX and their properties:
|
||||||
|
|
||||||
|
PLATE: undestructable, movable, covers holes
|
||||||
|
HOLE: you can push LASERS and BROKEN PLATES into them
|
||||||
|
BROKEN PLATE: destructable, movable
|
||||||
|
CONNECTOR: undestructable, movable
|
||||||
|
FIXED CONNECTOR: undestructable, not movable
|
||||||
|
LASER: destructable, movable
|
||||||
|
BEAM: eleminates LASERS and BROKEN PLATES, paralyses PUSHERS
|
||||||
|
|
||||||
|
The objective is always the same: You must push boxes the right way.
|
||||||
|
Sometimes tasks seem to be impossible.
|
||||||
|
But, be sure: There is always a solution!
|
||||||
|
|
||||||
|
To-Do list:
|
||||||
|
|
||||||
|
1. Better interface - I saw XTREE and understood that it's really possible to
|
||||||
|
write wonderful programs for MenuetOS easily.
|
||||||
|
2. More skins. And lesser file size...
|
||||||
|
3. Improve user interaction, I think.
|
||||||
|
4. Level Editor. Having a great wish you may compose levelsets by yourself and
|
||||||
|
compile them with FASM - see files CNF.ASM and CNF.
|
||||||
|
5. Correct bugs, make improvements from opinions of you, respective users of
|
||||||
|
this application ;-)
|
||||||
|
6. Include support for XTREE dialogs.
|
||||||
|
|
||||||
|
****************************************
|
||||||
|
****************************************
|
||||||
|
|
||||||
|
‘ŽŠŽ<EFBFBD>€<EFBFBD> „‹Ÿ MENUET v0.1 2 ¨î«ï 2004 £.
|
||||||
|
|
||||||
|
<20> ¯¨á ç¨á⮬ áᥬ¡«¥à¥ ˆ¢ãèª¨ë¬ €¤à¥¥¬ (Willow)
|
||||||
|
ƒ« ¢ ï ¨¤¥ï, à¨á㪨 ¨ £à 䨪
|
||||||
|
Sokofun for Windows 95 ®â Games 4 Brains
|
||||||
|
¨ Sokoban 2.3 ®â Björn Källmark
|
||||||
|
|
||||||
|
„¨§ ©¥àë ã஢¥©:
|
||||||
|
|
||||||
|
Alberto Garcia, Aymeric du Peloux, Brian Kent, David Holland,
|
||||||
|
David W Skinner, Erim Sever, Evgeniy Grigoriev, François Marques,
|
||||||
|
Frantisek Pokorny, Howard Abed,J franklin Mentzer, Jaques Duthen,
|
||||||
|
John C Davis, John Polhemus, Kobus Theron, Lee Haywood, Mario Bonenfant,
|
||||||
|
Martin P Holland, Mic (Jan Reineke), Phil Shapiro, Richard Weston,
|
||||||
|
Sven Egevad, Ken'ichiro Takahashi (takaken), Thinking Rabbit,
|
||||||
|
Yoshio Murase, ZICO (Zbigniew Kornas)
|
||||||
|
|
||||||
|
Žá®¡ ï ¡« £®¤ à®áâì Hirohiko Nakamiya
|
||||||
|
|
||||||
|
…é¥ ¡« £®¤ à®áâ¨:
|
||||||
|
Masato Hiramatsu, Kazuo Fukushima, Klaus Clemens
|
||||||
|
|
||||||
|
‚ ¨£à¥ ¨á¯®«ì§ã¥âáï á¯¥æ¨ «ìë© ä®à¬ â ä ©«®¢ ã஢¥© *.LEV
|
||||||
|
á âਢ¨ «ìë¬ á¦ â¨¥¬ ¨ä®à¬ 樨
|
||||||
|
|
||||||
|
!!!!NB!!!!
|
||||||
|
<EFBFBD> áâ®ïâ¥«ì® à¥ª®¬¥¤ã¥âáï ¯®¬¥áâ¨âì ä ©«ë ¯à®£à ¬¬ë ¢ ª â «®£ C:\menuetos.
|
||||||
|
‚ ¯à®â¨¢®¬ á«ãç ¥ ‚ ¬ ¯à¨¤¥âáï ¨§¬¥¨âì ª®áâ âã CUR_DIR ¢ ä ©«¥
|
||||||
|
SOKO.ASM áâப¥ 30 ᮮ⢥âá¢ãî騬 § 票¥¬!
|
||||||
|
|
||||||
|
ˆâ¥à䥩á
|
||||||
|
|
||||||
|
<EFBFBD>ਠ§ ¯ã᪥ ¯à®£à ¬¬ ®âªàë¢ ¥â ä ©« ᪨®¢ ¤«ï ¨£à®¢ëå ®¡ê¥ªâ®¢ SKIN.RAW
|
||||||
|
¢ ᮡá⢥®¬ ª â «®£¥. <20>â® ª à⨪ à §¬¥à®¬ 16å240 â®ç¥ª. ‡ ⥬ ¢ í⮬
|
||||||
|
¦¥ ª â «®£¥ ç¨â îâáï â ª §ë¢ ¥¬ë¥ "áâ ¤ àâë¥" ã஢¨ SOKO-?.LEV, £¤¥
|
||||||
|
? - ç¨á«® ®â 0 ¤® 9.
|
||||||
|
<EFBFBD>® ᯨáªã ã஢¥© ¬®¦® ¯¥à¥¤¢¨£ âìáï ª« ¢¨è ¬¨ PgUp ¨ PgDn. †¥« ¥¬ë© ã஢¥ì
|
||||||
|
¢ë¡¨à ¥âáï ¦ ⨥¬ ª« ¢¨è ®â 0 ¤® 9.
|
||||||
|
<EFBFBD> ¦ ⨥ ¯à®¡¥« ¯¥à¥®á¨â 䮪ãá ⥪á⮢®¥ ¯®«¥ ¢¢®¤ ¨¬¥¨ ä ©« ã஢ï.
|
||||||
|
„®¯®«¨â¥«ìë¥ ã஢¨ 室ïâáï ¢ ¯®¤ª â «®£¥ LEV ¯à®£à ¬¬ë. „®¯ãá⨬, ¢ë
|
||||||
|
å®â¨â¥ § £à㧨âì ä ©« ã஢¥© /HD/1/MENUETOS/LEV/AENIGMA.LEV. ’®£¤ á«¥¤ã¥â
|
||||||
|
¢¢¥á⨠áâபã lev/aenigma.lev
|
||||||
|
‚ ¯®«¥ ¤¥©áâ¢ã¥â ª« ¢¨è Backspace. Šãàá®à ¯®ª ¥ ॠ«¨§®¢ :-( <20> ¦ ⨥
|
||||||
|
Enter ¢ áâப¥ ¢¢®¤ íª¢¨¢ «¥â® ª®¯ª¥ '‡ £à㧨âì'.
|
||||||
|
|
||||||
|
‚ ०¨¬¥ ¨£àë ¦ ⨥ Esc ¯à®¨§¢®¤¨â à¥áâ àâ ã஢ï, ¦ ⨥ Home ¢ë¢®¤¨â
|
||||||
|
¨§ ¨£àë ®¡à â® ª ᯨáªã ã஢¥©.
|
||||||
|
|
||||||
|
<EFBFBD>à ¢¨« ¨£àë
|
||||||
|
|
||||||
|
‚ í⮩ ¨£à¥ ã ¢ á ¥áâì ’Ž‹Š€’…‹œ, ª®â®àë¬ ¬®¦® ã¯à ¢«ïâì ª« ¢¨è ¬¨ áâ५®ª.
|
||||||
|
|
||||||
|
‘ŽŠŽ<EFBFBD>€<EFBFBD> (¨ ç¥ ‘ŽŠŽ<C5A0>‹ž :-) ¨«¨ ‘ŽŠŽ‚€<E2809A>)
|
||||||
|
<20>®§®¢ë¥ ¯¨à ¬¨¤ª¨ 㦮 ¯¥à¥¤¢¨ãâì á¯¥æ¨ «ìë¥ ª«¥âª¨.
|
||||||
|
<20>஡«¥¬ ¢ ⮬, çâ® ¬®¦® ⮫쪮 ⮫ª âì ¯à¥¤¬¥âë, ® ¥ â é¨âì ¨å.
|
||||||
|
“஢¥ì à¥è¥, ª®£¤ ª ¦¤ ï ¯¨à ¬¨¤ª 室¨âáï ¬ થன ª«¥âª¥.
|
||||||
|
|
||||||
|
‘ŽŠŽ‹Ž<EFBFBD>
|
||||||
|
<20>«®ª¨ ®¤¨ ª®¢®£® 梥â 㦮 ¯®¤â®«ª âì ¤à㣠ª ¤àã£ã.
|
||||||
|
|
||||||
|
‘ŽŠŽ<EFBFBD>…Š‘
|
||||||
|
‚ᥠ¡«®ª¨-ª®¥ªâ®àë 㦮 ¯®¤â®«ª âì ¤à㣠ª ¤àã£ã.
|
||||||
|
|
||||||
|
Ž¡ê¥ªâë ¢ ¨£à¥ ‘ŽŠŽ<C5A0>…Š‘ ¨ ¨å ᢮©á⢠:
|
||||||
|
|
||||||
|
<20>‹ˆ’€: ¥ã¨ç⮦ ¥¬ ï, ¯®¤¢¨¦ ï, § ªàë¢ ¥â „›<E2809E>›
|
||||||
|
„›<E2809E>€: â㤠¬®¦® áâ «ª¨¢ âì ‹€‡…<E280A1>› ¨ <20>€‡<E282AC>ˆ’›… <20>‹ˆ’›
|
||||||
|
<20>€‡<E282AC>ˆ’€Ÿ <20>‹ˆ’€: ã¨ç⮦ ¥¬ ï, ¯®¤¢¨¦ ï
|
||||||
|
ŠŽ<C5A0><C5BD>…Š’Ž<E28099>: ¥ã¨ç⮦ ¥¬ë©, ¯®¤¢¨¦ë©
|
||||||
|
”ˆŠ‘-ŠŽ<C5A0><C5BD>…Š’Ž<E28099>: ¥ã¨ç⮦ ¥¬ë©, ¯®¤¢¨¦ë©
|
||||||
|
‹€‡…<E280A1>: ã¨ç⮦ ¥¬ë©, ¯®¤¢¨¦ë©
|
||||||
|
‹€‡…<E280A1><E280A6>›‰ ‹“—: ã¨ç⮦ ¥â ‹€‡…<E280A1>› ¨ <20>€‡<E282AC>ˆ’›… <20>‹ˆ’›, ¯ à «¨§ã¥â ’Ž‹Š€’…‹Ÿ (!)
|
||||||
|
|
||||||
|
–¥«ì ¨£àë ¢á¥£¤ ®¤¨ ª®¢ : ‚ë ¤®«¦ë ¯à ¢¨«ì® ¯¥à¥áâ ¢«ïâì ¡«®ª¨.
|
||||||
|
ˆ®£¤ § ¤ ¨¥ ª ¦¥âáï ¥¢ë¯®«¨¬ë¬.
|
||||||
|
<EFBFBD>® ¡ã¤ì⥠㢥à¥ë: ¢á¥£¤ ¥áâì à¥è¥¨¥!
|
||||||
|
|
||||||
|
—â® ¥é¥ ¬®¦® ᤥ« âì:
|
||||||
|
|
||||||
|
1. <20>®ªà á¨¢è¥ ¨â¥à䥩á - ¯®á«¥ XTREE ï ¯®ï«, çâ® ¤«ï Menuet ¬®¦®
|
||||||
|
®â®á¨â¥«ì® «¥£ª® ¯¨á âì ®ç¥ì ªà á¨¢ë¥ ¯à®£à ¬¬ë.
|
||||||
|
2. „®¯®«¨â¥«ìë¥ áª¨ë - ¤«ï £ãଠ®¢. ˆ ¬¥ìè¥ à §¬¥à ä ©«®¢ ᤥ« âì:
|
||||||
|
11 ª¡ ª ª-¨ª ª ¤®à®£¥ ¥ ¢ «ïîâáï
|
||||||
|
3. “«ãçè¨âì ã¯à ¢«¥¨¥ - ¬¥ â ª ª ¦¥âáï.
|
||||||
|
4. <20>¥¤ ªâ®à ã஢¥©. <20>ਠ®á®¡®¬ ¦¥« ¨¨ ä ©«ë ã஢¥© ¬®¦® ¯¨á âì ¢àãçãî ¨
|
||||||
|
ª®¬¯¨«¨à®¢ âì FASM'®¬ - á¬. ä ©«ë CNF.ASM ¨ CNF.
|
||||||
|
5. ˆá¯à ¢¨âì ¡ £¨, ¢¥á⨠ã«ãçè¥¨ï ¨ ãç¥áâì ¯®¦¥« ¨ï ‚ á, 㢠¦ ¥¬ëå
|
||||||
|
¯®«ì§®¢ ⥫¥© ¤ ®© ¯à®£à ¬¬ë ;-)
|
||||||
|
6. ‚ª«îç¨âì ¯®¤¤¥à¦ªã ¤¨ «®£®¢ ¨§ XTREE.
|
||||||
|
|
BIN
data/common/games/soko/skin.raw
Normal file
BIN
data/common/games/soko/soko
Normal file
BIN
data/common/games/soko/soko-4.lev
Normal file
BIN
data/common/games/soko/soko-5.lev
Normal file
BIN
data/common/games/soko/soko-6.lev
Normal file
BIN
data/common/games/soko/soko-7.lev
Normal file
BIN
data/common/games/soko/soko-8.lev
Normal file
BIN
data/common/games/soko/soko-9.lev
Normal file
@ -196,6 +196,21 @@ FASM_PROGRAMS_CD:=\
|
|||||||
drivers/atikms:DRIVERS/ATIKMS:$(REPOSITORY)/drivers/video/drm/radeon/atikms.asm \
|
drivers/atikms:DRIVERS/ATIKMS:$(REPOSITORY)/drivers/video/drm/radeon/atikms.asm \
|
||||||
# end of list
|
# end of list
|
||||||
|
|
||||||
|
# The list of all FASM programs which needs to be compiled without KPACKing.
|
||||||
|
FASM_NOKPACK_PROGRAMS:=\
|
||||||
|
distr_data/9x2klbr.exe::$(PROGS)/hd_load/9x2klbr/9x2klbr.asm \
|
||||||
|
distr_data/MeOSload.com::$(PROGS)/hd_load/meosload/MeOSload.asm \
|
||||||
|
distr_data/mtldr::$(PROGS)/hd_load/mtldr/mtldr.asm \
|
||||||
|
mtldr_for_installer::$(PROGS)/hd_load/mtldr_installer/mtldr_code/mtldr.asm \
|
||||||
|
distr_data/mtldr_install.exe::$(PROGS)/hd_load/mtldr_installer/mtldr_installer.asm \
|
||||||
|
distr_data/MeOSload_for_usb_boot_old.com::$(PROGS)/hd_load/usb_boot_old/MeOSload.asm \
|
||||||
|
distr_data/enable_for_usb_boot_old.exe::$(PROGS)/hd_load/usb_boot_old/enable.asm \
|
||||||
|
distr_data/BOOT_F32.BIN::$(PROGS)/hd_load/usb_boot/BOOT_F32.ASM \
|
||||||
|
distr_data/MTLD_F32::$(PROGS)/hd_load/usb_boot/mtldr.asm \
|
||||||
|
distr_data/inst.exe::$(PROGS)/hd_load/usb_boot/inst.asm \
|
||||||
|
distr_data/setmbr.exe::$(PROGS)/hd_load/usb_boot/setmbr.asm \
|
||||||
|
#end of list
|
||||||
|
|
||||||
# The list of all NASM programs with one main NASM file.
|
# The list of all NASM programs with one main NASM file.
|
||||||
# Format of an item is exactly the same as in the previous list.
|
# Format of an item is exactly the same as in the previous list.
|
||||||
NASM_PROGRAMS:=\
|
NASM_PROGRAMS:=\
|
||||||
@ -306,6 +321,32 @@ MKISOFS_EXTRA:=\
|
|||||||
Docs/cp1251/readme.txt=docs/README.WIN.TXT \
|
Docs/cp1251/readme.txt=docs/README.WIN.TXT \
|
||||||
Docs/cp1251/stack_ru.txt=docs/STACK_RU.WIN.TXT \
|
Docs/cp1251/stack_ru.txt=docs/STACK_RU.WIN.TXT \
|
||||||
Docs/cp1251/sysfuncr.txt=docs/SYSFUNCR.WIN.TXT \
|
Docs/cp1251/sysfuncr.txt=docs/SYSFUNCR.WIN.TXT \
|
||||||
|
HD_Load/9x2klbr/=distr_data/9x2klbr.exe \
|
||||||
|
HD_Load/9x2klbr/=../common/hd_load/9x2klbr/LDKLBR.VXD \
|
||||||
|
HD_Load/9x2klbr/=$(PROGS)/hd_load/9x2klbr/readme_dos.txt \
|
||||||
|
HD_Load/9x2klbr/=$(PROGS)/hd_load/9x2klbr/readme_win.txt \
|
||||||
|
HD_Load/MeOSLoad/=distr_data/MeOSLoad.com \
|
||||||
|
HD_Load/MeOSLoad/=$(PROGS)/hd_load/meosload/AUTOEXEC.BAT \
|
||||||
|
HD_Load/MeOSLoad/=$(PROGS)/hd_load/meosload/CONFIG.SYS \
|
||||||
|
HD_Load/MeOSLoad/=$(PROGS)/hd_load/meosload/L_readme.txt \
|
||||||
|
HD_Load/MeOSLoad/=$(PROGS)/hd_load/meosload/L_readme_Win.txt \
|
||||||
|
HD_Load/mtldr/=distr_data/mtldr \
|
||||||
|
HD_Load/mtldr/=$(PROGS)/hd_load/mtldr/install.txt \
|
||||||
|
HD_Load/mtldr/=$(PROGS)/hd_load/mtldr/vista_install.bat \
|
||||||
|
HD_Load/mtldr/=$(PROGS)/hd_load/mtldr/vista_remove.bat \
|
||||||
|
HD_Load/=distr_data/mtldr_install.exe \
|
||||||
|
HD_Load/memdisk=../common/hd_load/memdisk \
|
||||||
|
HD_Load/USB_Boot/=distr_data/BOOT_F32.BIN \
|
||||||
|
HD_Load/USB_Boot/=distr_data/MTLD_F32 \
|
||||||
|
HD_Load/USB_Boot/=distr_data/inst.exe \
|
||||||
|
HD_Load/USB_Boot/=distr_data/setmbr.exe \
|
||||||
|
HD_Load/USB_Boot/=$(PROGS)/hd_load/usb_boot/readme.txt \
|
||||||
|
HD_Load/USB_boot_old/=$(PROGS)/hd_load/usb_boot_old/usb_boot.rtf \
|
||||||
|
HD_Load/USB_boot_old/=$(PROGS)/hd_load/usb_boot_old/usb_boot_866.txt \
|
||||||
|
HD_Load/USB_boot_old/=$(PROGS)/hd_load/usb_boot_old/usb_boot_1251.txt \
|
||||||
|
HD_Load/USB_boot_old/MeOSload.com=distr_data/MeOSload_for_usb_boot_old.com \
|
||||||
|
HD_Load/USB_boot_old/enable.exe=distr_data/enable_for_usb_boot_old.exe \
|
||||||
|
/=../common/games \
|
||||||
#end of list
|
#end of list
|
||||||
|
|
||||||
# Text files which need to be recoded to cp1251 from native aka cp866
|
# Text files which need to be recoded to cp1251 from native aka cp866
|
||||||
@ -418,6 +459,9 @@ File\ Managers/.dir:
|
|||||||
mkdir -p "File Managers"
|
mkdir -p "File Managers"
|
||||||
touch "File Managers/.dir"
|
touch "File Managers/.dir"
|
||||||
|
|
||||||
|
# extra dependency for mtldr_install.exe
|
||||||
|
distr_data/mtldr_install.exe: mtldr_for_installer
|
||||||
|
|
||||||
# FASM black magic goes to Makefile.fasm.
|
# FASM black magic goes to Makefile.fasm.
|
||||||
include Makefile.fasm
|
include Makefile.fasm
|
||||||
|
|
||||||
|
@ -37,9 +37,20 @@ $(1): $(2) Makefile.fasm .deps/.dir $$(call respace,$$(addsuffix .dir,$(3)))
|
|||||||
-include .deps/$(4).Po
|
-include .deps/$(4).Po
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
define fasm_nokpack_meta_rule
|
||||||
|
$(1): $(2) Makefile.fasm .deps/.dir $$(call respace,$$(addsuffix .dir,$(3)))
|
||||||
|
fasm -m 65536 "$$<" "$$@" -s .deps/$(4).fas
|
||||||
|
prepsrc .deps/$(4).fas /dev/null
|
||||||
|
prepsrc .deps/$(4).fas /dev/stdout | \
|
||||||
|
perl -n -e 's|\\|/|g;s| |\\ |g;push @a,$$$$1 if/^;include\\ \x27(.*?)\x27/;' \
|
||||||
|
-e 'END{$$$$a=join " \\\n ",@a;print q`$(1): `,"$$$$a\n$$$$a:\n"}' > .deps/$(4).Po
|
||||||
|
-include .deps/$(4).Po
|
||||||
|
endef
|
||||||
|
|
||||||
progname=$(call respace,$(basename $(notdir $(call binarypart,$(f)))))
|
progname=$(call respace,$(basename $(notdir $(call binarypart,$(f)))))
|
||||||
binarydir=$(subst ./,,$(dir $(call binarypart,$(f))))
|
binarydir=$(subst ./,,$(dir $(call binarypart,$(f))))
|
||||||
$(foreach f,$(FASM_PROGRAMS) $(FASM_PROGRAMS_CD) $(SKIN_SOURCES),$(eval $(call fasm_meta_rule,$(fbinary),$(fsource),$(binarydir),$(progname))))
|
$(foreach f,$(FASM_PROGRAMS) $(FASM_PROGRAMS_CD) $(SKIN_SOURCES),$(eval $(call fasm_meta_rule,$(fbinary),$(fsource),$(binarydir),$(progname))))
|
||||||
|
$(foreach f,$(FASM_NOKPACK_PROGRAMS),$(eval $(call fasm_nokpack_meta_rule,$(fbinary),$(fsource),$(binarydir),$(progname))))
|
||||||
|
|
||||||
# Rule for the kernel differs: it uses kerpack instead of kpack.
|
# Rule for the kernel differs: it uses kerpack instead of kpack.
|
||||||
kernel.mnt: $(KERNEL)/kernel.asm Makefile.fasm .deps/.dir
|
kernel.mnt: $(KERNEL)/kernel.asm Makefile.fasm .deps/.dir
|
||||||
|
202
programs/hd_load/9x2klbr/9x2klbr.asm
Normal file
@ -0,0 +1,202 @@
|
|||||||
|
format PE GUI 4.0
|
||||||
|
section '.text' code readable executable
|
||||||
|
entry start
|
||||||
|
start:
|
||||||
|
push ebp
|
||||||
|
mov ebp, info
|
||||||
|
xor ebx, ebx
|
||||||
|
; set current directory to exe dir
|
||||||
|
push 300
|
||||||
|
push ebp
|
||||||
|
push ebx
|
||||||
|
call [GetModuleFileNameA]
|
||||||
|
lea edi, [ebp+eax]
|
||||||
|
xchg eax, ecx
|
||||||
|
mov al, '\'
|
||||||
|
std
|
||||||
|
repnz scasb
|
||||||
|
cld
|
||||||
|
jz @f
|
||||||
|
pop ebp
|
||||||
|
ret
|
||||||
|
@@:
|
||||||
|
mov byte [edi+1], bl
|
||||||
|
push ebp
|
||||||
|
call [SetCurrentDirectoryA]
|
||||||
|
; parse command line
|
||||||
|
call [GetCommandLineA]
|
||||||
|
xchg eax, esi
|
||||||
|
; skip leading spaces
|
||||||
|
@@:
|
||||||
|
lodsb
|
||||||
|
cmp al, 0
|
||||||
|
jz cmdlineend
|
||||||
|
cmp al, ' '
|
||||||
|
jbe @b
|
||||||
|
cmp al, '"'
|
||||||
|
jz p
|
||||||
|
; skip EXE name
|
||||||
|
@@:
|
||||||
|
lodsb
|
||||||
|
cmp al, ' '
|
||||||
|
ja @b
|
||||||
|
dec esi
|
||||||
|
jmp q
|
||||||
|
p:
|
||||||
|
lodsb
|
||||||
|
cmp al, 0
|
||||||
|
jz cmdlineend
|
||||||
|
cmp al, '"'
|
||||||
|
jnz p
|
||||||
|
q:
|
||||||
|
; skip leading spaces
|
||||||
|
lodsb
|
||||||
|
cmp al, 0
|
||||||
|
jz cmdlineend
|
||||||
|
cmp al, ' '
|
||||||
|
jbe q
|
||||||
|
dec esi
|
||||||
|
; now esi points to 1st argument
|
||||||
|
jmp @f
|
||||||
|
cmdlineend:
|
||||||
|
mov esi, def
|
||||||
|
@@:
|
||||||
|
mov al, 'c'
|
||||||
|
cmp byte [esi+1], ':'
|
||||||
|
jnz @f
|
||||||
|
lodsb
|
||||||
|
inc esi
|
||||||
|
@@:
|
||||||
|
mov [ebp], al
|
||||||
|
lodsb
|
||||||
|
cmp al, '\'
|
||||||
|
jz paramsok
|
||||||
|
usage:
|
||||||
|
mov esi, usagemsg
|
||||||
|
jmp failmsg
|
||||||
|
paramsok:
|
||||||
|
cmp byte [esi], '\'
|
||||||
|
jz usage
|
||||||
|
mov edi, esi
|
||||||
|
mov al, 0
|
||||||
|
xor ecx, ecx
|
||||||
|
dec ecx
|
||||||
|
repnz scasb
|
||||||
|
not ecx
|
||||||
|
cmp ecx, 290
|
||||||
|
jae usage
|
||||||
|
lea edi, [ebp+1]
|
||||||
|
cmp ecx, 1
|
||||||
|
rep movsb
|
||||||
|
jz copydefname
|
||||||
|
cmp byte [edi-2], '\'
|
||||||
|
jnz namegiven
|
||||||
|
copydefname:
|
||||||
|
dec edi
|
||||||
|
mov ecx, defnamesz
|
||||||
|
mov esi, defname
|
||||||
|
rep movsb
|
||||||
|
namegiven:
|
||||||
|
push ebx ; hTemplateFile
|
||||||
|
; push 0x04000000 ; dwFlagsAndAttributes = FILE_FLAG_DELETE_ON_CLOSE
|
||||||
|
push ebx
|
||||||
|
push ebx ; dwCreationDisposition
|
||||||
|
push ebx ; lpSecurityAttributes
|
||||||
|
push ebx ; dwShareMode
|
||||||
|
push ebx ; dwDesiredAccess
|
||||||
|
push name ; lpFileName
|
||||||
|
call [CreateFileA]
|
||||||
|
inc eax
|
||||||
|
mov esi, errmsg
|
||||||
|
jz failmsg
|
||||||
|
dec eax
|
||||||
|
push ebx
|
||||||
|
push ebx
|
||||||
|
push ebx
|
||||||
|
push ebx
|
||||||
|
sub edi, ebp
|
||||||
|
push edi
|
||||||
|
push ebp
|
||||||
|
push 0Fh
|
||||||
|
push eax
|
||||||
|
call [DeviceIoControl]
|
||||||
|
test eax, eax
|
||||||
|
mov esi, errmsg2
|
||||||
|
jz failmsg
|
||||||
|
push ebx
|
||||||
|
push 2 ; EWX_REBOOT
|
||||||
|
call [ExitWindowsEx]
|
||||||
|
pop ebp
|
||||||
|
ret
|
||||||
|
failmsg:
|
||||||
|
push ebx
|
||||||
|
push ebx
|
||||||
|
push esi
|
||||||
|
push ebx
|
||||||
|
call [MessageBoxA]
|
||||||
|
pop ebp
|
||||||
|
ret
|
||||||
|
|
||||||
|
align 4
|
||||||
|
data import
|
||||||
|
dd 0,0,0
|
||||||
|
dd rva kernel32_name
|
||||||
|
dd rva kernel32_thunks
|
||||||
|
dd 0,0,0
|
||||||
|
dd rva user32_name
|
||||||
|
dd rva user32_thunks
|
||||||
|
dd 0,0,0,0,0
|
||||||
|
kernel32_thunks:
|
||||||
|
CreateFileA dd rva CreateFileA_thunk
|
||||||
|
CloseHandle dd rva CloseHandle_thunk
|
||||||
|
DeviceIoControl dd rva DeviceIoControl_thunk
|
||||||
|
GetCommandLineA dd rva GetCommandLineA_thunk
|
||||||
|
SetCurrentDirectoryA dd rva SetCurrentDirectoryA_thunk
|
||||||
|
GetModuleFileNameA dd rva GetModuleFileNameA_thunk
|
||||||
|
dd 0
|
||||||
|
user32_thunks:
|
||||||
|
MessageBoxA dd rva MessageBoxA_thunk
|
||||||
|
ExitWindowsEx dd rva ExitWindowsEx_thunk
|
||||||
|
dw 0
|
||||||
|
CreateFileA_thunk:
|
||||||
|
dw 0
|
||||||
|
db 'CreateFileA'
|
||||||
|
CloseHandle_thunk:
|
||||||
|
dw 0
|
||||||
|
db 'CloseHandle'
|
||||||
|
DeviceIoControl_thunk:
|
||||||
|
dw 0
|
||||||
|
db 'DeviceIoControl'
|
||||||
|
GetCommandLineA_thunk:
|
||||||
|
dw 0
|
||||||
|
db 'GetCommandLineA'
|
||||||
|
SetCurrentDirectoryA_thunk:
|
||||||
|
dw 0
|
||||||
|
db 'SetCurrentDirectoryA'
|
||||||
|
GetModuleFileNameA_thunk:
|
||||||
|
dw 0
|
||||||
|
db 'GetModuleFileNameA'
|
||||||
|
MessageBoxA_thunk:
|
||||||
|
dw 0
|
||||||
|
db 'MessageBoxA'
|
||||||
|
ExitWindowsEx_thunk:
|
||||||
|
dw 0
|
||||||
|
db 'ExitWindowsEx',0
|
||||||
|
kernel32_name db 'kernel32.dll',0
|
||||||
|
user32_name db 'user32.dll',0
|
||||||
|
end data
|
||||||
|
|
||||||
|
section '.data' data readable writable
|
||||||
|
data resource from 'klbrico.res'
|
||||||
|
end data
|
||||||
|
|
||||||
|
name db '\\.\'
|
||||||
|
vxdfilename db 'ldklbr.vxd',0
|
||||||
|
errmsg db 'Cannot load driver',0
|
||||||
|
errmsg2 db 'Invalid parameter',0
|
||||||
|
usagemsg db 'Usage: 9x2klbr [[drive:]\[path\][imagename]]',0
|
||||||
|
def db '\'
|
||||||
|
defname db 'kolibri.img',0
|
||||||
|
defnamesz = $ - defname
|
||||||
|
|
||||||
|
info rb 300
|
23
programs/hd_load/9x2klbr/DEFFILE.DEF
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
VXD LDKLBR DYNAMIC
|
||||||
|
|
||||||
|
SEGMENTS
|
||||||
|
_LPTEXT CLASS 'LCODE' PRELOAD NONDISCARDABLE
|
||||||
|
_LTEXT CLASS 'LCODE' PRELOAD NONDISCARDABLE
|
||||||
|
_LDATA CLASS 'LCODE' PRELOAD NONDISCARDABLE
|
||||||
|
_TEXT CLASS 'LCODE' PRELOAD NONDISCARDABLE
|
||||||
|
_DATA CLASS 'LCODE' PRELOAD NONDISCARDABLE
|
||||||
|
CONST CLASS 'LCODE' PRELOAD NONDISCARDABLE
|
||||||
|
_TLS CLASS 'LCODE' PRELOAD NONDISCARDABLE
|
||||||
|
_BSS CLASS 'LCODE' PRELOAD NONDISCARDABLE
|
||||||
|
_ITEXT CLASS 'ICODE' DISCARDABLE
|
||||||
|
_IDATA CLASS 'ICODE' DISCARDABLE
|
||||||
|
_PTEXT CLASS 'PCODE' NONDISCARDABLE
|
||||||
|
_PDATA CLASS 'PDATA' NONDISCARDABLE SHARED
|
||||||
|
_STEXT CLASS 'SCODE' RESIDENT
|
||||||
|
_SDATA CLASS 'SCODE' RESIDENT
|
||||||
|
_16ICODE CLASS '16ICODE' PRELOAD DISCARDABLE
|
||||||
|
_RCODE CLASS 'RCODE'
|
||||||
|
|
||||||
|
EXPORTS
|
||||||
|
|
||||||
|
LDKLBR_DDB @1
|
BIN
programs/hd_load/9x2klbr/Klbrico.res
Normal file
178
programs/hd_load/9x2klbr/V86MMGR.INC
Normal file
@ -0,0 +1,178 @@
|
|||||||
|
;******************************************************************************
|
||||||
|
;
|
||||||
|
; (C) Copyright MICROSOFT Corp., 1988-1990
|
||||||
|
;
|
||||||
|
; Title: V86MMGR.Inc - Public services for V86MMGR
|
||||||
|
;
|
||||||
|
; Version: 2.00
|
||||||
|
;
|
||||||
|
; Date: 29-Nov-88
|
||||||
|
;
|
||||||
|
; Author: ARR
|
||||||
|
;
|
||||||
|
;------------------------------------------------------------------------------
|
||||||
|
;
|
||||||
|
; Change log:
|
||||||
|
;
|
||||||
|
; DATE REV DESCRIPTION
|
||||||
|
; ----------- --- -----------------------------------------------------------
|
||||||
|
; 29-Nov-1988 ARR Original
|
||||||
|
; 26-Apr-1989 RAL New mapper services
|
||||||
|
;
|
||||||
|
;==============================================================================
|
||||||
|
|
||||||
|
Begin_Service_Table V86MMGR
|
||||||
|
|
||||||
|
V86MMGR_Service V86MMGR_Get_Version, LOCAL
|
||||||
|
V86MMGR_Service V86MMGR_Allocate_V86_Pages, LOCAL
|
||||||
|
V86MMGR_Service V86MMGR_Set_EMS_XMS_Limits, LOCAL
|
||||||
|
V86MMGR_Service V86MMGR_Get_EMS_XMS_Limits, LOCAL
|
||||||
|
;
|
||||||
|
; Services used for API mapping.
|
||||||
|
;
|
||||||
|
V86MMGR_Service V86MMGR_Set_Mapping_Info, VxD_ICODE
|
||||||
|
V86MMGR_Service V86MMGR_Get_Mapping_Info
|
||||||
|
V86MMGR_Service V86MMGR_Xlat_API
|
||||||
|
V86MMGR_Service V86MMGR_Load_Client_Ptr
|
||||||
|
V86MMGR_Service V86MMGR_Allocate_Buffer
|
||||||
|
V86MMGR_Service V86MMGR_Free_Buffer
|
||||||
|
V86MMGR_Service V86MMGR_Get_Xlat_Buff_State
|
||||||
|
V86MMGR_Service V86MMGR_Set_Xlat_Buff_State
|
||||||
|
V86MMGR_Service V86MMGR_Get_VM_Flat_Sel
|
||||||
|
V86MMGR_Service V86MMGR_Map_Pages
|
||||||
|
V86MMGR_Service V86MMGR_Free_Page_Map_Region
|
||||||
|
;***********************************************************
|
||||||
|
; END OF 3.00 level services
|
||||||
|
;
|
||||||
|
V86MMGR_Service V86MMGR_LocalGlobalReg
|
||||||
|
V86MMGR_Service V86MMGR_GetPgStatus, LOCAL
|
||||||
|
V86MMGR_Service V86MMGR_SetLocalA20, VxD_ICODE
|
||||||
|
V86MMGR_Service V86MMGR_ResetBasePages, LOCAL
|
||||||
|
V86MMGR_Service V86MMGR_SetAvailMapPgs, VxD_ICODE
|
||||||
|
V86MMGR_Service V86MMGR_NoUMBInitCalls, VxD_ICODE
|
||||||
|
|
||||||
|
IFNDEF WIN31COMPAT
|
||||||
|
|
||||||
|
; Services added post Win 3.1
|
||||||
|
V86MMGR_Service V86MMGR_Get_EMS_XMS_Avail, LOCAL
|
||||||
|
V86MMGR_Service V86MMGR_Toggle_HMA
|
||||||
|
V86MMGR_Service V86MMGR_Dev_Init, LOCAL
|
||||||
|
V86MMGR_Service V86MMGR_Alloc_UM_Page, LOCAL
|
||||||
|
|
||||||
|
ENDIF ; WIN31COMPAT
|
||||||
|
|
||||||
|
ifdef NEC_98
|
||||||
|
;;V86MMGR_Service V86MMGR_EMM_B0Bank_CHK
|
||||||
|
V86MMGR_Service V86MMGR_Check_NHSupport, LOCAL
|
||||||
|
endif
|
||||||
|
|
||||||
|
End_Service_Table V86MMGR
|
||||||
|
|
||||||
|
;
|
||||||
|
; BITS of returned EAX flags for V86MMGR_GetPgStatus
|
||||||
|
;
|
||||||
|
V86PS_ROM equ 0000000000000001b ; Page contains global ROM
|
||||||
|
V86PS_RAM equ 0000000000000010b ; Page contains global RAM
|
||||||
|
V86PS_EMM equ 0000000010000000b ; Page belongs to EMM driver
|
||||||
|
V86PS_XMS equ 0000000100000000b ; Page belongs to XMS driver
|
||||||
|
V86PS_MAP equ 0000001000000000b ; Page belongs to mapper
|
||||||
|
V86PS_UMB equ 0001000000000000b ; Page contains imported UMB
|
||||||
|
; (Note that V86PS_XMS is not
|
||||||
|
; necessarily set)
|
||||||
|
|
||||||
|
;
|
||||||
|
; BITS of ECX flags for V86MMGR_Allocate_V86_Pages
|
||||||
|
;
|
||||||
|
AV86PLocked EQU 00000000000000000000000000000001B
|
||||||
|
AV86PLockedBit EQU 0 ; VM memory is to be
|
||||||
|
; ALWAYS LOCKED regardless of
|
||||||
|
; pager type or whether VM
|
||||||
|
; is suspended.
|
||||||
|
;
|
||||||
|
; BITS of ECX flags for V86MMGR_Set_EMS_XMS_Limits
|
||||||
|
;
|
||||||
|
; NOTE: If neither Limit_DisableHMA or Limit_EnableHMA is set, the HMA
|
||||||
|
; state is not altered.
|
||||||
|
;
|
||||||
|
EMS_XMS_Limit_DisableHMA EQU 00000000000000000000000000000001B
|
||||||
|
EMS_XMS_Limit_DisableHMABit EQU 0
|
||||||
|
EMS_XMS_Limit_EnableHMA EQU 00000000000000000000000000000010B
|
||||||
|
EMS_XMS_Limit_EnableHMABit EQU 1
|
||||||
|
EMS_XMS_Limit_XMS_Is_Locked EQU 00000000000000000000000000000100B
|
||||||
|
EMS_XMS_Limit_XMS_Is_LockedBit EQU 2
|
||||||
|
EMS_XMS_Limit_EMS_Is_Locked EQU 00000000000000000000000000001000B
|
||||||
|
EMS_XMS_Limit_EMS_Is_LockedBit EQU 3
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
;
|
||||||
|
; API mapper equates and macros
|
||||||
|
;
|
||||||
|
|
||||||
|
Xlat_Exec_Int EQU 000h
|
||||||
|
Xlat_Fixed_Len EQU 001h
|
||||||
|
Xlat_Var_Len EQU 002h
|
||||||
|
Xlat_Calc_Len EQU 003h
|
||||||
|
Xlat_ASCIIZ EQU 004h
|
||||||
|
Xlat_Jmp_To_Proc EQU 005h
|
||||||
|
Xlat_Return_Ptr EQU 006h
|
||||||
|
Xlat_Return_Seg EQU 007h
|
||||||
|
Xlat_ASCIIZ_InOut EQU 008h
|
||||||
|
|
||||||
|
|
||||||
|
Xlat_API_Exec_Int MACRO Int_Number
|
||||||
|
db Xlat_Exec_Int
|
||||||
|
db Int_Number
|
||||||
|
ENDM
|
||||||
|
|
||||||
|
Xlat_API_Fixed_Len MACRO Ptr_Seg, Ptr_Off, Length
|
||||||
|
db Xlat_Fixed_Len
|
||||||
|
dw Length
|
||||||
|
dw (Client_&Ptr_Seg*100h)+Client_&Ptr_Off
|
||||||
|
ENDM
|
||||||
|
|
||||||
|
Xlat_API_Var_Len MACRO Ptr_Seg, Ptr_Off, Len_Reg
|
||||||
|
db Xlat_Var_Len
|
||||||
|
db Client_&Len_Reg
|
||||||
|
dw (Client_&Ptr_Seg*100h)+Client_&Ptr_Off
|
||||||
|
ENDM
|
||||||
|
|
||||||
|
Xlat_API_Calc_Len MACRO Ptr_Seg, Ptr_Off, Calc_Proc_Addr
|
||||||
|
db Xlat_Calc_Len
|
||||||
|
dd OFFSET32 Calc_Proc_Addr
|
||||||
|
dw (Client_&Ptr_Seg*100h)+Client_&Ptr_Off
|
||||||
|
ENDM
|
||||||
|
|
||||||
|
Xlat_API_ASCIIZ MACRO Ptr_Seg, Ptr_Off
|
||||||
|
db Xlat_ASCIIZ
|
||||||
|
dw (Client_&Ptr_Seg*100h)+Client_&Ptr_Off
|
||||||
|
ENDM
|
||||||
|
|
||||||
|
Xlat_API_ASCIIZ_InOut MACRO Ptr_Seg, Ptr_Off
|
||||||
|
db Xlat_ASCIIZ_InOut
|
||||||
|
dw (Client_&Ptr_Seg*100h)+Client_&Ptr_Off
|
||||||
|
ENDM
|
||||||
|
|
||||||
|
Xlat_API_Jmp_To_Proc MACRO Proc_Name
|
||||||
|
db Xlat_Jmp_To_Proc
|
||||||
|
dd OFFSET32 Proc_Name
|
||||||
|
ENDM
|
||||||
|
|
||||||
|
|
||||||
|
Xlat_API_Return_Ptr MACRO Ptr_Seg, Ptr_Off
|
||||||
|
db Xlat_Return_Ptr
|
||||||
|
dw (Client_&Ptr_Seg*100h)+Client_&Ptr_Off
|
||||||
|
ENDM
|
||||||
|
|
||||||
|
Xlat_API_Return_Seg MACRO Ptr_Seg
|
||||||
|
db Xlat_Return_Seg
|
||||||
|
db Client_&Ptr_Seg
|
||||||
|
ENDM
|
||||||
|
|
||||||
|
;
|
||||||
|
; The V86MMGR does W386_Device_Broadcast call outs. The 'subfunction' number
|
||||||
|
; for these call outs is contained in the CX register. These are the equates
|
||||||
|
; for the subfunction numbers.
|
||||||
|
;
|
||||||
|
V86CallOut_LclA20forGlblHMA equ 0 ; Should A20 state be local
|
||||||
|
; even if HMA is GLOBAL?
|
4522
programs/hd_load/9x2klbr/VMM.INC
Normal file
1
programs/hd_load/9x2klbr/comp_ldr.bat
Normal file
@ -0,0 +1 @@
|
|||||||
|
fasm 9x2klbr.asm 9x2klbr.exe
|
12
programs/hd_load/9x2klbr/compile.txt
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
Изменение кода mtldr требует перекомпиляции VxD.
|
||||||
|
Изменение кода VxD требует перекомпиляции VxD.
|
||||||
|
Изменение кода exe-шника отражается только на exe-шнике.
|
||||||
|
После компиляции mtldr требуется перегнать бинарник mtldr в inc-файл,
|
||||||
|
понятный masm'у. Это делается через bintodb (взятого из пакета masm):
|
||||||
|
File->Open->mtldr, подредактировать по существующему образцу,
|
||||||
|
File->Save->mtldr.inc.
|
||||||
|
Для компиляции mtldr и 9x2klbr.exe требуется fasm, для компиляции ldklbr.vxd
|
||||||
|
требуется пакет masm.
|
||||||
|
Компилирующие bat-ники прилагаются.
|
||||||
|
diamond
|
||||||
|
mailto: diamondz@land.ru
|
2
programs/hd_load/9x2klbr/make_vxd.bat
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
ml /coff /c /Cx /DMASM6 /DBLD_COFF /DIS_32 vxd.asm
|
||||||
|
link /vxd /stub:masmstub /def:deffile.def vxd.obj
|