GEN.EXE
Aus FreedsaWiki
Inhaltsverzeichnis |
Allgemeines
- Arbeitet im Grafikmodus 0x13 (320x200x8bit)
- Setzt beim Beenden auf Grafikmodus=0x3 (80x25)/Page=0
Argumente
GEN.EXE (V1.05) kann mit Argumenten aufgerufen werden, was SCHICKM.EXE (V3.02) auch tut.
| Argument Nummer | Funktion | Werte |
| 1 | ??? | b |
| 2 | Schwierigkeitsgrad | n=Anfänger(Novice)/a=Fortgeschrittener(Advanced) |
| 3 | CD-Unterstützung | 0=nein/1=ja |
Wichtige Offsets
Segment 0x0000 C-Library
0x0000 _Startup 0x017d _Save_IntHandlers 0x01ed ??? 0x0229 ??? 0x0231 ??? 0x02dc _dos_close() 0x02f2 _dos_open() 0x0328 ??? 0x03a4 ??? 0x03df ??? 0x0412 ??? 0x0425 ???get_system_time() 0x0438 farptr *dos_getintvec(unsigned char nr) 0x0447 ??? dos_setintvec(unsigned char nr, farptr *isr) 0x045b ??? 0x072d seek()??? 0x078e rand()??? 0x07c5 read()??? 0x0945 ??? 0x0f68 ??? 0x16c7 ??? 0x1801 ??? 0x1813 ??? 0x20bc close() 0x20e4 _close() 0x224a ??? 0x254e memcpy() 0x2596 memset() 0x2607 memmove() 0x2655 open() 0x27c4 _open() 0x2d53 ??? 0x2d9b strcat() 0x2dd5 strcpy() 0x2dfe strlen() 0x2e1d strncmp() 0x2e55 strncpy()
Segment 0x0364 CD-ROM-Lib
0x0300 ??? 0x033b ???(void) 0x0465 ??? 0x0600 ???
Segment 0x03C6 MAIN
0x000b ???
0x0034 ???Liest SOUND.CFG und schaut ob die CD da ist
0x0083 ???
0x00ac ???
0x068c Int0x78-ISR
0x0829 ???
0x09d1 ???
0x09db ???
0x0a0d ???
0x0ae4 ???
0x0f7c ???
0x14f6 ??? Läd HEADS.DAT/POPUP.DAT/SEX.DAT/DMENGE.DAT
0x15df NVF-Loader ???
0x1af4 OpenAndSeekDatFile(Archivindex) ???
0x1bb2 ???
0x1c34 ReadFromDatFile() ???
0x1c7b unsigned short blah() { return 0;}
0x1cc8 Wait() ???
0x1ce9 ???
0x1d8f ???InitGraph(???)
0x1dbe ???
0x1ecc DrawPicture() ??? ATTIC/FANPRO/GENTIT.DAT
0x1fe0 ClearScreen()???
0x2024 ???(void)
0x2ca1 AskLevel(???)
0x3217 _do_Gen(void)
0x35d0 ???
0x40d9 ???
0x6c20 ???
0x6cf6 void PlayIntro(void)
0x72b3 Int0x1c-Timer-ISR
0x72e7 ???
0x730b ???
0x7322 _main(int argc, char **argv, char **env)
0x7446 ???Läd FONT6 und GENTEXT
0x7635 ???Setzt die Palettenfarben für 0x00, 0xff, 0xd8-0xdf, 0xc8-0xca, 0x40-0x5f, 0x20-0x3f
0x7664 ???
Segment 0x0B2D
3 Subroutinen die per far-call aufgerufen werden.
0x000b ??? 0x0029 ??? 0x007d ???
Segment 0x0B39 PowerPack-Decompressor
Entpackt Crunchmode 2 und 3 Dateien
1 Souboutine die per far-call aufgerufen wird.
0x000c _decomp(farptr *destination, farptr *source, long compsize)
Segment 0x0B6B Rasterlib
Bibliothek für Rastergrafik die in allen Exe-Dateien (ausser dem Intro) genutzt wird.
In GEN.EXE werden diese 13 Subroutinen per far-call aufgerufen.
0x0008 SetVideoMode 0x001e SetDisplayPage 0x0034 SaveDisplayStat 0x00de SetColor 0x0100 SetPalette 0x0127 void ??? 0x0184 DrawDots 0x01f3 DrawPic 0x02b4 void ??? 0x02e3 FillRect 0x038c SwapU16 0x039f void ??? 0x0445 ???
Segment 0x0BB2
0x06d7 ??? 0x0711 ??? nur iret ??? 0x071b ??? 0x0a24 ???(0x4 byte) 0x0adc ??? 0x0b02 ???(0xa byte) 0x0b08 ???(0xa byte) 0x0c47 ??? 0x0c4d ??? 0x0c53 ???(0x4 byte) 0x0c59 ??? 0x0c5f ??? 0x0c65 ???(0x4 byte) 0x0c6b ???(0xa byte) 0x0c83 ???(0x4 byte) 0x0c89 ???(0x4 byte) 0x0c95 ???(0x4 byte)
Segment 0x0CC7 Datensegment
0x113b struct rgb[0x20] (Leere Farbtabelle/alles schwarz) 0x119b struct rgb[0x20] (Farbtabelle für Farben 0x40-0x5f) 0x1cb9 struct rgb[0x10] (Farbtabelle für ATTIC-Animation) 0x1d49 struct rgb[0x1] (Farbe für 0xff/ weiss) 0x1d4c struct rgb[0x1] (Farbe für 0x00/ schwarz) 0x1d4f struct rgb[0x8] (Farbtabelle für Farben 0xd8-0xdf) 0x1d67 struct rgb[0x3] (Farbtabelle für Farben 0xc8-0xca) 0x1d70 struct rgb[0x20] (Farbtabelle für Farben 0x20-0x3f)
0x1fb0 Handle dsagen.dat
0x247c Offset der alten Timer-ISR 0x247e Segment der alten Timer-ISR 0x3f30 PositionToSeek
0x3f5e integer argv[2][1] 0x3f60 word NoIntro
0x40bf word Level (1=Anfänger/2=Fortgeschrittener) 0x40c1 ptr16:16 0x40c5 word PictureWidth 0x40c7 word PictureHeight 0x40c9 word 0x40cb word 0x40cd word 0x40cf word 0x40d1 word 0x40d3 word 0x40d5 word 0x40d7 word
0x459f word
0x4773 ptr16:16 Zeiger zum Dateiinhalt
0x47cb ptr16:16 0x47d9 word 0x47db word OldScreenPage 0x47dd word OldScreenMode 0x47df word OldScreenColumns 0x47e1 word OldScreenRows

