text: // C:\diabpsx\PSXSRC\GMAN.CPP
  
  #include "types.h"
  
  // address: 0x800A1A1C
  // line start: 1294
  // line end:   1299
  void GM_Open__Fv() {
  	{
  		// register: 3
  		register int f;
  	}
  }
  
  
  // address: 0x8007E0CC
  // size: 0x6C
  // line start: 112
  // line end:   118
  struct TextDat *__7TextDat(struct TextDat *this) {
  }
  
  
  // address: 0x8007E10C
  // line start: 128
  // line end:   129
  void ___7TextDat(struct TextDat *this, int __in_chrg) {
  }
  
  
  // address: 0x8007E154
  // line start: 139
  // line end:   197
  void Use__7TextDat(struct TextDat *this) {
  	{
  		{
  			// address: 0xFFFFFFC0
  			// size: 0x28
  			auto char NameBuff[40];
  			{
  				{
  					// address: 0xFFFFFFE8
  					// size: 0x8
  					auto struct RECT R;
  					// register: 18
  					register int DecompSize;
  				}
  			}
  		}
  	}
  }
  
  
  // address: 0x8007E348
  // line start: 215
  // line end:   243
  bool TpLoadCallBack__FPUciib(unsigned char *Mem, int ReadSoFar, int Size, bool LastChunk) {
  	// address: 0x8012CE14
  	static int TpX;
  	// address: 0x8012CE18
  	static int TpY;
  	{
  		// register: 16
  		register int f;
  		{
  			// register: 3
  			register int Dx;
  			// register: 2
  			register int Dy;
  		}
  	}
  }
  
  
  // address: 0x8007E418
  // line start: 246
  // line end:   270
  void StreamLoadTP__7TextDat(struct TextDat *this) {
  	// address: 0xFFFFFFE0
  	// size: 0x14
  	auto char TheName[20];
  }
  
  
  // address: 0x8007E4D0
  // line start: 285
  // line end:   298
  void FinishedUsing__7TextDat(struct TextDat *this) {
  }
  
  
  // address: 0x8007E52C
  // line start: 309
  // line end:   316
  void MakeBlockOffsetTab__7TextDat(struct TextDat *this) {
  	{
  		{
  		}
  	}
  }
  
  
  // address: 0x8007E59C
  // line start: 321
  // line end:   343
  long MakeOffsetTab__C9CBlockHdr(struct CBlockHdr *this) {
  	// register: 21
  	register long hndRet;
  	// register: 18
  	// size: 0xC
  	register struct CBlock *MyBlock;
  	// register: 19
  	register int *Tab;
  	{
  		// register: 16
  		register unsigned int f;
  	}
  }
  
  
  // address: 0x8007E6C8
  // line start: 353
  // line end:   411
  void SetUVTp__7TextDatP9FRAME_HDRP8POLY_FT4ii(struct TextDat *this, struct FRAME_HDR *Fr, struct POLY_FT4 *FT4, int XFlip, int YFlip) {
  	// register: 2
  	register int Rotated;
  	// register: 12
  	register int Tpage;
  	// register: 3
  	register int U;
  	// register: 9
  	register int V;
  	// register: 8
  	register int W;
  	// register: 10
  	register int H;
  }
  
  
  // address: 0x8007E7C4
  // size: 0x28
  // line start: 427
  // line end:   564
  struct POLY_FT4 *PrintMonster__7TextDatiiibi(struct TextDat *this, int Frm, int X, int Y, bool XFlip, int OtPos) {
  	{
  		{
  			// address: 0xFFFFFFC8
  			// size: 0x28
  			auto struct POLY_FT4 *FT4;
  			// register: 18
  			// size: 0xC
  			register struct FRAME_HDR *Fr;
  			// register: 7
  			register int W;
  			// register: 8
  			register int H;
  			{
  				{
  					// register: 16
  					register unsigned char *Dest;
  					// register: 17
  					register int DecompSize;
  					// register: 16
  					register unsigned char *CompFrAddr;
  					// register: 22
  					register unsigned long NumOfPrims;
  					// register: 17
  					// size: 0x44
  					register struct DR_LOAD2 *DrPtr;
  					// register: 4
  					register int TpX;
  					// register: 5
  					register int TpY;
  					// register: 4
  					register int U;
  					// register: 5
  					register int V;
  					// register: 3
  					register int W;
  					// register: 8
  					register int H;
  					{
  						// register: 19
  						register unsigned int f;
  						{
  							// address: 0xFFFFFFD0
  							// size: 0x8
  							auto struct RECT mrect;
  						}
  					}
  				}
  			}
  		}
  	}
  }
  
  
  // address: 0x8007EBCC
  // line start: 570
  // line end:   627
  void PrepareFt4__7TextDatP8POLY_FT4iiiii(struct TextDat *this, struct POLY_FT4 *FT4, int Frm, int X, int Y, int XFlip, int YFlip) {
  	// register: 19
  	// size: 0xC
  	register struct FRAME_HDR *Fr;
  	// register: 21
  	register int W;
  	// register: 22
  	register int H;
  	{
  		{
  			{
  				{
  					// address: 0xFFFFFFD0
  					// size: 0x8
  					auto struct RECT R;
  					{
  						{
  							// register: 4
  							register unsigned char sw;
  						}
  					}
  				}
  			}
  		}
  	}
  }
  
  
  // address: 0x8007EE38
  // line start: 635
  // line end:   669
  unsigned char *GetDecompBufffer__7TextDati(struct TextDat *this, int Size) {
  	// register: 18
  	register long *DecArray;
  	// register: 19
  	register int DecIndex;
  	// register: 16
  	register long hnd;
  	// register: 20
  	register unsigned char *RetAddr;
  }
  
  
  // address: 0x8007EF98
  // line start: 674
  // line end:   732
  void SetUVTpGT4__7TextDatP9FRAME_HDRP8POLY_GT4ii(struct TextDat *this, struct FRAME_HDR *Fr, struct POLY_GT4 *FT4, int XFlip, int YFlip) {
  	// register: 2
  	register int Rotated;
  	// register: 12
  	register int Tpage;
  	// register: 3
  	register int U;
  	// register: 9
  	register int V;
  	// register: 8
  	register int W;
  	// register: 10
  	register int H;
  }
  
  
  // address: 0x8007F094
  // line start: 736
  // line end:   807
  void PrepareGt4__7TextDatP8POLY_GT4iiiii(struct TextDat *this, struct POLY_GT4 *GT4, int Frm, int X, int Y, int XFlip, int YFlip) {
  	// register: 19
  	// size: 0xC
  	register struct FRAME_HDR *Fr;
  	// register: 20
  	register int W;
  	// register: 22
  	register int H;
  	// register: 4
  	register unsigned char sw;
  	// register: 17
  	// size: 0x8
  	register struct PAL *Pal;
  	{
  		{
  			{
  				// address: 0xFFFFFFD0
  				// size: 0x8
  				auto struct RECT R;
  				{
  					{
  						// register: 2
  						register int DecX;
  						// register: 2
  						register int DecY;
  						// address: 0xFFFFFFD0
  						// size: 0x8
  						auto struct RECT R;
  					}
  				}
  			}
  		}
  	}
  }
  
  
  // address: 0x8007F2F0
  // line start: 814
  // line end:   841
  void SetUVTpGT3__7TextDatP9FRAME_HDRP8POLY_GT3(struct TextDat *this, struct FRAME_HDR *Fr, struct POLY_GT3 *GT3) {
  	// register: 2
  	register int Rotated;
  	// register: 10
  	register int Tpage;
  	// register: 4
  	register int U;
  	// register: 9
  	register int V;
  	// register: 7
  	register int W;
  	// register: 3
  	register int H;
  }
  
  
  // address: 0x8007F370
  // line start: 846
  // line end:   904
  void PrepareGt3__7TextDatP8POLY_GT3iii(struct TextDat *this, struct POLY_GT3 *GT3, int Frm, int X, int Y) {
  	// register: 19
  	// size: 0xC
  	register struct FRAME_HDR *Fr;
  	// register: 21
  	register int W;
  	// register: 17
  	register int H;
  	// register: 16
  	// size: 0x8
  	register struct PAL *Pal;
  	{
  		{
  			{
  				// address: 0xFFFFFFD8
  				// size: 0x8
  				auto struct RECT R;
  				{
  					{
  						// register: 2
  						register int DecX;
  						// register: 2
  						register int DecY;
  						// address: 0xFFFFFFD8
  						// size: 0x8
  						auto struct RECT R;
  					}
  				}
  			}
  		}
  	}
  }
  
  
  // address: 0x8007F534
  // size: 0x28
  // line start: 918
  // line end:   937
  struct POLY_FT4 *PrintFt4__7TextDatiiiiii(struct TextDat *this, int Frm, int X, int Y, int XFlip, int OtPos, int YFlip) {
  	// address: 0xFFFFFFD8
  	// size: 0x28
  	auto struct POLY_FT4 *FT4;
  }
  
  
  // address: 0x8007F688
  // size: 0x34
  // line start: 943
  // line end:   962
  struct POLY_GT4 *PrintGt4__7TextDatiiiiii(struct TextDat *this, int Frm, int X, int Y, int XFlip, int OtPos, int YFlip) {
  	// address: 0xFFFFFFD8
  	// size: 0x34
  	auto struct POLY_GT4 *GT4;
  }
  
  
  // address: 0x8007F7DC
  // size: 0x28
  // line start: 968
  // line end:   984
  struct POLY_GT3 *PrintGt3__7TextDatiiii(struct TextDat *this, int Frm, int X, int Y, int OtPos) {
  	// address: 0xFFFFFFE0
  	// size: 0x28
  	auto struct POLY_GT3 *GT3;
  }
  
  
  // address: 0x8007F8C0
  // line start: 989
  // line end:   1027
  void DecompFrame__7TextDatP9FRAME_HDR(struct TextDat *this, struct FRAME_HDR *Fr) {
  	// register: 18
  	register unsigned char *CompFrAddr;
  	// register: 20
  	register int DecompSize;
  	// register: 16
  	register unsigned char *Dest;
  }
  
  
  // address: 0x8007FA14
  // line start: 1036
  // line end:   1066
  void MakeCreatureOffsetTab__7TextDat(struct TextDat *this) {
  	// register: 17
  	register int NumOfCreatures;
  	{
  		{
  			// register: 16
  			register unsigned char *ThisAddr;
  			{
  				// register: 17
  				register unsigned int f;
  				{
  					// register: 16
  					register int f;
  					{
  					}
  				}
  			}
  		}
  	}
  }
  
  
  // address: 0x8007FB54
  // line start: 1076
  // line end:   1100
  void MakePalOffsetTab__7TextDat(struct TextDat *this) {
  	// register: 5
  	// size: 0x8
  	register struct PAL *ThisPal;
  	{
  		// register: 6
  		register unsigned int f;
  	}
  }
  
  
  // address: 0x8007FC50
  // line start: 1157
  // line end:   1167
  void InitData__7TextDat(struct TextDat *this) {
  }
  
  
  // address: 0x8007FC7C
  // line start: 1177
  // line end:   1212
  void DumpData__7TextDat(struct TextDat *this) {
  }
  
  
  // address: 0x8007FDC4
  // size: 0x6C
  // line start: 1223
  // line end:   1243
  struct TextDat *GM_UseTexData__Fi(int Id) {
  	{
  		{
  			// register: 18
  			// size: 0x6C
  			register struct TextDat *Dat2Use;
  			// register: 20
  			// size: 0x4
  			register struct CTextFileInfo **Tab;
  			{
  				// register: 17
  				register int f;
  			}
  		}
  	}
  }
  
  
  // address: 0x8007FEE4
  // line start: 1253
  // line end:   1257
  void GM_FinishedUsing__FP7TextDat(struct TextDat *Fin) {
  }
  
  
  // address: 0x8007FF38
  // line start: 1261
  // line end:   1282
  void SetPal__7TextDatP9FRAME_HDRP8POLY_FT4(struct TextDat *this, struct FRAME_HDR *Fr, struct POLY_FT4 *FT4) {
  	// register: 17
  	// size: 0x8
  	register struct PAL *Pal;
  	{
  		{
  			{
  				// address: 0xFFFFFFE8
  				// size: 0x8
  				auto struct RECT R;
  			}
  		}
  	}
  }
  
  
  // address: 0x80080000
  // line start: 1309
  // line end:   1310
  int GetFrNum__7TextDatiiii(struct TextDat *this, int Creature, int Action, int Direction, int Frame) {
  }
  
  
  // address: 0x80080054
  // line start: 1314
  // line end:   1315
  bool IsDirAliased__7TextDatiii(struct TextDat *this, int Creature, int Action, int Direction) {
  }
  
  
  // address: 0x800800AC
  // line start: 1324
  // line end:   1354
  void DoDecompRequests__7TextDat(struct TextDat *this) {
  	// register: 17
  	register long *DecArray;
  	{
  		// register: 18
  		register int f;
  		{
  		}
  	}
  }
  
  
  // address: 0x800801D0
  // line start: 1392
  // line end:   1418
  void FindDecompArea__7TextDatR4RECT(struct TextDat *this, struct RECT *R) {
  	// register: 8
  	register int NumOfFrames;
  	// register: 4
  	register int Widest;
  	// register: 16
  	register int Tallest;
  	{
  		// register: 7
  		register int f;
  		{
  			// register: 3
  			register int w;
  			// register: 5
  			register int h;
  		}
  	}
  }
  
  
  // address: 0x800802A4
  // size: 0x4
  // line start: 1422
  // line end:   1424
  struct CTextFileInfo *GetFileInfo__7TextDati(struct TextDat *this, int Id) {
  }
  
  
  // address: 0x800802F4
  // line start: 1430
  // line end:   1431
  int GetSize__C15CCreatureAction(struct CCreatureAction *this) {
  }
  
  
  // address: 0x8008031C
  // line start: 1435
  // line end:   1441
  int GetFrNum__C15CCreatureActionii(struct CCreatureAction *this, int Direction, int Frame) {
  	// register: 2
  	register int LocFrame;
  }
  
  
  // address: 0x800803C4
  // line start: 1447
  // line end:   1475
  void InitDirRemap__15CCreatureAction(struct CCreatureAction *this) {
  	// address: 0xFFFFFFE0
  	// size: 0x20
  	auto bool Dir2Remap[8];
  	// register: 7
  	register int f;
  	// register: 11
  	register int RemapNum;
  	{
  		{
  			{
  				{
  					// register: 9
  					register int OrigNum;
  					{
  						// register: 6
  						register int g;
  					}
  				}
  			}
  		}
  	}
  }
  
  
  // address: 0x80080484
  // line start: 1479
  // line end:   1483
  int GetFrNum__C12CCreatureHdriii(struct CCreatureHdr *this, int Action, int Direction, int Frame) {
  }
  
  
  // address: 0x800804C8
  // size: 0xE
  // line start: 1487
  // line end:   1495
  struct CCreatureAction *GetAction__C12CCreatureHdri(struct CCreatureHdr *this, int ActNum) {
  	// register: 17
  	// size: 0xE
  	register struct CCreatureAction *CAct;
  	{
  		// register: 16
  		register int f;
  	}
  }
  
  
  // address: 0x80080558
  // line start: 1499
  // line end:   1506
  void InitActionDirRemaps__12CCreatureHdr(struct CCreatureHdr *this) {
  	// register: 17
  	// size: 0xE
  	register struct CCreatureAction *CAct;
  	{
  		// register: 16
  		register int f;
  	}
  }
  
  
  // address: 0x800805C8
  // line start: 1511
  // line end:   1522
  int GetSize__C12CCreatureHdr(struct CCreatureHdr *this) {
  	// register: 18
  	register int Size;
  	// register: 17
  	// size: 0xE
  	register struct CCreatureAction *CAct;
  	{
  		// register: 16
  		register int f;
  		{
  			// register: 2
  			register int ThisSize;
  		}
  	}
  }
  
  
  // address: 0x80080634
  // line start: 1530
  // line end:   1532
  long LoadDat__C13CTextFileInfo(struct CTextFileInfo *this) {
  }
  
  
  // address: 0x80080684
  // line start: 1545
  // line end:   1546
  long LoadHdr__C13CTextFileInfo(struct CTextFileInfo *this) {
  }
  
  
  // address: 0x800806AC
  // line start: 1550
  // line end:   1563
  long GetFile__C13CTextFileInfoPc(struct CTextFileInfo *this, char *Ext) {
  	// address: 0xFFFFFFE0
  	// size: 0xD
  	auto char FName[13];
  	// register: 16
  	// size: 0x14
  	register struct FileIO *MyFileIO;
  	// register: 16
  	register long hnd;
  }
  
  
  // address: 0x80080748
  // line start: 1568
  // line end:   1577
  bool HasFile__C13CTextFileInfoPc(struct CTextFileInfo *this, char *Ext) {
  	// address: 0xFFFFFFE0
  	// size: 0xD
  	auto char FName[13];
  	// register: 16
  	// size: 0x14
  	register struct FileIO *MyFileIO;
  }
  
  
  // address: 0x800807B0
  // line start: 1609
  // line end:   1651
  void Un64__FPUcT0l(unsigned char *Src, unsigned char *Dest, long SizeBytes) {
  	// register: 9
  	register unsigned char *EndDest;
  	// register: 7
  	register unsigned long *BigDest;
  	// register: 8
  	register unsigned long Code;
  	// register: 6
  	register unsigned long Run;
  	// register: 3
  	register unsigned long BigCode;
  }
  
  
  // address: 0x80080884
  // size: 0x78
  // line start: 1665
  // line end:   1666
  struct CScreen *__7CScreen(struct CScreen *this) {
  }
  
  
  // address: 0x800808B8
  // line start: 1670
  // line end:   1726
  void Load__7CScreeniii(struct CScreen *this, int Id, int tpx, int tpy) {
  	// register: 8
  	register unsigned char r;
  	// register: 5
  	register unsigned char g;
  	// register: 6
  	register unsigned char b;
  	{
  		{
  			// register: 17
  			// size: 0xC
  			register struct FRAME_HDR *Fr;
  			// address: 0xFFFFFFD8
  			// size: 0x8
  			auto struct RECT R;
  			// register: 17
  			// size: 0x8
  			register struct PAL *Pal;
  			{
  				// register: 16
  				register int i;
  				{
  					{
  						// register: 10
  						register int v;
  						{
  							// register: 2
  							register unsigned short c;
  						}
  					}
  				}
  			}
  		}
  	}
  }
  
  
  // address: 0x80080B34
  // line start: 1731
  // line end:   1733
  void Unload__7CScreen(struct CScreen *this) {
  }
  
  
  // address: 0x80080B58
  // line start: 1737
  // line end:   1766
  void Display__7CScreeniiii(struct CScreen *this, int Id, int tpx, int tpy, int fadeval) {
  	// address: 0xFFFFFFD8
  	// size: 0x28
  	auto struct POLY_FT4 *FT4;
  }
  
  
  // address: 0x80080E38
  // line start: 1774
  // line end:   1782
  void SetRect__5CPartR7TextDatR4RECT(struct CPart *this, struct TextDat *TDat, struct RECT *R) {
  	// register: 2
  	// size: 0xC
  	register struct FRAME_HDR *Fr;
  }
  
  
  // address: 0x80080EB0
  // line start: 1786
  // line end:   1830
  void GetBoundingBox__6CBlockR7TextDatR4RECT(struct CBlock *this, struct TextDat *TDat, struct RECT *R) {
  	// register: 18
  	register int left;
  	// register: 22
  	register int right;
  	// register: 17
  	register int top;
  	// register: 21
  	register int bottom;
  	{
  		{
  			// address: 0xFFFFFFC8
  			// size: 0x8
  			auto struct RECT Pr;
  			{
  				// register: 16
  				register unsigned int f;
  			}
  		}
  	}
  }
  
  
  // address: 0x8008100C
  // line start: 1868
  // line end:   1868
  void _GLOBAL__D_DatPool() {
  }
  
  
  // address: 0x80081064
  // line start: 1868
  // line end:   1868
  void _GLOBAL__I_DatPool() {
  }
  
  
  