|
Upgrade ArcaOS to NeoWPS level
- Install original PNG icons drawed by designer, specialized at OS/2 adornation.
- Install eSchemes 2018 to change colors and buttons on desktop.
|
OS/2 Miniaturization Contest |
TITLE: OS/2 Miniaturization Contest
DATE: 2001-10-02 16:44:08
AUTHOR: Андрей А. Породько
Please use online translator go to http://translate.google.com and request the translation of http://ru.ecomstation./showarticle.php?id=26 to your language |
....... . ...........: ...... .. .........
........:
....... ........ ................ ........!
(Michal Necasek, ........ 2001)
. ....... 2001 .... ........ ..... ....: . ........ . ........... .
...... ........ comp.os.os2.programmer.misc "....... .............. ...
OS/2", ....... ... ............. OS/2, ..... ........ ...... .... ....
........ .......... ......... ......... ............... .........
......... ........ ....... .. ... ....:
- ......... ...... .... . ....... OS/2 LX ............ ...... (32-...);
- ......... ...... ........ ......... "I'm really small!" (. ............. ....!) . ....... ...... .. .......;
- ......... ...... ........... . OS/2 Warp 4 GA ... ..... ..... ...... ... .......... ..... ...... ..... ............ .......
... ...., ..... ....... ....... ..... .......... . ............... ...
............., ....... ......... ...., ....... . ....... ....... . ....
.........., ....... ..... .... ......... ... .....:
- Stock - ......... ............. ...... ..... ........ ...... . ...................... ............. ............. .......... ..........
- High Octane Stock - .... ..... ... . ...., .. . ........... ...........
- Custom - (. .. ...... free style, .........) ......... ..., ...... .. ......... ........ . .......... . ....... ........ ... .... ........... ... .. .........
... ........... ............... ...... . ..... ............ ....
......., . ........... .... ....... ....: ... ........... ........
... ...... ........... ........... ... ....... .. ...... ............
........., . ...... ........ ...... ... ............ .... ........ ... .
........ ... .... . ......... .......... ........... ...........
.......... . ...... ...., . .... .......... . ..... ... ...... ...
....... . ..... ............
..... ... ... ........ . ........ . .... .... ......... ..... .... ...
........ ..... ......... ........... ....... .. .... . ... .......
..........-............ ............ . .... .......... .....:
- Stock - Knut St. Osmundsen, 276 ...., ......... Watcom C, WLINK . LxLite.
- High Octane Stock - Knut St. Osmundsen, 273 ...., ......... ALP, ILINK . LxLite.
- Custom - Martin Lafaix, 196 ...., ......... . ....... 16-........ .........
........, ........ .......... ........... ........ ...... ... .... ...
......... .. C . .......... ..... ............. .......... ........, .
....... .. .............. ......... ... . ........ ......... .... .....,
... Watcom C ............. ..... ....... ........ ..........
............. .......... ......., ..... ..... .. ....... ... .
...........
.., ....... .., ........ ............. ......... ....... .......... .
......... Custom. ........ .... .. ......... ... ...... .........
LX-...... .......... 196 .... . ......... ........ OS/2 .........
......... ...-.... ....... .. ....... 196 ..... .. ... .. ..... ....
........... ...... ........ . ......... ........ 17-.. ....... .........
. ......... .......... .......... ............ ........ . .. .... .....
......... ... ........ . ....... . ........ ........ . ...... Martin
Lafaix'-. .. ........ ... .........-.......... (........... ..........
Fandango on Core).
......, ..... .... ... . ......... ....... . ... ........, .......
........ . ............ ........ ........ ........ ......, ....... .
.........., ... ... ........... ......, .. . .............. ...... ....
............ . ...... ... ......... . ....... Watcom 11.0c . .. ......
........ ............ . ...... .........../............, ........ ..
........... ........ ............ C-..... . .... ......... ... .....
........... . ....... ....... .. ...... .........
. ........... ... ........ ..... ............. .. .............
.........., C, ........... x86, ....... ............ ...... OS/2 . .....
........... ... ........... .. ... ........ .... .... ....... ......
........ ..... ... ... .. ............... .... ... .. ............, ..
...., ............. ..... ... ... ...! . .... .....-.. ....... . ...
.........
......... High Octane Stock
....... . .... ........... ........., . ....... ........... .............
.........., ... ... ..... ..... ..... "......" . .. ............ .......
............ ....... (......) ... . C ....... .... ......., ... .
............ ...... ... .... ....., ..... ... . C ...... ...... ......
...... .. ............. ........ . ....... ............
......, ... .. ........ ......... .. ....... . .............. OS/2 ...?
...... ......... ..... - ..... DosWrite. .. DosWrite ..... .........
......... ............ .. ....... ....... .......... (.... .......
DWORD .... . .....) . ............. . ......... .......... DOSCALLS.DLL
(.. ..... .... . .... OS/2), ....... ..... .......... ....... ...,
....... ...... .... ........ . ........... .....
....... ........ ............. . .... ...... ..... ...............
......, ..... ............, ....... OS/2 ..., ... DosPutMessage. ..
..... ...... ... ......... ., ... ... ....., ............. . MSG.DLL
(..... ........ ... ..........).
......... ........ ..... ......... (......... asm1.asm) . ..............
DosPutMessage ........ ........ ...:
.386p
EXTRN DosPutMessage:BYTE
_DATA SEGMENT BYTE PUBLIC USE32 'STACK'
_msg:
DB "I'm really small!",0aH
_DATA ENDS
_TEXT SEGMENT BYTE PUBLIC USE32 'CODE'
ASSUME CS:_TEXT, DS:_TEXT, SS:_TEXT
startup:
push offset flat:_msg
push 12H
push 1
call near ptr flat:DosPutMessage
add esp,0CH
ret
_TEXT ENDS
END startup
... .. ......, ... ......... ..... ........ . .. .......... .......
....... ............ "......", ......., ........ ............. ......
DosExit ........ RETs. ... ........ . .... .. ......., ... . .....
DosExit . ........... ..-.......... ..... .............. WASM-.. .
........ WLINK-.. . ..... ...... .. ........ ......... ........ . 545
..... ... ...... ..... ......, ....... . ...........:
wasm asm1.asm
wlink file asm1 lib os2386 option st=32k
............, .. ...... ......... ...... ........ st=32k .......
............. ...... ..... ......... . 32 .......... ... ..... .....,
......... ..... ...... 18 .... ..... (......... ....... ... ......
.......) . ......... ..... ..... .......
. ..... ...... "........" ......... 545 .... .. ... .. . ....., ......
..... ......... ...... . ....... LxLite:
lxlite /T /ZS:512 asm1.exe
..... ...... ........ ........ ..... MS-DOS (..... /T . /ZS LxLite),
........ . 128 ...., ... ........... ...... .. ...... ......... (. .....
....... ..... ....). OS/2 ...... ......... ........ . ......... ...
..... ...... MS-DOS .. ..... ........ ......... ... ........., .. .....
. .. ........... .. ........ ......... LxLite ........... .........
.............. ........... . ......... - ......... . 325 ..... ...
........... ..... ... 545, .. ... ... ...... .. ............ .......
........ ..... .....-.. ...... . ........ ......, ....... ......... ..
....
... .......... ............ ....... .......... ......... . ..........
............ ...... ..... .... .. ... ........ ......... ......
.......... ....., ..... .. ......... ..... ........ ..........
............ ......... LX .......
.. .. ...... . ....-.. ...... .......... .......... ..... ... .... ....
.......... ....... ..... .......... .... . ..... ... ... ..... .......
........ ......... ... ............. OS/2 ..., ....... Warp 4 (....... .. .
........) ............. ......... ..... ......... ...., ....... ........
....... ....... Warp 4 ............ . ............ ........... ..... C,
.............. ..... ......... .............. ....... .......... ..
VisualAge C++ 3-. ....... .. ..... .... ... ......... DLL-......... -
LIBCS.DLL (... ..... .. ............ .....), LIBCM.DLL (... .....
............ .....) . LIBCN.DLL (..........). . ... ....... vprintf() .
puts() ....... ....... ...... ...... .......... . ...... puts() ... ...
... ......... ... .............. ..., ....... ...... ........ ...... .
......... (puts() ......... ....... ...... .............). ... .. .....
....... (...... . DLL .. ........ ..... ....) ... vprintf() ....... ..
.... .... ...... . ....... ....... ............ ...... ., ..... .......
......... ..... ..... ... ... .. .. .. ...., ... asm2.asm:
.386p
EXTRN puts:BYTE
_DATA SEGMENT BYTE PUBLIC USE32 'STACK'
_msg:
DB "I'm really small!"
_DATA ENDS
_TEXT SEGMENT BYTE PUBLIC USE32 'CODE'
ASSUME CS:_TEXT, DS:_TEXT, SS:_TEXT
startup:
mov eax,offset flat:_msg
jmp near puts
_TEXT ENDS
END startup
........ ... puts() (. vprintf() ....) ....... . ........ .........
...... ............... NULL, . ....... .. DosPutMessage. .. ... ... ..
..... (.... ......?) ... ....... ...... .............. ................
......, .. .... .... ........ ...... ...... .... ....... .......
......... - ... .., ... puts() .......... .......... _Optlink ...
...... ......., ... ....... ......... .......... ..... ........, . ..
..... .....
... ......... .......... ...... .......... ..... ............ ......
....... ...... puts(), ... ...... .. .... ........ ..... puts() .......
......., .......... ........ ............... . ... ...... .......
....... .... ........., ... ......... ... .. ............. ....... RET .
..... . ... ... ....., ..... ..... ......... ....... .. puts()
.................. ...... . ..... ............ ......, ... .........
....... ./... LxLite ... .......... 4 ...... .... ......... ...... .....
...... . 318 ..... ........ ............ .. ....... ........., .........
..... .. .... .......... . ......., ... .. ....., ...-.. ......, ....
...... ........... .......
...... ....... ......... .. ............. ............
..... ....... ........ ........-..........., ... ......... ......... ..
45 .... ....... ..... ... ...... .... .........., ...... ... ......... .
... .......... ..... ....... ............. . ..... ...... ...., .......
..... ...... .. .......... ... .. ..... .... ......, .. .......... ..
........, ... ........ . ........ asm3.asm:
.386p
EXTRN puts:BYTE
_TEXT SEGMENT BYTE PUBLIC USE32 'STACK'
ASSUME CS:_TEXT, DS:_TEXT, SS:_TEXT
_msg:
DB "I'm really small!",0
startup:
mov eax,offset flat:_msg
jmp near puts
_TEXT ENDS
END startup
.., . ......... ...... .... ....... ! .... ....... .. ..... .....
............, .. ... ........... . ........ . ... ........ ... .....
....., ......... ..... ...... ...... 283 ..... .. ........ ........
........-...........! . ..... .. ... ......... ? ... ... ..... ....
........... .....: ............. ........... ......! ... ............
..... ........... ...... ... ...... . ... ........ ........... ......,
.. ...... ............ ...... ... (.exe). ...... .... .......... ..... -
... ...... .......... .......... ....... MOV ........ .... .... .
........... ...... ..... ... JMP ........ ...... .... .... (...... ...
..... ........ ...... . ..... .......... .. ..... ........ .........).
... .........., ... .. ..... ... ....... MOV ........ . EAX. ... .....
10000H (64K) ...... ... . ........ ...... ...... ........... ......
...... ........... .. ..... ....... Knut St. Osmundsen ..... .....
.......... ..... ........ ........ 10000H . EAX ...... . 3 ..... .....
... ......... ...... ......... ...... ......... (asm4.asm):
.386p
EXTRN puts:BYTE
_TEXT SEGMENT BYTE PUBLIC USE32 'STACK'
ASSUME CS:_TEXT, DS:_TEXT, SS:_TEXT
_msg:
DB "I'm really small!",0
startup:
dec ax
inc eax
jmp near puts
_TEXT ENDS
END startup
. ... ......., ....... . ........... ... ......... ............ ......:
wasm asm4.asm
wlink f asm4 n .exe imp puts LIBCS.362 op st=32k
ren .exe asm4.exe
lxlite /T /ZS:512 asm4.exe
......... .................. ...... WLINK, imp puts LIBCS.362 ..........
....... ... ...... (...) ...... .... ............. .. .......... LIBCS
... ....... 362. .. ..... .. ............ . LIBCM, .. ... ... ....
....-......... ..... .... ...., .. . . LIBCS ... ........ .......... ...
........ ...... ........, .. ... ..... ..... . ....... EXEHDR. .......
........ ............ .......... ......., .. ... ......... ....... .
..... ....... ...... .. ........... .. ...... ... ...... ... ... ......
(......... ? ..... .... ;-) ... ....... .. ... ... .. .......... Warp 4
Toolk ... ......... ..... .........
...... ....... ........ ..... ......... n .exe (...). ... .........
WLINK ............ ...... ... ... ..... ............ ....... . ........
...... ...... 274 .....! ... ... . ........... ........... Watcom (..
....... .... . ... .....), .........-.......... .. Knut-. .. .... ....
...... .......... ....... ..... ............. ........ ........... .
....... WLINK . ILINK, . .. .......... ....... ......... .
................. .... ..., ...... . 274 .... ...... .. .....!
......... ..... ........ ... .... ........ ... ......... ..... ... .
.... ....... ... ......... ............ ...... .. ..... ........ .. ...
.......... ............., ...... ... ......... .... .......... .........
........... ........... x86 . ..... .......... OS/2.
......... Stock
. .......... ....... . ....... ... ...... ...... ..........
................ ........ .......... ...... .. .......... ........
....... .......... ... ............. ........... ... ....... ..........
........ ...... ......... ..........., ..... ... ......... .............
..... . ....... . ..... ....... . .......... .... . ............. ....
.......... ! mini.c:
void puts(char *s);
#pragma data_seg("MYDATA", "STACK")
#pragma code_seg("MYDATA", "STACK")
char msg[] = "I'm really small!";
void _System startup(void) .
puts(msg);
.
........... ...... .......... .......... .........:
wcc386 -s -g=DGROUP mini.c
wlink sys os2v2 name .exe f mini imp puts_ LIBCM.362 op start=startup,st=32k,nod
ren .exe minic.exe
lxLite.exe /T /ZS:512 minic.exe
........ ........... ......, minic.exe, ..... ...... ..... 276 ....! ...
... ........? ....... ........ .......... ...... .... ....... ..... C .
............ .......... ......... ..... C .......... ... .............:
mov eax,offset flat:_msg
jmp near puts
.., .......... ......... .... . ............. ... ........., .........
... ........! ..-.. .... ... .......... .. ..... .......... ...
.............. ... ..... ..........., .. .. ..... ........ ........
...... ......... ........... .. .... ........., ...... C .......... ...
...... ......... ... ............ .........
...... ..... ........ .., ... .......... . ...... ....... .......... ...
.......... ... .......... ..... .... ............ ... ..... ...........
...... ............ ...... #pragma data_seg . code_seg ......
........... ...... (... .............. . ........... ............ .
...... .... . ....) . .......... ....... - ... ...... .... .........
...... . .... . ..... ...... ...... . ... ....... .. ........... . .....
......... .. ...... ... ..... ..... STACK? ... ...... ... WLINK .......
............ ........ ....... ... .......... ... ...... ............
.......
...... ..... ............ .... -s (......... ........ .....) ......
......... .... .. ....... ........ ..... ... ........ ...... .... . ...
....... ...., ....... .. ..... ........... .......... C (runtime). ...
... ......... .... -g ......... ....... ... ..... ........ ....... .....
... ...... .... DGROUP, . ......... ...... ...... .. ......... ........
...... . ..... . ....... Watcom ...... ..... . .... .........
..... ....... ...... . ...., ... .. ............ ... ............
......, .. ........... ...... ................ ..... NOD - ...
.......... .. NODefaultlibs (... .......... .. .........) . .........
..... .......... .. ......... (... ..... .......... ..........
........... ...... . ........ ......). ...... .. ....... ..... .......
...... -zl ............
...... .... . ...... ........... . ..... start. . ............ ........
.. ............ ......... END ... ........ ..... ...... .......... . C
... ..... ..........., ...... IBM C ........... ...... #pragma entry.
Watcom C .. ..... ..... ......, .. ......... ....... ..... ...... ......
start=symbol ....... WLINK.
........ ...... ......... ...... .. C ........ ........ ..... .......
... ............, .. ... ... .. ....... ....... ... .......... .........
............ ............ ........... ....... . ............, .........
..... .......... ........... ..... ............. . ......... .........
.......... . ...... ...... .., ... ... ........... ...... .. ....... .
... ... .. ......, .. ......... ...... .. ....... ..... (;-)))), .....
....).
..........
. ......., ... ... ......... ........... .. ........... .........
......... ... ... ... ....... .. ........... . ...... ...... .. .......
......... ...... ....... .. ....... ......... . ..... .........., ...
... ...... .. ...... ... ....... ......, .... .. ........... ..........
......., .. .. ....... ....... ........... ....... .. . ........... ..
..... (..-..-.., . .... ... ... ...... .....)! .., ..... ......, .... ..
...... ... ...... ....... ..... ......... ... .......... ........
........... ........, ..... ... ..... .. ...... MichalN@prodigy.net.
..... ......: Michal Necasek
..........: ...... ........
Commenti: Reader 2001-10-03 00:39:27 | I'm waiting for continuation... | .... 2001-10-03 02:30:24 | . ... ... ...? .... ........... ........! | Eugene Gorbunoff 2001-10-06 00:52:59 | .. 5-.. ....... ...... .......... ..........
...-...... ........ ...... ..... ......... ......... ............ . ..., ... .. ........... ..... ........? :) .. .......... ...... ........... ... ...... .. ......, ..... .... ... ..... ........... | Rinat H. Sadretdinow 2001-10-11 14:32:55 | . ... .. ........ ......... ..Custom''? | Eugene Gorbunoff 2001-10-25 13:53:49 | ........... ...... .......... .......... .. ....... ...... ....... .... .... - ....... ....... ... .......... . ....
| Igor Vanin 2001-10-25 16:15:03 | 2EG:
.. ...... ......., ... . ......... custom .. .... ....... .......... . ....... ...........?
| Eugene Gorbunoff 2001-10-29 00:23:51 | . .... ......., ... .... .. ........ ........ . ...... . ....... ....... ... ..............
. ......... .....? | Timur Kazimirov 2001-10-30 04:47:58 | ..., ........... ;) ., ......, .. ... . ......... ....., .. ... ..... - .......... | Igor Vanin 2001-10-31 17:38:19 | 5 ....... ...... .... .......... ........., . 29 ....... ....... ... .............? ... ...? :-)
|
Commenta questo articolo.
|