EXE2TUOX Verze 0.5 - popis

Sepsal: Zdenek SAWA

EXE2TUOX je konverzni utilitka slouzici k prevodu EXE souboru z DOSu do TUOXu.

Jak postupovat pri prevodu:

  • Vytvorte program v C v Borland C++ 3.1 (upozornuji v C, nikoliv v C++ - numuselo by to dobre fungovat) s priponou .C. Tento program by nemel obsahovat volani funkci ze standardnich Borlandskych knihoven, ale pouze funkci z knihoven pro TUOX. Take by nemel obsahovat ani pointry ani funkce deklarovane jako far nebo huge. Rovnez jsou nepouzitelne #pragma startup a #pragma exit. Tedy nejlepe se vyhnout vsemu co neodpovida ANSI C. Taky by program nemel pouzivat datove typy float a double
  • V prostredi BC 3.1 zvolte dialog Options/Compiler/Code Generation. Vyberte model SMALL. Zaskrtnete Assume SS Equals DS - Always.
  • Zvolte dialog Options/Compiler/Advanced Code Generation. Vyberte Floating Point - None. Vyberte Instruction Set - 8088/8086. Zaskrtnete Generate Underbars.
  • Zvolte dialog Options/Linker/Settings. Zruste zaskrtnuti "No stack" warning.
  • Zvolte dialog Options/Directories. Do pole Library Directories napiste misto puvodniho adresare nazev adresare, kde mate ulozeny knihovny pro TUOX a kde je take ulozen soubor C0S.OBJ patrici k EXE2TUOX.
  • Aplikaci prelozte Compile/Build All a vratte se do DOSu.
    ! ! ! V A R O V A N I ! ! ! Nespoustejte prelozeny .EXE soubor pod DOSem!
    Nepouzivejte program TDSTRIP, debug informace se stejne do vysledneho souboru nezaradi.
  • Z prikazove radky zpustte program EXE2TUOX, jako parametr mu musite zadat nazev vaseho EXE souboru. Priponu nemusite zadavat, pokud neni bere se automaticky jako .EXE. Vysledny program pro TUOX se bude jmenovat stejne jako .EXE soubor s tim rozdilem ze nebude mit zadnou priponu. Napisete-li tedy napr. EXE2TUOX HELLO, vytvori se podle souboru HELLO.EXE soubor HELLO, ktery bude spustitelny pod TUOXem.
    Pokud chcete, aby se vysledny soubor jmenoval jinak, zadejte tento nazev jako dalsi parametr prikazove radky.
    Jako dalsi parametr muzete zadat "-s#", kde # je cislo (dekadicke, hexadecimalni nebo oktalove) zapsane ceckovskou konvenci. Toto cislo urcuje velikost pameti v bytech, ktera se vyhradi pro stack a jako gap. Defaultne jsou to 4kB. Tato hodnota se projevi pouze v hlavicce souboru pro TUOX. Pamatujte, ze soucet pameti pro data, bss, stack a gap by nemel prekrocit 64kB.
    Priklad: EXE2TUOX -s0x1234 HELLO.EXE HELLO2.TUX
    Pokud zadate parametry prikazove radky spatne, objevi se strucna napoveda k pouziti programu. Pokud vse probehne v poradku, vypise se tabulka obsahujici adresy zacatku segmentu v puvodnim .EXE souboru a jejich delky. Jedna se o nasledujici segmenty: CODE - kod programu, DATA - inicializovana data, BSS - neinicializovana data, STACK + GAP - zasobnik a volny prostor (u nej je uvedena samozrejme pouze velikost).
    Pokud behem provadeni dojde k chybe objevi se chybove hlaseni.
  • Pozn: Vyse uvedene instrukce berte s rezervou, kdyby jste v nich nebo v programu EXE2TUOX objevili chyby tak mi to reknete.