|
ArcaOS 5.0 Russian
Russian ARCAOS exists and it's available since the middle of 2017.
All versions are supported: 5.0, 5.0.1, 5.0.2.
eCo Software is able release OS/2 LIP packages for any other language
(German, Dutch, Brazilian Portuguese, Spanish, Sweden, etc)
|
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
..........: ...... ........
Test the program:
|
PMView work on your computer during several years. It's time to reward the developer (+ send bug-reports and ideas to the developer).
|
Comments: 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 ....... ....... ... .............? ... ...? :-)
|
Comment this article.
|
The development of software for eComStation is profitable: a) system API is effective and considered. b) The market is not so infinite as Windows. All eCS users know about your product. c) Every developer is influencing on the OS significantly. |
|
|
|
IBM OS/2 Warp
|