| 
     | 
    
 
     | 
 
AD: Upgrade ArcaOS to NeoWPS level
 
  -  Install original PNG icons drawed by designer, specialized at OS/2 adornation.
  
 -  Install eSchemes 2019 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
  
..........: ...... ........   
    
      
         | 
          Test the program:
          | 
    
eSchemes - change the colors and buttons on the desktop.
   
  |   
 Komentarze: 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 ....... ....... ... .............? ... ...? :-)
 
  |  
 Komentarz artykuЁu. 
  
  
  
    
   
     | 
    
Does ACPI.PSD work on your notebook? Please press Fn + F1, Fn + F2, .. keys and collect the codes. Read more      | 
  
    | 
   
 
 | 
  | 
 
 
 
 
IBM OS/2 Warp
  |