\r
Start Stop Length Name Class\r
\r
- 00000H 04FBBH 04FBCH _TEXT CODE\r
- 04FC0H 04FC0H 00000H _FARDATA FAR_DATA\r
- 04FC0H 04FC0H 00000H _FARBSS FAR_BSS\r
- 04FC0H 04FC0H 00000H _OVERLAY_ OVRINFO\r
- 04FC0H 04FC0H 00000H _1STUB_ STUBSEG\r
- 04FC0H 06163H 011A4H _DATA DATA\r
- 06164H 06165H 00002H _CVTSEG DATA\r
- 06166H 0616BH 00006H _SCNSEG DATA\r
- 0616CH 0616CH 00000H _CONST CONST\r
- 0616CH 0617DH 00012H _INIT_ INITDATA\r
- 0617EH 0617EH 00000H _INITEND_ INITDATA\r
- 0617EH 0617EH 00000H _EXIT_ EXITDATA\r
- 0617EH 0617EH 00000H _EXITEND_ EXITDATA\r
- 0617EH 061DFH 00062H _BSS BSS\r
- 061E0H 061E0H 00000H _BSSEND BSSEND\r
- 061E0H 0625FH 00080H _STACK STACK\r
+ 00000H 05880H 05881H _TEXT CODE\r
+ 05890H 05890H 00000H _FARDATA FAR_DATA\r
+ 05890H 05890H 00000H _FARBSS FAR_BSS\r
+ 05890H 05890H 00000H _OVERLAY_ OVRINFO\r
+ 05890H 05890H 00000H _1STUB_ STUBSEG\r
+ 05890H 06941H 010B2H _DATA DATA\r
+ 06942H 06943H 00002H _CVTSEG DATA\r
+ 06944H 06949H 00006H _SCNSEG DATA\r
+ 0694AH 0694AH 00000H _CONST CONST\r
+ 0694AH 06961H 00018H _INIT_ INITDATA\r
+ 06962H 06962H 00000H _INITEND_ INITDATA\r
+ 06962H 06962H 00000H _EXIT_ EXITDATA\r
+ 06962H 06962H 00000H _EXITEND_ EXITDATA\r
+ 06962H 069C9H 00068H _BSS BSS\r
+ 069CAH 069CAH 00000H _BSSEND BSSEND\r
+ 069D0H 06A4FH 00080H _STACK STACK\r
\r
\r
Detailed map of segments\r
\r
0000:0000 028F C=CODE S=_TEXT G=(none) M=c0.ASM ACBP=28\r
- 0000:028F 0283 C=CODE S=_TEXT G=(none) M=EXMMTEST.C ACBP=28\r
- 0000:0512 1947 C=CODE S=_TEXT G=(none) M=16_MM.C ACBP=28\r
- 0000:1E59 0442 C=CODE S=_TEXT G=(none) M=16_HEAD.C ACBP=28\r
- 0000:229B 0232 C=CODE S=_TEXT G=(none) M=16_CA.C ACBP=28\r
- 0000:24CD 0024 C=CODE S=_TEXT G=(none) M=ATEXIT ACBP=28\r
- 0000:24F1 0049 C=CODE S=_TEXT G=(none) M=CLOCK ACBP=28\r
- 0000:253A 0000 C=CODE S=_TEXT G=(none) M=CTYPE ACBP=28\r
- 0000:253A 003D C=CODE S=_TEXT G=(none) M=DOSFATTR ACBP=28\r
- 0000:2577 0089 C=CODE S=_TEXT G=(none) M=EXIT ACBP=28\r
- 0000:2600 0000 C=CODE S=_TEXT G=(none) M=FILES ACBP=28\r
- 0000:2600 0000 C=CODE S=_TEXT G=(none) M=FILES2 ACBP=28\r
- 0000:2600 0000 C=CODE S=_TEXT G=(none) M=FMODE ACBP=28\r
- 0000:2600 00AE C=CODE S=_TEXT G=(none) M=H_LDIV ACBP=28\r
- 0000:26AE 0021 C=CODE S=_TEXT G=(none) M=H_LLSH ACBP=28\r
- 0000:26CF 0021 C=CODE S=_TEXT G=(none) M=H_LURSH ACBP=28\r
- 0000:26F0 0060 C=CODE S=_TEXT G=(none) M=H_PADD ACBP=28\r
- 0000:2750 0028 C=CODE S=_TEXT G=(none) M=H_PSBP ACBP=28\r
- 0000:2778 004B C=CODE S=_TEXT G=(none) M=IOERROR ACBP=28\r
- 0000:27C3 0011 C=CODE S=_TEXT G=(none) M=ISATTY ACBP=28\r
- 0000:27D4 00A2 C=CODE S=_TEXT G=(none) M=LONGTOA ACBP=28\r
- 0000:2876 0029 C=CODE S=_TEXT G=(none) M=LSEEK ACBP=28\r
- 0000:289F 00B0 C=CODE S=_TEXT G=(none) M=MKNAME ACBP=28\r
- 0000:294F 0021 C=CODE S=_TEXT G=(none) M=N_PCMP ACBP=28\r
- 0000:2970 00B2 C=CODE S=_TEXT G=(none) M=SETUPIO ACBP=28\r
- 0000:2A22 0000 C=CODE S=_TEXT G=(none) M=STKLEN ACBP=28\r
- 0000:2A22 002C C=CODE S=_TEXT G=(none) M=TOLOWER ACBP=28\r
- 0000:2A4E 0018 C=CODE S=_TEXT G=(none) M=UNLINK ACBP=28\r
- 0000:2A66 04DB C=CODE S=_TEXT G=(none) M=VPRINTER ACBP=28\r
- 0000:2F41 009F C=CODE S=_TEXT G=(none) M=VRAM ACBP=28\r
- 0000:2FE0 0000 C=CODE S=_TEXT G=(none) M=WSCROLL ACBP=28\r
- 0000:2FE0 0030 C=CODE S=_TEXT G=(none) M=_STPCPY ACBP=28\r
- 0000:3010 0004 C=CODE S=_TEXT G=(none) M=CORELEFT ACBP=28\r
- 0000:3014 014E C=CODE S=_TEXT G=(none) M=CPRINTF ACBP=28\r
- 0000:3162 01A5 C=CODE S=_TEXT G=(none) M=CRTINIT ACBP=28\r
- 0000:3307 001F C=CODE S=_TEXT G=(none) M=CVTFAK ACBP=28\r
- 0000:3326 042D C=CODE S=_TEXT G=(none) M=FARHEAP ACBP=28\r
- 0000:3753 013E C=CODE S=_TEXT G=(none) M=FBRK ACBP=28\r
- 0000:3891 0050 C=CODE S=_TEXT G=(none) M=FCORELFT ACBP=28\r
- 0000:38E1 0054 C=CODE S=_TEXT G=(none) M=GETCH ACBP=28\r
- 0000:3935 00AC C=CODE S=_TEXT G=(none) M=GPTEXT ACBP=28\r
- 0000:39E1 0029 C=CODE S=_TEXT G=(none) M=IOCTL ACBP=28\r
- 0000:3A0A 0012 C=CODE S=_TEXT G=(none) M=KBHIT ACBP=28\r
- 0000:3A1C 009D C=CODE S=_TEXT G=(none) M=MOVETEXT ACBP=28\r
- 0000:3AB9 0017 C=CODE S=_TEXT G=(none) M=PUTCH ACBP=28\r
- 0000:3AD0 0004 C=CODE S=_TEXT G=(none) M=REALCVT ACBP=28\r
- 0000:3AD4 01C7 C=CODE S=_TEXT G=(none) M=SCREEN ACBP=28\r
- 0000:3C9B 0184 C=CODE S=_TEXT G=(none) M=SCROLL ACBP=28\r
- 0000:3E1F 0129 C=CODE S=_TEXT G=(none) M=SETARGV ACBP=28\r
- 0000:3F48 001C C=CODE S=_TEXT G=(none) M=SETBLOCK ACBP=28\r
- 0000:3F64 002C C=CODE S=_TEXT G=(none) M=WHEREXY ACBP=28\r
- 0000:3F90 001D C=CODE S=_TEXT G=(none) M=CHMODA ACBP=28\r
- 0000:3FAD 0026 C=CODE S=_TEXT G=(none) M=CLOSE ACBP=28\r
- 0000:3FD3 001E C=CODE S=_TEXT G=(none) M=CLOSEA ACBP=28\r
- 0000:3FF1 00B0 C=CODE S=_TEXT G=(none) M=FCLOSE ACBP=28\r
- 0000:40A1 00C6 C=CODE S=_TEXT G=(none) M=FFLUSH ACBP=28\r
- 0000:4167 0041 C=CODE S=_TEXT G=(none) M=FLENGTH ACBP=28\r
- 0000:41A8 0040 C=CODE S=_TEXT G=(none) M=FLUSHALL ACBP=28\r
- 0000:41E8 01FE C=CODE S=_TEXT G=(none) M=FOPEN ACBP=28\r
- 0000:43E6 001C C=CODE S=_TEXT G=(none) M=FPRINTF ACBP=28\r
- 0000:4402 01D8 C=CODE S=_TEXT G=(none) M=FSEEK ACBP=28\r
- 0000:45DA 0070 C=CODE S=_TEXT G=(none) M=LTOA1 ACBP=28\r
- 0000:464A 0024 C=CODE S=_TEXT G=(none) M=MEMCPY ACBP=28\r
- 0000:466E 0022 C=CODE S=_TEXT G=(none) M=MOVEDATA ACBP=28\r
- 0000:4690 018D C=CODE S=_TEXT G=(none) M=OPEN ACBP=28\r
- 0000:481D 004F C=CODE S=_TEXT G=(none) M=OPENA ACBP=28\r
- 0000:486C 001B C=CODE S=_TEXT G=(none) M=PRINTF ACBP=28\r
- 0000:4887 03A4 C=CODE S=_TEXT G=(none) M=PUTC ACBP=28\r
- 0000:4C2B 0111 C=CODE S=_TEXT G=(none) M=SETVBUF ACBP=28\r
- 0000:4D3C 003F C=CODE S=_TEXT G=(none) M=STRCAT ACBP=28\r
- 0000:4D7B 0029 C=CODE S=_TEXT G=(none) M=STRCPY ACBP=28\r
- 0000:4DA4 001F C=CODE S=_TEXT G=(none) M=STRLEN ACBP=28\r
- 0000:4DC3 0149 C=CODE S=_TEXT G=(none) M=WRITE ACBP=28\r
- 0000:4F0C 003C C=CODE S=_TEXT G=(none) M=WRITEA ACBP=28\r
- 0000:4F48 0003 C=CODE S=_TEXT G=(none) M=WRITEU ACBP=28\r
- 0000:4F4B 003B C=CODE S=_TEXT G=(none) M=XFCLOSE ACBP=28\r
- 0000:4F86 0036 C=CODE S=_TEXT G=(none) M=XFFLUSH ACBP=28\r
- 04FC:0000 0000 C=FAR_DATA S=_FARDATA G=(none) M=c0.ASM ACBP=68\r
- 04FC:0000 0000 C=FAR_BSS S=_FARBSS G=(none) M=c0.ASM ACBP=68\r
- 04FC:0000 0000 C=OVRINFO S=_OVERLAY_ G=(none) M=c0.ASM ACBP=68\r
- 04FC:0000 0000 C=STUBSEG S=_1STUB_ G=(none) M=c0.ASM ACBP=68\r
- 04FC:0000 0093 C=DATA S=_DATA G=DGROUP M=c0.ASM ACBP=68\r
- 04FC:0094 01E2 C=DATA S=_DATA G=DGROUP M=EXMMTEST.C ACBP=48\r
- 04FC:0276 0AFF C=DATA S=_DATA G=DGROUP M=16_MM.C ACBP=48\r
- 04FC:0D76 0004 C=DATA S=_DATA G=DGROUP M=16_HEAD.C ACBP=48\r
- 04FC:0D7A 002C C=DATA S=_DATA G=DGROUP M=16_CA.C ACBP=48\r
- 04FC:0DA6 0002 C=DATA S=_DATA G=DGROUP M=ATEXIT ACBP=48\r
- 04FC:0DA8 0000 C=DATA S=_DATA G=DGROUP M=CLOCK ACBP=48\r
- 04FC:0DA8 0101 C=DATA S=_DATA G=DGROUP M=CTYPE ACBP=48\r
- 04FC:0EAA 0000 C=DATA S=_DATA G=DGROUP M=DOSFATTR ACBP=48\r
- 04FC:0EAA 0006 C=DATA S=_DATA G=DGROUP M=EXIT ACBP=48\r
- 04FC:0EB0 0190 C=DATA S=_DATA G=DGROUP M=FILES ACBP=48\r
- 04FC:1040 002A C=DATA S=_DATA G=DGROUP M=FILES2 ACBP=48\r
- 04FC:106A 0004 C=DATA S=_DATA G=DGROUP M=FMODE ACBP=48\r
- 04FC:106E 0000 C=DATA S=_DATA G=DGROUP M=H_LDIV ACBP=48\r
- 04FC:106E 0000 C=DATA S=_DATA G=DGROUP M=H_LLSH ACBP=48\r
- 04FC:106E 0000 C=DATA S=_DATA G=DGROUP M=H_LURSH ACBP=48\r
- 04FC:106E 0000 C=DATA S=_DATA G=DGROUP M=H_PADD ACBP=48\r
- 04FC:106E 0000 C=DATA S=_DATA G=DGROUP M=H_PSBP ACBP=48\r
- 04FC:106E 005B C=DATA S=_DATA G=DGROUP M=IOERROR ACBP=48\r
- 04FC:10CA 0000 C=DATA S=_DATA G=DGROUP M=ISATTY ACBP=48\r
- 04FC:10CA 0000 C=DATA S=_DATA G=DGROUP M=LONGTOA ACBP=48\r
- 04FC:10CA 0000 C=DATA S=_DATA G=DGROUP M=LSEEK ACBP=48\r
- 04FC:10CA 0009 C=DATA S=_DATA G=DGROUP M=MKNAME ACBP=48\r
- 04FC:10D4 0000 C=DATA S=_DATA G=DGROUP M=N_PCMP ACBP=48\r
- 04FC:10D4 0000 C=DATA S=_DATA G=DGROUP M=SETUPIO ACBP=48\r
- 04FC:10D4 0002 C=DATA S=_DATA G=DGROUP M=STKLEN ACBP=48\r
- 04FC:10D6 0000 C=DATA S=_DATA G=DGROUP M=TOLOWER ACBP=48\r
- 04FC:10D6 0000 C=DATA S=_DATA G=DGROUP M=UNLINK ACBP=48\r
- 04FC:10D6 0067 C=DATA S=_DATA G=DGROUP M=VPRINTER ACBP=48\r
- 04FC:113E 0000 C=DATA S=_DATA G=DGROUP M=VRAM ACBP=48\r
- 04FC:113E 0002 C=DATA S=_DATA G=DGROUP M=WSCROLL ACBP=48\r
- 04FC:1140 0000 C=DATA S=_DATA G=DGROUP M=_STPCPY ACBP=48\r
- 04FC:1140 0000 C=DATA S=_DATA G=DGROUP M=CORELEFT ACBP=48\r
- 04FC:1140 0000 C=DATA S=_DATA G=DGROUP M=CPRINTF ACBP=48\r
- 04FC:1140 0018 C=DATA S=_DATA G=DGROUP M=CRTINIT ACBP=48\r
- 04FC:1158 0031 C=DATA S=_DATA G=DGROUP M=CVTFAK ACBP=48\r
- 04FC:118A 0000 C=DATA S=_DATA G=DGROUP M=FARHEAP ACBP=48\r
- 04FC:118A 0002 C=DATA S=_DATA G=DGROUP M=FBRK ACBP=48\r
- 04FC:118C 0000 C=DATA S=_DATA G=DGROUP M=FCORELFT ACBP=48\r
- 04FC:118C 0000 C=DATA S=_DATA G=DGROUP M=GETCH ACBP=48\r
- 04FC:118C 0000 C=DATA S=_DATA G=DGROUP M=GPTEXT ACBP=48\r
- 04FC:118C 0000 C=DATA S=_DATA G=DGROUP M=IOCTL ACBP=48\r
- 04FC:118C 0002 C=DATA S=_DATA G=DGROUP M=KBHIT ACBP=48\r
- 04FC:118E 0000 C=DATA S=_DATA G=DGROUP M=MOVETEXT ACBP=48\r
- 04FC:118E 0000 C=DATA S=_DATA G=DGROUP M=PUTCH ACBP=48\r
- 04FC:118E 0000 C=DATA S=_DATA G=DGROUP M=REALCVT ACBP=48\r
- 04FC:118E 0000 C=DATA S=_DATA G=DGROUP M=SCREEN ACBP=48\r
- 04FC:118E 0000 C=DATA S=_DATA G=DGROUP M=SCROLL ACBP=48\r
- 04FC:118E 0010 C=DATA S=_DATA G=DGROUP M=SETARGV ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=SETBLOCK ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=WHEREXY ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=CHMODA ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=CLOSE ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=CLOSEA ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=FCLOSE ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=FFLUSH ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=FLENGTH ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=FLUSHALL ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=FOPEN ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=FPRINTF ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=FSEEK ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=LTOA1 ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=MEMCPY ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=MOVEDATA ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=OPEN ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=OPENA ACBP=48\r
- 04FC:119E 0000 C=DATA S=_DATA G=DGROUP M=PRINTF ACBP=48\r
- 04FC:119E 0001 C=DATA S=_DATA G=DGROUP M=PUTC ACBP=48\r
- 04FC:11A0 0004 C=DATA S=_DATA G=DGROUP M=SETVBUF ACBP=48\r
- 04FC:11A4 0000 C=DATA S=_DATA G=DGROUP M=STRCAT ACBP=48\r
- 04FC:11A4 0000 C=DATA S=_DATA G=DGROUP M=STRCPY ACBP=48\r
- 04FC:11A4 0000 C=DATA S=_DATA G=DGROUP M=STRLEN ACBP=48\r
- 04FC:11A4 0000 C=DATA S=_DATA G=DGROUP M=WRITE ACBP=48\r
- 04FC:11A4 0000 C=DATA S=_DATA G=DGROUP M=WRITEA ACBP=48\r
- 04FC:11A4 0000 C=DATA S=_DATA G=DGROUP M=WRITEU ACBP=48\r
- 04FC:11A4 0000 C=DATA S=_DATA G=DGROUP M=XFCLOSE ACBP=48\r
- 04FC:11A4 0000 C=DATA S=_DATA G=DGROUP M=XFFLUSH ACBP=48\r
- 04FC:11A4 0000 C=DATA S=_CVTSEG G=DGROUP M=c0.ASM ACBP=48\r
- 04FC:11A4 0002 C=DATA S=_CVTSEG G=DGROUP M=CVTFAK ACBP=48\r
- 04FC:11A6 0000 C=DATA S=_CVTSEG G=DGROUP M=REALCVT ACBP=48\r
- 04FC:11A6 0000 C=DATA S=_SCNSEG G=DGROUP M=c0.ASM ACBP=48\r
- 04FC:11A6 0006 C=DATA S=_SCNSEG G=DGROUP M=CVTFAK ACBP=48\r
- 04FC:11AC 0000 C=CONST S=_CONST G=DGROUP M=c0.ASM ACBP=48\r
- 04FC:11AC 0000 C=INITDATA S=_INIT_ G=DGROUP M=c0.ASM ACBP=48\r
- 04FC:11AC 0006 C=INITDATA S=_INIT_ G=DGROUP M=SETUPIO ACBP=48\r
- 04FC:11B2 0006 C=INITDATA S=_INIT_ G=DGROUP M=CRTINIT ACBP=48\r
- 04FC:11B8 0006 C=INITDATA S=_INIT_ G=DGROUP M=SETARGV ACBP=48\r
- 04FC:11BE 0000 C=INITDATA S=_INITEND_ G=DGROUP M=c0.ASM ACBP=28\r
- 04FC:11BE 0000 C=EXITDATA S=_EXIT_ G=DGROUP M=c0.ASM ACBP=48\r
- 04FC:11BE 0000 C=EXITDATA S=_EXITEND_ G=DGROUP M=c0.ASM ACBP=28\r
- 04FC:11BE 0000 C=BSS S=_BSS G=DGROUP M=c0.ASM ACBP=48\r
- 04FC:11BE 0000 C=BSS S=_BSS G=DGROUP M=EXMMTEST.C ACBP=48\r
- 04FC:11BE 0006 C=BSS S=_BSS G=DGROUP M=16_MM.C ACBP=48\r
- 04FC:11C4 0000 C=BSS S=_BSS G=DGROUP M=16_HEAD.C ACBP=48\r
- 04FC:11C4 000A C=BSS S=_BSS G=DGROUP M=16_CA.C ACBP=48\r
- 04FC:11CE 0040 C=BSS S=_BSS G=DGROUP M=ATEXIT ACBP=48\r
- 04FC:120E 0001 C=BSS S=_BSS G=DGROUP M=CLOCK ACBP=48\r
- 04FC:1210 0000 C=BSS S=_BSS G=DGROUP M=DOSFATTR ACBP=48\r
- 04FC:1210 0000 C=BSS S=_BSS G=DGROUP M=IOERROR ACBP=48\r
- 04FC:1210 0000 C=BSS S=_BSS G=DGROUP M=ISATTY ACBP=48\r
- 04FC:1210 0000 C=BSS S=_BSS G=DGROUP M=LONGTOA ACBP=48\r
- 04FC:1210 0000 C=BSS S=_BSS G=DGROUP M=LSEEK ACBP=48\r
- 04FC:1210 000D C=BSS S=_BSS G=DGROUP M=MKNAME ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=SETUPIO ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=UNLINK ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=VPRINTER ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=VRAM ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=CORELEFT ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=CRTINIT ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=GETCH ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=IOCTL ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=KBHIT ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=SETBLOCK ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=CHMODA ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=CLOSEA ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=FLENGTH ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=MEMCPY ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=MOVEDATA ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=OPEN ACBP=48\r
- 04FC:121E 0000 C=BSS S=_BSS G=DGROUP M=OPENA ACBP=48\r
- 04FC:121E 0001 C=BSS S=_BSS G=DGROUP M=PUTC ACBP=48\r
- 04FC:1220 0000 C=BSS S=_BSS G=DGROUP M=STRCAT ACBP=48\r
- 04FC:1220 0000 C=BSS S=_BSS G=DGROUP M=STRCPY ACBP=48\r
- 04FC:1220 0000 C=BSS S=_BSS G=DGROUP M=STRLEN ACBP=48\r
- 04FC:1220 0000 C=BSS S=_BSS G=DGROUP M=WRITEA ACBP=48\r
- 04FC:1220 0000 C=BSSEND S=_BSSEND G=DGROUP M=c0.ASM ACBP=28\r
- 061E:0000 0080 C=STACK S=_STACK G=(none) M=c0.ASM ACBP=74\r
+ 0000:028F 05F7 C=CODE S=_TEXT G=(none) M=SRC\LIB\NYAN\KITTEN.C ACBP=28\r
+ 0000:0886 0290 C=CODE S=_TEXT G=(none) M=SRC\LIB\16_HC.C ACBP=28\r
+ 0000:0B16 0235 C=CODE S=_TEXT G=(none) M=SRC\EXMMTEST.C ACBP=28\r
+ 0000:0D4B 0232 C=CODE S=_TEXT G=(none) M=SRC\LIB\16_CA.C ACBP=28\r
+ 0000:0F7D 0242 C=CODE S=_TEXT G=(none) M=SRC\LIB\16_HEAD.C ACBP=28\r
+ 0000:11BF 1992 C=CODE S=_TEXT G=(none) M=SRC\LIB\16_MM.C ACBP=28\r
+ 0000:2B51 0024 C=CODE S=_TEXT G=(none) M=ATEXIT ACBP=28\r
+ 0000:2B75 0049 C=CODE S=_TEXT G=(none) M=CLOCK ACBP=28\r
+ 0000:2BBE 0000 C=CODE S=_TEXT G=(none) M=CTYPE ACBP=28\r
+ 0000:2BBE 003D C=CODE S=_TEXT G=(none) M=DOSFATTR ACBP=28\r
+ 0000:2BFB 0089 C=CODE S=_TEXT G=(none) M=EXIT ACBP=28\r
+ 0000:2C84 0000 C=CODE S=_TEXT G=(none) M=FILES ACBP=28\r
+ 0000:2C84 0000 C=CODE S=_TEXT G=(none) M=FILES2 ACBP=28\r
+ 0000:2C84 0000 C=CODE S=_TEXT G=(none) M=FMODE ACBP=28\r
+ 0000:2C84 0021 C=CODE S=_TEXT G=(none) M=H_LLSH ACBP=28\r
+ 0000:2CA5 0021 C=CODE S=_TEXT G=(none) M=H_LURSH ACBP=28\r
+ 0000:2CC6 0060 C=CODE S=_TEXT G=(none) M=H_PADD ACBP=28\r
+ 0000:2D26 0028 C=CODE S=_TEXT G=(none) M=H_PSBP ACBP=28\r
+ 0000:2D4E 004B C=CODE S=_TEXT G=(none) M=IOERROR ACBP=28\r
+ 0000:2D99 0011 C=CODE S=_TEXT G=(none) M=ISATTY ACBP=28\r
+ 0000:2DAA 00A2 C=CODE S=_TEXT G=(none) M=LONGTOA ACBP=28\r
+ 0000:2E4C 0029 C=CODE S=_TEXT G=(none) M=LSEEK ACBP=28\r
+ 0000:2E75 00B0 C=CODE S=_TEXT G=(none) M=MKNAME ACBP=28\r
+ 0000:2F25 0021 C=CODE S=_TEXT G=(none) M=N_PCMP ACBP=28\r
+ 0000:2F46 002F C=CODE S=_TEXT G=(none) M=READA ACBP=28\r
+ 0000:2F75 00B2 C=CODE S=_TEXT G=(none) M=SETUPIO ACBP=28\r
+ 0000:3027 0000 C=CODE S=_TEXT G=(none) M=STKLEN ACBP=28\r
+ 0000:3027 002C C=CODE S=_TEXT G=(none) M=TOLOWER ACBP=28\r
+ 0000:3053 0018 C=CODE S=_TEXT G=(none) M=UNLINK ACBP=28\r
+ 0000:306B 04DB C=CODE S=_TEXT G=(none) M=VPRINTER ACBP=28\r
+ 0000:3546 009F C=CODE S=_TEXT G=(none) M=VRAM ACBP=28\r
+ 0000:35E5 0000 C=CODE S=_TEXT G=(none) M=WSCROLL ACBP=28\r
+ 0000:35E5 0030 C=CODE S=_TEXT G=(none) M=_STPCPY ACBP=28\r
+ 0000:3615 0004 C=CODE S=_TEXT G=(none) M=CORELEFT ACBP=28\r
+ 0000:3619 014E C=CODE S=_TEXT G=(none) M=CPRINTF ACBP=28\r
+ 0000:3767 01A5 C=CODE S=_TEXT G=(none) M=CRTINIT ACBP=28\r
+ 0000:390C 001F C=CODE S=_TEXT G=(none) M=CVTFAK ACBP=28\r
+ 0000:392B 042D C=CODE S=_TEXT G=(none) M=FARHEAP ACBP=28\r
+ 0000:3D58 013E C=CODE S=_TEXT G=(none) M=FBRK ACBP=28\r
+ 0000:3E96 0050 C=CODE S=_TEXT G=(none) M=FCORELFT ACBP=28\r
+ 0000:3EE6 0054 C=CODE S=_TEXT G=(none) M=GETCH ACBP=28\r
+ 0000:3F3A 00AC C=CODE S=_TEXT G=(none) M=GPTEXT ACBP=28\r
+ 0000:3FE6 0029 C=CODE S=_TEXT G=(none) M=IOCTL ACBP=28\r
+ 0000:400F 0012 C=CODE S=_TEXT G=(none) M=KBHIT ACBP=28\r
+ 0000:4021 009D C=CODE S=_TEXT G=(none) M=MOVETEXT ACBP=28\r
+ 0000:40BE 0017 C=CODE S=_TEXT G=(none) M=PUTCH ACBP=28\r
+ 0000:40D5 0004 C=CODE S=_TEXT G=(none) M=REALCVT ACBP=28\r
+ 0000:40D9 01C7 C=CODE S=_TEXT G=(none) M=SCREEN ACBP=28\r
+ 0000:42A0 0184 C=CODE S=_TEXT G=(none) M=SCROLL ACBP=28\r
+ 0000:4424 0129 C=CODE S=_TEXT G=(none) M=SETARGV ACBP=28\r
+ 0000:454D 001C C=CODE S=_TEXT G=(none) M=SETBLOCK ACBP=28\r
+ 0000:4569 0054 C=CODE S=_TEXT G=(none) M=SETENVP ACBP=28\r
+ 0000:45BD 002C C=CODE S=_TEXT G=(none) M=WHEREXY ACBP=28\r
+ 0000:45E9 001D C=CODE S=_TEXT G=(none) M=CHMODA ACBP=28\r
+ 0000:4606 0026 C=CODE S=_TEXT G=(none) M=CLOSE ACBP=28\r
+ 0000:462C 001E C=CODE S=_TEXT G=(none) M=CLOSEA ACBP=28\r
+ 0000:464A 00B0 C=CODE S=_TEXT G=(none) M=FCLOSE ACBP=28\r
+ 0000:46FA 00C6 C=CODE S=_TEXT G=(none) M=FFLUSH ACBP=28\r
+ 0000:47C0 0041 C=CODE S=_TEXT G=(none) M=FLENGTH ACBP=28\r
+ 0000:4801 0040 C=CODE S=_TEXT G=(none) M=FLUSHALL ACBP=28\r
+ 0000:4841 01FE C=CODE S=_TEXT G=(none) M=FOPEN ACBP=28\r
+ 0000:4A3F 001C C=CODE S=_TEXT G=(none) M=FPRINTF ACBP=28\r
+ 0000:4A5B 01D8 C=CODE S=_TEXT G=(none) M=FSEEK ACBP=28\r
+ 0000:4C33 0070 C=CODE S=_TEXT G=(none) M=GETENV ACBP=28\r
+ 0000:4CA3 0070 C=CODE S=_TEXT G=(none) M=LTOA1 ACBP=28\r
+ 0000:4D13 0024 C=CODE S=_TEXT G=(none) M=MEMCPY ACBP=28\r
+ 0000:4D37 0022 C=CODE S=_TEXT G=(none) M=MOVEDATA ACBP=28\r
+ 0000:4D59 018D C=CODE S=_TEXT G=(none) M=OPEN ACBP=28\r
+ 0000:4EE6 004F C=CODE S=_TEXT G=(none) M=OPENA ACBP=28\r
+ 0000:4F35 001B C=CODE S=_TEXT G=(none) M=PRINTF ACBP=28\r
+ 0000:4F50 03A4 C=CODE S=_TEXT G=(none) M=PUTC ACBP=28\r
+ 0000:52F4 00CB C=CODE S=_TEXT G=(none) M=READ ACBP=28\r
+ 0000:53BF 0003 C=CODE S=_TEXT G=(none) M=READU ACBP=28\r
+ 0000:53C2 0111 C=CODE S=_TEXT G=(none) M=SETVBUF ACBP=28\r
+ 0000:54D3 0081 C=CODE S=_TEXT G=(none) M=SPRINTF ACBP=28\r
+ 0000:5554 003F C=CODE S=_TEXT G=(none) M=STRCAT ACBP=28\r
+ 0000:5593 003D C=CODE S=_TEXT G=(none) M=STRCHR ACBP=28\r
+ 0000:55D0 0030 C=CODE S=_TEXT G=(none) M=STRCMP ACBP=28\r
+ 0000:5600 0029 C=CODE S=_TEXT G=(none) M=STRCPY ACBP=28\r
+ 0000:5629 0040 C=CODE S=_TEXT G=(none) M=STRDUP ACBP=28\r
+ 0000:5669 001F C=CODE S=_TEXT G=(none) M=STRLEN ACBP=28\r
+ 0000:5688 0149 C=CODE S=_TEXT G=(none) M=WRITE ACBP=28\r
+ 0000:57D1 003C C=CODE S=_TEXT G=(none) M=WRITEA ACBP=28\r
+ 0000:580D 0003 C=CODE S=_TEXT G=(none) M=WRITEU ACBP=28\r
+ 0000:5810 003B C=CODE S=_TEXT G=(none) M=XFCLOSE ACBP=28\r
+ 0000:584B 0036 C=CODE S=_TEXT G=(none) M=XFFLUSH ACBP=28\r
+ 0589:0000 0000 C=FAR_DATA S=_FARDATA G=(none) M=c0.ASM ACBP=68\r
+ 0589:0000 0000 C=FAR_BSS S=_FARBSS G=(none) M=c0.ASM ACBP=68\r
+ 0589:0000 0000 C=OVRINFO S=_OVERLAY_ G=(none) M=c0.ASM ACBP=68\r
+ 0589:0000 0000 C=STUBSEG S=_1STUB_ G=(none) M=c0.ASM ACBP=68\r
+ 0589:0000 0093 C=DATA S=_DATA G=DGROUP M=c0.ASM ACBP=68\r
+ 0589:0094 0045 C=DATA S=_DATA G=DGROUP M=SRC\LIB\NYAN\KITTEN.C ACBP=48\r
+ 0589:00DA 0014 C=DATA S=_DATA G=DGROUP M=SRC\LIB\16_HC.C ACBP=48\r
+ 0589:00EE 0187 C=DATA S=_DATA G=DGROUP M=SRC\EXMMTEST.C ACBP=48\r
+ 0589:0276 002C C=DATA S=_DATA G=DGROUP M=SRC\LIB\16_CA.C ACBP=48\r
+ 0589:02A2 0010 C=DATA S=_DATA G=DGROUP M=SRC\LIB\16_HEAD.C ACBP=48\r
+ 0589:02B2 09FD C=DATA S=_DATA G=DGROUP M=SRC\LIB\16_MM.C ACBP=48\r
+ 0589:0CB0 0002 C=DATA S=_DATA G=DGROUP M=ATEXIT ACBP=48\r
+ 0589:0CB2 0000 C=DATA S=_DATA G=DGROUP M=CLOCK ACBP=48\r
+ 0589:0CB2 0101 C=DATA S=_DATA G=DGROUP M=CTYPE ACBP=48\r
+ 0589:0DB4 0000 C=DATA S=_DATA G=DGROUP M=DOSFATTR ACBP=48\r
+ 0589:0DB4 0006 C=DATA S=_DATA G=DGROUP M=EXIT ACBP=48\r
+ 0589:0DBA 0190 C=DATA S=_DATA G=DGROUP M=FILES ACBP=48\r
+ 0589:0F4A 002A C=DATA S=_DATA G=DGROUP M=FILES2 ACBP=48\r
+ 0589:0F74 0004 C=DATA S=_DATA G=DGROUP M=FMODE ACBP=48\r
+ 0589:0F78 0000 C=DATA S=_DATA G=DGROUP M=H_LLSH ACBP=48\r
+ 0589:0F78 0000 C=DATA S=_DATA G=DGROUP M=H_LURSH ACBP=48\r
+ 0589:0F78 0000 C=DATA S=_DATA G=DGROUP M=H_PADD ACBP=48\r
+ 0589:0F78 0000 C=DATA S=_DATA G=DGROUP M=H_PSBP ACBP=48\r
+ 0589:0F78 005B C=DATA S=_DATA G=DGROUP M=IOERROR ACBP=48\r
+ 0589:0FD4 0000 C=DATA S=_DATA G=DGROUP M=ISATTY ACBP=48\r
+ 0589:0FD4 0000 C=DATA S=_DATA G=DGROUP M=LONGTOA ACBP=48\r
+ 0589:0FD4 0000 C=DATA S=_DATA G=DGROUP M=LSEEK ACBP=48\r
+ 0589:0FD4 0009 C=DATA S=_DATA G=DGROUP M=MKNAME ACBP=48\r
+ 0589:0FDE 0000 C=DATA S=_DATA G=DGROUP M=N_PCMP ACBP=48\r
+ 0589:0FDE 0000 C=DATA S=_DATA G=DGROUP M=READA ACBP=48\r
+ 0589:0FDE 0000 C=DATA S=_DATA G=DGROUP M=SETUPIO ACBP=48\r
+ 0589:0FDE 0002 C=DATA S=_DATA G=DGROUP M=STKLEN ACBP=48\r
+ 0589:0FE0 0000 C=DATA S=_DATA G=DGROUP M=TOLOWER ACBP=48\r
+ 0589:0FE0 0000 C=DATA S=_DATA G=DGROUP M=UNLINK ACBP=48\r
+ 0589:0FE0 0067 C=DATA S=_DATA G=DGROUP M=VPRINTER ACBP=48\r
+ 0589:1048 0000 C=DATA S=_DATA G=DGROUP M=VRAM ACBP=48\r
+ 0589:1048 0002 C=DATA S=_DATA G=DGROUP M=WSCROLL ACBP=48\r
+ 0589:104A 0000 C=DATA S=_DATA G=DGROUP M=_STPCPY ACBP=48\r
+ 0589:104A 0000 C=DATA S=_DATA G=DGROUP M=CORELEFT ACBP=48\r
+ 0589:104A 0000 C=DATA S=_DATA G=DGROUP M=CPRINTF ACBP=48\r
+ 0589:104A 0018 C=DATA S=_DATA G=DGROUP M=CRTINIT ACBP=48\r
+ 0589:1062 0031 C=DATA S=_DATA G=DGROUP M=CVTFAK ACBP=48\r
+ 0589:1094 0000 C=DATA S=_DATA G=DGROUP M=FARHEAP ACBP=48\r
+ 0589:1094 0002 C=DATA S=_DATA G=DGROUP M=FBRK ACBP=48\r
+ 0589:1096 0000 C=DATA S=_DATA G=DGROUP M=FCORELFT ACBP=48\r
+ 0589:1096 0000 C=DATA S=_DATA G=DGROUP M=GETCH ACBP=48\r
+ 0589:1096 0000 C=DATA S=_DATA G=DGROUP M=GPTEXT ACBP=48\r
+ 0589:1096 0000 C=DATA S=_DATA G=DGROUP M=IOCTL ACBP=48\r
+ 0589:1096 0002 C=DATA S=_DATA G=DGROUP M=KBHIT ACBP=48\r
+ 0589:1098 0000 C=DATA S=_DATA G=DGROUP M=MOVETEXT ACBP=48\r
+ 0589:1098 0000 C=DATA S=_DATA G=DGROUP M=PUTCH ACBP=48\r
+ 0589:1098 0000 C=DATA S=_DATA G=DGROUP M=REALCVT ACBP=48\r
+ 0589:1098 0000 C=DATA S=_DATA G=DGROUP M=SCREEN ACBP=48\r
+ 0589:1098 0000 C=DATA S=_DATA G=DGROUP M=SCROLL ACBP=48\r
+ 0589:1098 0010 C=DATA S=_DATA G=DGROUP M=SETARGV ACBP=48\r
+ 0589:10A8 0000 C=DATA S=_DATA G=DGROUP M=SETBLOCK ACBP=48\r
+ 0589:10A8 0004 C=DATA S=_DATA G=DGROUP M=SETENVP ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=WHEREXY ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=CHMODA ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=CLOSE ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=CLOSEA ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=FCLOSE ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=FFLUSH ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=FLENGTH ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=FLUSHALL ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=FOPEN ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=FPRINTF ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=FSEEK ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=GETENV ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=LTOA1 ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=MEMCPY ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=MOVEDATA ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=OPEN ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=OPENA ACBP=48\r
+ 0589:10AC 0000 C=DATA S=_DATA G=DGROUP M=PRINTF ACBP=48\r
+ 0589:10AC 0001 C=DATA S=_DATA G=DGROUP M=PUTC ACBP=48\r
+ 0589:10AE 0000 C=DATA S=_DATA G=DGROUP M=READ ACBP=48\r
+ 0589:10AE 0000 C=DATA S=_DATA G=DGROUP M=READU ACBP=48\r
+ 0589:10AE 0004 C=DATA S=_DATA G=DGROUP M=SETVBUF ACBP=48\r
+ 0589:10B2 0000 C=DATA S=_DATA G=DGROUP M=SPRINTF ACBP=48\r
+ 0589:10B2 0000 C=DATA S=_DATA G=DGROUP M=STRCAT ACBP=48\r
+ 0589:10B2 0000 C=DATA S=_DATA G=DGROUP M=STRCHR ACBP=48\r
+ 0589:10B2 0000 C=DATA S=_DATA G=DGROUP M=STRCMP ACBP=48\r
+ 0589:10B2 0000 C=DATA S=_DATA G=DGROUP M=STRCPY ACBP=48\r
+ 0589:10B2 0000 C=DATA S=_DATA G=DGROUP M=STRDUP ACBP=48\r
+ 0589:10B2 0000 C=DATA S=_DATA G=DGROUP M=STRLEN ACBP=48\r
+ 0589:10B2 0000 C=DATA S=_DATA G=DGROUP M=WRITE ACBP=48\r
+ 0589:10B2 0000 C=DATA S=_DATA G=DGROUP M=WRITEA ACBP=48\r
+ 0589:10B2 0000 C=DATA S=_DATA G=DGROUP M=WRITEU ACBP=48\r
+ 0589:10B2 0000 C=DATA S=_DATA G=DGROUP M=XFCLOSE ACBP=48\r
+ 0589:10B2 0000 C=DATA S=_DATA G=DGROUP M=XFFLUSH ACBP=48\r
+ 0589:10B2 0000 C=DATA S=_CVTSEG G=DGROUP M=c0.ASM ACBP=48\r
+ 0589:10B2 0002 C=DATA S=_CVTSEG G=DGROUP M=CVTFAK ACBP=48\r
+ 0589:10B4 0000 C=DATA S=_CVTSEG G=DGROUP M=REALCVT ACBP=48\r
+ 0589:10B4 0000 C=DATA S=_SCNSEG G=DGROUP M=c0.ASM ACBP=48\r
+ 0589:10B4 0006 C=DATA S=_SCNSEG G=DGROUP M=CVTFAK ACBP=48\r
+ 0589:10BA 0000 C=CONST S=_CONST G=DGROUP M=c0.ASM ACBP=48\r
+ 0589:10BA 0000 C=INITDATA S=_INIT_ G=DGROUP M=c0.ASM ACBP=48\r
+ 0589:10BA 0006 C=INITDATA S=_INIT_ G=DGROUP M=SETUPIO ACBP=48\r
+ 0589:10C0 0006 C=INITDATA S=_INIT_ G=DGROUP M=CRTINIT ACBP=48\r
+ 0589:10C6 0006 C=INITDATA S=_INIT_ G=DGROUP M=SETARGV ACBP=48\r
+ 0589:10CC 0006 C=INITDATA S=_INIT_ G=DGROUP M=SETENVP ACBP=48\r
+ 0589:10D2 0000 C=INITDATA S=_INITEND_ G=DGROUP M=c0.ASM ACBP=28\r
+ 0589:10D2 0000 C=EXITDATA S=_EXIT_ G=DGROUP M=c0.ASM ACBP=48\r
+ 0589:10D2 0000 C=EXITDATA S=_EXITEND_ G=DGROUP M=c0.ASM ACBP=28\r
+ 0589:10D2 0000 C=BSS S=_BSS G=DGROUP M=c0.ASM ACBP=48\r
+ 0589:10D2 0004 C=BSS S=_BSS G=DGROUP M=SRC\LIB\NYAN\KITTEN.C ACBP=48\r
+ 0589:10D6 0002 C=BSS S=_BSS G=DGROUP M=SRC\LIB\16_HC.C ACBP=48\r
+ 0589:10D8 0000 C=BSS S=_BSS G=DGROUP M=SRC\EXMMTEST.C ACBP=48\r
+ 0589:10D8 000A C=BSS S=_BSS G=DGROUP M=SRC\LIB\16_CA.C ACBP=48\r
+ 0589:10E2 0000 C=BSS S=_BSS G=DGROUP M=SRC\LIB\16_HEAD.C ACBP=48\r
+ 0589:10E2 0006 C=BSS S=_BSS G=DGROUP M=SRC\LIB\16_MM.C ACBP=48\r
+ 0589:10E8 0040 C=BSS S=_BSS G=DGROUP M=ATEXIT ACBP=48\r
+ 0589:1128 0001 C=BSS S=_BSS G=DGROUP M=CLOCK ACBP=48\r
+ 0589:112A 0000 C=BSS S=_BSS G=DGROUP M=DOSFATTR ACBP=48\r
+ 0589:112A 0000 C=BSS S=_BSS G=DGROUP M=IOERROR ACBP=48\r
+ 0589:112A 0000 C=BSS S=_BSS G=DGROUP M=ISATTY ACBP=48\r
+ 0589:112A 0000 C=BSS S=_BSS G=DGROUP M=LONGTOA ACBP=48\r
+ 0589:112A 0000 C=BSS S=_BSS G=DGROUP M=LSEEK ACBP=48\r
+ 0589:112A 000D C=BSS S=_BSS G=DGROUP M=MKNAME ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=READA ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=SETUPIO ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=UNLINK ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=VPRINTER ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=VRAM ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=CORELEFT ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=CRTINIT ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=GETCH ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=IOCTL ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=KBHIT ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=SETBLOCK ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=CHMODA ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=CLOSEA ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=FLENGTH ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=GETENV ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=MEMCPY ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=MOVEDATA ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=OPEN ACBP=48\r
+ 0589:1138 0000 C=BSS S=_BSS G=DGROUP M=OPENA ACBP=48\r
+ 0589:1138 0001 C=BSS S=_BSS G=DGROUP M=PUTC ACBP=48\r
+ 0589:113A 0000 C=BSS S=_BSS G=DGROUP M=READ ACBP=48\r
+ 0589:113A 0000 C=BSS S=_BSS G=DGROUP M=STRCAT ACBP=48\r
+ 0589:113A 0000 C=BSS S=_BSS G=DGROUP M=STRCHR ACBP=48\r
+ 0589:113A 0000 C=BSS S=_BSS G=DGROUP M=STRCMP ACBP=48\r
+ 0589:113A 0000 C=BSS S=_BSS G=DGROUP M=STRCPY ACBP=48\r
+ 0589:113A 0000 C=BSS S=_BSS G=DGROUP M=STRLEN ACBP=48\r
+ 0589:113A 0000 C=BSS S=_BSS G=DGROUP M=WRITEA ACBP=48\r
+ 0589:113A 0000 C=BSSEND S=_BSSEND G=DGROUP M=c0.ASM ACBP=28\r
+ 069D:0000 0080 C=STACK S=_STACK G=(none) M=c0.ASM ACBP=74\r
\r
Address Publics by Name\r
\r
- 04FC:0000 idle DATASEG@\r
+ 0589:0000 idle DATASEG@\r
0000:028B idle DGROUP@\r
- 0000:2603 idle F_LDIV@\r
- 0000:2612 idle F_LMOD@\r
- 0000:260A idle F_LUDIV@\r
- 0000:261A idle F_LUMOD@\r
- 0000:26B1 idle F_LXLSH@\r
- 0000:26D2 idle F_LXURSH@\r
- 0000:26F3 idle F_PADD@\r
- 0000:2753 idle F_PSBP@\r
- 0000:2722 idle F_PSUB@\r
- 0000:2603 idle LDIV@\r
- 0000:2612 idle LMOD@\r
- 0000:260A idle LUDIV@\r
- 0000:261A idle LUMOD@\r
- 0000:26B1 idle LXLSH@\r
- 0000:26D2 idle LXURSH@\r
- 0000:2600 idle N_LDIV@\r
- 0000:260F idle N_LMOD@\r
- 0000:2607 N_LUDIV@\r
- 0000:2617 idle N_LUMOD@\r
- 0000:26AE N_LXLSH@\r
- 0000:26CF N_LXURSH@\r
- 0000:26F0 N_PADD@\r
- 0000:294F N_PCMP@\r
- 0000:2750 N_PSBP@\r
- 0000:271F idle N_PSUB@\r
- 0000:26F3 idle PADD@\r
- 0000:2753 idle PSBP@\r
- 0000:2722 idle PSUB@\r
+ 0000:2C87 idle F_LXLSH@\r
+ 0000:2CA8 idle F_LXURSH@\r
+ 0000:2CC9 idle F_PADD@\r
+ 0000:2D29 idle F_PSBP@\r
+ 0000:2CF8 idle F_PSUB@\r
+ 0000:028F idle KITTENGETS\r
+ 0000:2C87 idle LXLSH@\r
+ 0000:2CA8 idle LXURSH@\r
+ 0000:2C84 N_LXLSH@\r
+ 0000:2CA5 N_LXURSH@\r
+ 0000:2CC6 N_PADD@\r
+ 0000:2F25 N_PCMP@\r
+ 0000:2D26 N_PSBP@\r
+ 0000:2CF5 idle N_PSUB@\r
+ 0000:2CC9 idle PADD@\r
+ 0000:2D29 idle PSBP@\r
+ 0000:2CF8 idle PSUB@\r
0000:0276 _abort\r
- 04FC:11C0 idle _aftersort\r
- 0000:1FFB idle _AllocateLargestFarFreeBlock\r
- 0000:1E98 idle _AllocateLargestFreeBlock\r
- 0000:24CD idle _atexit\r
- 04FC:11C2 idle _beforesort\r
- 0000:2431 idle _CAL_OptimizeNodes\r
- 0000:22BC _CA_CloseDebug\r
- 0000:22C9 idle _CA_FarRead\r
- 0000:2307 idle _CA_FarWrite\r
- 0000:23AC _CA_LoadFile\r
- 0000:229B _CA_OpenDebug\r
- 0000:2345 idle _CA_ReadFile\r
- 0000:24C0 _CA_Shutdown\r
- 0000:249F _CA_Startup\r
- 0000:24F1 _clock\r
- 0000:3FAD _close\r
- 0000:3010 _coreleft\r
- 0000:3146 idle _cprintf\r
- 04FC:11CA _debughandle\r
- 04FC:114F _directvideo\r
- 04FC:11C8 idle _drawcachebox\r
- 04FC:007F _errno\r
- 0000:25C5 _exit\r
- 0000:3891 _farcoreleft\r
- 0000:3466 _farfree\r
- 0000:357A _farmalloc\r
- 0000:36DB idle _farrealloc\r
- 0000:3FF1 _fclose\r
- 0000:40A1 _fflush\r
- 0000:4167 _filelength\r
- 0000:216A idle _filesize\r
- 04FC:11C4 idle _finishcachebox\r
- 0000:41A8 _flushall\r
- 0000:43B1 _fopen\r
- 0000:43E6 _fprintf\r
- 0000:48A1 idle _fputc\r
- 0000:4A2A idle _fputchar\r
- 0000:3466 _free\r
- 0000:4484 _fseek\r
- 0000:4500 _ftell\r
- 0000:38E1 _getch\r
- 0000:38FA idle _getche\r
- 0000:209D _GetFarFreeSize\r
- 0000:1F2E _GetFreeSize\r
- 0000:3935 _gettext\r
- 0000:39E1 _ioctl\r
- 0000:27C3 _isatty\r
- 0000:45DA idle _itoa\r
- 0000:3A0A _kbhit\r
- 0000:2876 _lseek\r
- 0000:4622 idle _ltoa\r
- 0000:028F _main\r
- 0000:3570 _malloc\r
- 0000:464A _memcpy\r
- 0000:0512 idle _MML_CheckForEMS\r
- 0000:07E0 idle _MML_CheckForXMS\r
- 0000:0AA0 idle _MML_ClearBlock\r
- 0000:0557 idle _MML_SetupEMS\r
- 0000:0817 idle _MML_SetupXMS\r
- 0000:065D idle _MML_ShutdownEMS\r
- 0000:08BD idle _MML_ShutdownXMS\r
- 0000:08F0 idle _MML_UseSpace\r
- 0000:1DB5 idle _MM_BombOnError\r
- 0000:1862 _MM_DumpData\r
- 0000:1E1A idle _MM_FreeBlock\r
- 0000:1281 _MM_FreePtr\r
- 0000:1DC4 idle _MM_GetNewBlock\r
- 0000:0FCD _MM_GetPtr\r
- 0000:069E idle _MM_MapEMS\r
- 0000:0737 idle _MM_MapXEMS\r
- 0000:1AA9 _MM_Report\r
- 0000:141F idle _MM_SetLock\r
- 0000:135B idle _MM_SetPurge\r
- 0000:165F _MM_ShowMemory\r
- 0000:0F48 _MM_Shutdown\r
- 0000:14E8 idle _MM_SortMem\r
- 0000:0B06 _MM_Startup\r
- 0000:1A10 idle _MM_TotalFree\r
- 0000:199E idle _MM_UnusedMemory\r
- 0000:466E _movedata\r
- 0000:3A1C _movetext\r
- 0000:46BD _open\r
- 0000:486C _printf\r
- 04FC:11CC idle _profilehandle\r
- 0000:3AB9 _putch\r
- 0000:398B _puttext\r
- 0000:36D4 idle _realloc\r
- 0000:3F48 _setblock\r
- 0000:4C2B _setvbuf\r
- 0000:4D3C _strcat\r
- 0000:4D7B _strcpy\r
- 0000:4DA4 _strlen\r
- 0000:2A22 _tolower\r
- 0000:4605 _ultoa\r
- 0000:3917 idle _ungetch\r
- 0000:2A4E _unlink\r
- 04FC:11C6 idle _updatecachebox\r
- 0000:21C9 _US_CheckParm\r
- 0000:1E59 idle _wait\r
- 0000:3F6E idle _wherex\r
- 0000:3F7D idle _wherey\r
- 0000:4F48 _write\r
- 04FC:11BE idle _XMSaddr\r
+ 0589:10E4 idle _aftersort\r
+ 0000:2B51 idle _atexit\r
+ 0589:10E6 idle _beforesort\r
+ 0000:0EE1 idle _CAL_OptimizeNodes\r
+ 0000:04AF idle _catread\r
+ 0000:0D6C _CA_CloseDebug\r
+ 0000:0D79 idle _CA_FarRead\r
+ 0000:0DB7 idle _CA_FarWrite\r
+ 0000:0E5C _CA_LoadFile\r
+ 0000:0D4B _CA_OpenDebug\r
+ 0000:0DF5 idle _CA_ReadFile\r
+ 0000:0F70 _CA_Shutdown\r
+ 0000:0F4F _CA_Startup\r
+ 0000:2B75 _clock\r
+ 0000:4606 _close\r
+ 0000:3615 _coreleft\r
+ 0000:374B idle _cprintf\r
+ 0000:078D idle _db_fetch\r
+ 0000:07DD idle _db_insert\r
+ 0589:10DE _debughandle\r
+ 0589:1059 _directvideo\r
+ 0589:10DC idle _drawcachebox\r
+ 0589:10A8 _environ\r
+ 0589:007F _errno\r
+ 0000:2C49 _exit\r
+ 0000:3E96 _farcoreleft\r
+ 0000:3A6B _farfree\r
+ 0000:3B7F _farmalloc\r
+ 0000:3CE0 idle _farrealloc\r
+ 0000:464A _fclose\r
+ 0000:46FA _fflush\r
+ 0000:47C0 _filelength\r
+ 0000:0FBC idle _filesize\r
+ 0589:10D8 idle _finishcachebox\r
+ 0000:4801 _flushall\r
+ 0000:4A0A _fopen\r
+ 0000:4A3F _fprintf\r
+ 0000:4F6A idle _fputc\r
+ 0000:50F3 idle _fputchar\r
+ 0000:3A6B _free\r
+ 0000:4ADD _fseek\r
+ 0000:4B59 _ftell\r
+ 0000:3EE6 _getch\r
+ 0000:3EFF idle _getche\r
+ 0000:4C33 _getenv\r
+ 0000:3F3A _gettext\r
+ 0000:0738 idle _get_line\r
+ 0000:0B09 idle _HC_CloseDebug\r
+ 0000:0AE8 idle _HC_OpenDebug\r
+ 0589:10D6 idle _heaphandle\r
+ 0000:3FE6 _ioctl\r
+ 0000:2D99 _isatty\r
+ 0000:4CA3 idle _itoa\r
+ 0000:400F _kbhit\r
+ 0000:0546 idle _kittenclose\r
+ 0000:02DE idle _kittenopen\r
+ 0000:0979 idle _LargestFarFreeBlock\r
+ 0000:0886 idle _LargestFreeBlock\r
+ 0000:2E4C _lseek\r
+ 0000:4CEB idle _ltoa\r
+ 0000:0B16 _main\r
+ 0000:3B75 _malloc\r
+ 0000:4D13 _memcpy\r
+ 0000:11BF idle _MML_CheckForEMS\r
+ 0000:148D idle _MML_CheckForXMS\r
+ 0000:1747 idle _MML_ClearBlock\r
+ 0000:1204 idle _MML_SetupEMS\r
+ 0000:14C4 idle _MML_SetupXMS\r
+ 0000:130A idle _MML_ShutdownEMS\r
+ 0000:156A idle _MML_ShutdownXMS\r
+ 0000:159D idle _MML_UseSpace\r
+ 0000:2A47 idle _MM_BombOnError\r
+ 0000:24F4 _MM_DumpData\r
+ 0000:2AFA idle _MM_FreeBlock\r
+ 0000:1F64 _MM_FreePtr\r
+ 0000:2A56 idle _MM_GetNewBlock\r
+ 0000:1BEB _MM_GetPtr\r
+ 0000:134B idle _MM_MapEMS\r
+ 0000:13E4 idle _MM_MapXEMS\r
+ 0000:273B _MM_Report\r
+ 0000:2B4B idle _MM_segude\r
+ 0000:2B40 idle _MM_seguin\r
+ 0000:2105 idle _MM_SetLock\r
+ 0000:203E idle _MM_SetPurge\r
+ 0000:2348 _MM_ShowMemory\r
+ 0000:1B69 _MM_Shutdown\r
+ 0000:21D1 idle _MM_SortMem\r
+ 0000:17AD _MM_Startup\r
+ 0000:26A2 idle _MM_TotalFree\r
+ 0000:2630 idle _MM_UnusedMemory\r
+ 0000:4D37 _movedata\r
+ 0000:4021 _movetext\r
+ 0000:0551 idle _mystrtoul\r
+ 0000:4D86 _open\r
+ 0000:4F35 _printf\r
+ 0000:101B idle _printmeminfoline\r
+ 0000:05DE idle _processEscChars\r
+ 0589:10E0 idle _profilehandle\r
+ 0000:40BE _putch\r
+ 0000:3F90 _puttext\r
+ 0000:53BF _read\r
+ 0000:3CD9 idle _realloc\r
+ 0000:454D _setblock\r
+ 0000:53C2 _setvbuf\r
+ 0000:5511 _sprintf\r
+ 0000:5554 _strcat\r
+ 0000:5593 _strchr\r
+ 0000:55D0 _strcmp\r
+ 0000:5600 _strcpy\r
+ 0000:5629 _strdup\r
+ 0000:5669 _strlen\r
+ 0000:3027 _tolower\r
+ 0000:4CCE _ultoa\r
+ 0000:3F1C idle _ungetch\r
+ 0000:3053 _unlink\r
+ 0589:10DA idle _updatecachebox\r
+ 0000:10ED _US_CheckParm\r
+ 0000:5533 idle _vsprintf\r
+ 0000:0F7D idle _wait\r
+ 0000:45C7 idle _wherex\r
+ 0000:45D6 idle _wherey\r
+ 0000:580D _write\r
+ 0589:10E2 idle _XMSaddr\r
0000:1000 idle __AHINCR\r
0000:000C idle __AHSHIFT\r
- 04FC:118E __argc\r
- 04FC:1190 __argv\r
- 04FC:0DA6 __atexitcnt\r
- 04FC:11CE __atexittbl\r
- 0000:37C7 __brk\r
- 04FC:008B __brklvl\r
- 04FC:006B __C0argc\r
- 04FC:006D __C0argv\r
- 0000:3228 idle __c0crtinit\r
- 04FC:0071 idle __C0environ\r
- 04FC:118D __cChar\r
- 0000:25E6 idle __cexit\r
- 04FC:118C __cFlag\r
+ 0589:1098 __argc\r
+ 0589:109A __argv\r
+ 0589:0CB0 __atexitcnt\r
+ 0589:10E8 __atexittbl\r
+ 0000:3DCC __brk\r
+ 0589:008B __brklvl\r
+ 0589:006B __C0argc\r
+ 0589:006D __C0argv\r
+ 0000:382D idle __c0crtinit\r
+ 0589:0071 __C0environ\r
+ 0589:1097 __cChar\r
+ 0000:2C6A idle __cexit\r
+ 0589:1096 __cFlag\r
0000:0166 __checknull\r
- 0000:3F90 __chmod\r
+ 0000:45E9 __chmod\r
0000:0153 __cleanup\r
- 0000:3FD3 __close\r
- 0000:3014 __CPUTN\r
- 0000:3245 idle __crtinit\r
- 04FC:0DA8 __ctype\r
+ 0000:462C __close\r
+ 0000:0906 idle __coreleft\r
+ 0000:3619 __CPUTN\r
+ 0000:384A idle __crtinit\r
+ 0589:0CB2 __ctype\r
0000:0000 Abs __cvtfak\r
- 0000:25F4 idle __c_exit\r
- 04FC:106E __doserrno\r
- 0000:27B1 __DOSERROR\r
- 04FC:1070 idle __dosErrorToSV\r
- 0000:253A __dos_getfileattr\r
- 0000:255A idle __dos_setfileattr\r
- 04FC:0075 __envLng\r
- 04FC:0077 __envseg\r
- 04FC:0079 idle __envSize\r
- 0000:25D4 __exit\r
- 04FC:0EAA __exitbuf\r
- 04FC:0EAC __exitfopen\r
- 04FC:0EAE idle __exitopen\r
- 04FC:106A __fmode\r
- 0000:4887 idle __fputc\r
- 0000:4A3D __FPUTN\r
- 0000:4367 idle __GETFP\r
- 04FC:0087 __heapbase\r
- 04FC:008F __heaptop\r
- 04FC:005B idle __Int0Vector\r
- 04FC:005F idle __Int4Vector\r
- 04FC:0063 idle __Int5Vector\r
- 04FC:0067 idle __Int6Vector\r
- 0000:2778 __IOERROR\r
- 0000:27D4 __LONGTOA\r
- 0000:289F __MKNAME\r
+ 0000:2C78 idle __c_exit\r
+ 0589:0F78 __doserrno\r
+ 0000:2D87 __DOSERROR\r
+ 0589:0F7A idle __dosErrorToSV\r
+ 0000:2BBE __dos_getfileattr\r
+ 0000:2BDE idle __dos_setfileattr\r
+ 0589:0075 __envLng\r
+ 0589:0077 __envseg\r
+ 0589:0079 __envSize\r
+ 0000:2C58 __exit\r
+ 0589:0DB4 __exitbuf\r
+ 0589:0DB6 __exitfopen\r
+ 0589:0DB8 idle __exitopen\r
+ 0000:0A1B idle __farcoreleft\r
+ 0589:0F74 __fmode\r
+ 0000:4F50 idle __fputc\r
+ 0000:5106 __FPUTN\r
+ 0000:49C0 idle __GETFP\r
+ 0589:0087 __heapbase\r
+ 0589:008F __heaptop\r
+ 0589:005B idle __Int0Vector\r
+ 0589:005F idle __Int4Vector\r
+ 0589:0063 idle __Int5Vector\r
+ 0589:0067 idle __Int6Vector\r
+ 0000:2D4E __IOERROR\r
+ 0589:0094 idle __kitten_catalog\r
+ 0000:2DAA __LONGTOA\r
+ 0000:2E75 __MKNAME\r
0000:028D idle __MMODEL\r
- 04FC:1040 __nfile\r
- 0000:38FA idle __Ngetche\r
- 04FC:106C __notUmask\r
- 0000:3917 idle __Nungetch\r
- 0000:481D __open\r
- 04FC:1042 __openfd\r
- 0000:429E idle __OPENFP\r
- 04FC:007D __osmajor\r
- 04FC:007E idle __osminor\r
- 04FC:007D idle __osversion\r
- 04FC:007B __psp\r
- 0000:3AD0 __REALCVT\r
- 04FC:11A4 __RealCvtVector\r
+ 0589:0F4A __nfile\r
+ 0000:3EFF idle __Ngetche\r
+ 0589:0F76 __notUmask\r
+ 0000:3F1C idle __Nungetch\r
+ 0000:4EE6 __open\r
+ 0589:0F4C __openfd\r
+ 0000:48F7 idle __OPENFP\r
+ 0589:007D __osmajor\r
+ 0589:007E idle __osminor\r
+ 0589:007D idle __osversion\r
+ 0589:007B __psp\r
+ 0000:2F46 __read\r
+ 0000:40D5 __REALCVT\r
+ 0589:10B2 __RealCvtVector\r
0000:01BC __restorezero\r
- 0000:3806 __sbrk\r
- 04FC:11A6 idle __ScanTodVector\r
- 0000:3C0A __SCREENIO\r
- 0000:3CBD __SCROLL\r
+ 0000:3E0B __sbrk\r
+ 0589:10B4 idle __ScanTodVector\r
+ 0000:420F __SCREENIO\r
+ 0000:42C2 __SCROLL\r
0000:0000 Abs __setargv__\r
- 0000:2970 __setupio\r
- 04FC:0081 __StartTime\r
- 04FC:10D4 __stklen\r
- 0000:2FE0 __stpcpy\r
- 04FC:0EB0 __streams\r
+ 0000:0000 idle __setenvp__\r
+ 0000:2F75 __setupio\r
+ 0589:0081 __StartTime\r
+ 0589:0FDE __stklen\r
+ 0000:35E5 __stpcpy\r
+ 0589:0DBA __streams\r
0000:0167 __terminate\r
- 0000:28F8 idle __TMPNAM\r
+ 0000:2ECE idle __TMPNAM\r
0000:0000 idle __turboCrt\r
- 0000:2856 __UTOA\r
- 0000:3C46 __VALIDATEXY\r
- 04FC:007D idle __version\r
- 04FC:1140 __video\r
- 0000:319D __VideoInt\r
- 0000:2A7E __VPRINTER\r
- 0000:2F41 __VPTR\r
- 0000:2F66 __VRAM\r
- 0000:3F64 __wherexy\r
- 0000:4F0C __write\r
- 04FC:113E __wscroll\r
- 0000:4F4B __xfclose\r
- 0000:4F86 __xfflush\r
- 04FC:0085 idle ___brklvl\r
- 0000:3326 idle ___first\r
- 0000:3328 idle ___last\r
- 0000:332A idle ___rover\r
- 0000:4DC3 ___write\r
+ 0000:2E2C __UTOA\r
+ 0000:424B __VALIDATEXY\r
+ 0589:007D idle __version\r
+ 0589:104A __video\r
+ 0000:37A2 __VideoInt\r
+ 0000:3083 __VPRINTER\r
+ 0000:3546 __VPTR\r
+ 0000:356B __VRAM\r
+ 0000:45BD __wherexy\r
+ 0000:57D1 __write\r
+ 0589:1048 __wscroll\r
+ 0000:5810 __xfclose\r
+ 0000:584B __xfflush\r
+ 0589:0085 idle ___brklvl\r
+ 0000:392B idle ___first\r
+ 0000:392D idle ___last\r
+ 0000:52F4 ___read\r
+ 0000:392F idle ___rover\r
+ 0000:5688 ___write\r
\r
Address Publics by Value\r
\r
0000:0000 Abs __setargv__\r
0000:0000 idle __turboCrt\r
0000:0000 Abs __cvtfak\r
+ 0000:0000 idle __setenvp__\r
0000:000C idle __AHSHIFT\r
0000:0153 __cleanup\r
0000:0166 __checknull\r
0000:0276 _abort\r
0000:028B idle DGROUP@\r
0000:028D idle __MMODEL\r
- 0000:028F _main\r
- 0000:0512 idle _MML_CheckForEMS\r
- 0000:0557 idle _MML_SetupEMS\r
- 0000:065D idle _MML_ShutdownEMS\r
- 0000:069E idle _MM_MapEMS\r
- 0000:0737 idle _MM_MapXEMS\r
- 0000:07E0 idle _MML_CheckForXMS\r
- 0000:0817 idle _MML_SetupXMS\r
- 0000:08BD idle _MML_ShutdownXMS\r
- 0000:08F0 idle _MML_UseSpace\r
- 0000:0AA0 idle _MML_ClearBlock\r
- 0000:0B06 _MM_Startup\r
- 0000:0F48 _MM_Shutdown\r
- 0000:0FCD _MM_GetPtr\r
+ 0000:028F idle KITTENGETS\r
+ 0000:02DE idle _kittenopen\r
+ 0000:04AF idle _catread\r
+ 0000:0546 idle _kittenclose\r
+ 0000:0551 idle _mystrtoul\r
+ 0000:05DE idle _processEscChars\r
+ 0000:0738 idle _get_line\r
+ 0000:078D idle _db_fetch\r
+ 0000:07DD idle _db_insert\r
+ 0000:0886 idle _LargestFreeBlock\r
+ 0000:0906 idle __coreleft\r
+ 0000:0979 idle _LargestFarFreeBlock\r
+ 0000:0A1B idle __farcoreleft\r
+ 0000:0AE8 idle _HC_OpenDebug\r
+ 0000:0B09 idle _HC_CloseDebug\r
+ 0000:0B16 _main\r
+ 0000:0D4B _CA_OpenDebug\r
+ 0000:0D6C _CA_CloseDebug\r
+ 0000:0D79 idle _CA_FarRead\r
+ 0000:0DB7 idle _CA_FarWrite\r
+ 0000:0DF5 idle _CA_ReadFile\r
+ 0000:0E5C _CA_LoadFile\r
+ 0000:0EE1 idle _CAL_OptimizeNodes\r
+ 0000:0F4F _CA_Startup\r
+ 0000:0F70 _CA_Shutdown\r
+ 0000:0F7D idle _wait\r
+ 0000:0FBC idle _filesize\r
0000:1000 idle __AHINCR\r
- 0000:1281 _MM_FreePtr\r
- 0000:135B idle _MM_SetPurge\r
- 0000:141F idle _MM_SetLock\r
- 0000:14E8 idle _MM_SortMem\r
- 0000:165F _MM_ShowMemory\r
- 0000:1862 _MM_DumpData\r
- 0000:199E idle _MM_UnusedMemory\r
- 0000:1A10 idle _MM_TotalFree\r
- 0000:1AA9 _MM_Report\r
- 0000:1DB5 idle _MM_BombOnError\r
- 0000:1DC4 idle _MM_GetNewBlock\r
- 0000:1E1A idle _MM_FreeBlock\r
- 0000:1E59 idle _wait\r
- 0000:1E98 idle _AllocateLargestFreeBlock\r
- 0000:1F2E _GetFreeSize\r
- 0000:1FFB idle _AllocateLargestFarFreeBlock\r
- 0000:209D _GetFarFreeSize\r
- 0000:216A idle _filesize\r
- 0000:21C9 _US_CheckParm\r
- 0000:229B _CA_OpenDebug\r
- 0000:22BC _CA_CloseDebug\r
- 0000:22C9 idle _CA_FarRead\r
- 0000:2307 idle _CA_FarWrite\r
- 0000:2345 idle _CA_ReadFile\r
- 0000:23AC _CA_LoadFile\r
- 0000:2431 idle _CAL_OptimizeNodes\r
- 0000:249F _CA_Startup\r
- 0000:24C0 _CA_Shutdown\r
- 0000:24CD idle _atexit\r
- 0000:24F1 _clock\r
- 0000:253A __dos_getfileattr\r
- 0000:255A idle __dos_setfileattr\r
- 0000:25C5 _exit\r
- 0000:25D4 __exit\r
- 0000:25E6 idle __cexit\r
- 0000:25F4 idle __c_exit\r
- 0000:2600 idle N_LDIV@\r
- 0000:2603 idle LDIV@\r
- 0000:2603 idle F_LDIV@\r
- 0000:2607 N_LUDIV@\r
- 0000:260A idle F_LUDIV@\r
- 0000:260A idle LUDIV@\r
- 0000:260F idle N_LMOD@\r
- 0000:2612 idle F_LMOD@\r
- 0000:2612 idle LMOD@\r
- 0000:2617 idle N_LUMOD@\r
- 0000:261A idle LUMOD@\r
- 0000:261A idle F_LUMOD@\r
- 0000:26AE N_LXLSH@\r
- 0000:26B1 idle LXLSH@\r
- 0000:26B1 idle F_LXLSH@\r
- 0000:26CF N_LXURSH@\r
- 0000:26D2 idle LXURSH@\r
- 0000:26D2 idle F_LXURSH@\r
- 0000:26F0 N_PADD@\r
- 0000:26F3 idle F_PADD@\r
- 0000:26F3 idle PADD@\r
- 0000:271F idle N_PSUB@\r
- 0000:2722 idle F_PSUB@\r
- 0000:2722 idle PSUB@\r
- 0000:2750 N_PSBP@\r
- 0000:2753 idle PSBP@\r
- 0000:2753 idle F_PSBP@\r
- 0000:2778 __IOERROR\r
- 0000:27B1 __DOSERROR\r
- 0000:27C3 _isatty\r
- 0000:27D4 __LONGTOA\r
- 0000:2856 __UTOA\r
- 0000:2876 _lseek\r
- 0000:289F __MKNAME\r
- 0000:28F8 idle __TMPNAM\r
- 0000:294F N_PCMP@\r
- 0000:2970 __setupio\r
- 0000:2A22 _tolower\r
- 0000:2A4E _unlink\r
- 0000:2A7E __VPRINTER\r
- 0000:2F41 __VPTR\r
- 0000:2F66 __VRAM\r
- 0000:2FE0 __stpcpy\r
- 0000:3010 _coreleft\r
- 0000:3014 __CPUTN\r
- 0000:3146 idle _cprintf\r
- 0000:319D __VideoInt\r
- 0000:3228 idle __c0crtinit\r
- 0000:3245 idle __crtinit\r
- 0000:3326 idle ___first\r
- 0000:3328 idle ___last\r
- 0000:332A idle ___rover\r
- 0000:3466 _free\r
- 0000:3466 _farfree\r
- 0000:3570 _malloc\r
- 0000:357A _farmalloc\r
- 0000:36D4 idle _realloc\r
- 0000:36DB idle _farrealloc\r
- 0000:37C7 __brk\r
- 0000:3806 __sbrk\r
- 0000:3891 _farcoreleft\r
- 0000:38E1 _getch\r
- 0000:38FA idle __Ngetche\r
- 0000:38FA idle _getche\r
- 0000:3917 idle __Nungetch\r
- 0000:3917 idle _ungetch\r
- 0000:3935 _gettext\r
- 0000:398B _puttext\r
- 0000:39E1 _ioctl\r
- 0000:3A0A _kbhit\r
- 0000:3A1C _movetext\r
- 0000:3AB9 _putch\r
- 0000:3AD0 __REALCVT\r
- 0000:3C0A __SCREENIO\r
- 0000:3C46 __VALIDATEXY\r
- 0000:3CBD __SCROLL\r
- 0000:3F48 _setblock\r
- 0000:3F64 __wherexy\r
- 0000:3F6E idle _wherex\r
- 0000:3F7D idle _wherey\r
- 0000:3F90 __chmod\r
- 0000:3FAD _close\r
- 0000:3FD3 __close\r
- 0000:3FF1 _fclose\r
- 0000:40A1 _fflush\r
- 0000:4167 _filelength\r
- 0000:41A8 _flushall\r
- 0000:429E idle __OPENFP\r
- 0000:4367 idle __GETFP\r
- 0000:43B1 _fopen\r
- 0000:43E6 _fprintf\r
- 0000:4484 _fseek\r
- 0000:4500 _ftell\r
- 0000:45DA idle _itoa\r
- 0000:4605 _ultoa\r
- 0000:4622 idle _ltoa\r
- 0000:464A _memcpy\r
- 0000:466E _movedata\r
- 0000:46BD _open\r
- 0000:481D __open\r
- 0000:486C _printf\r
- 0000:4887 idle __fputc\r
- 0000:48A1 idle _fputc\r
- 0000:4A2A idle _fputchar\r
- 0000:4A3D __FPUTN\r
- 0000:4C2B _setvbuf\r
- 0000:4D3C _strcat\r
- 0000:4D7B _strcpy\r
- 0000:4DA4 _strlen\r
- 0000:4DC3 ___write\r
- 0000:4F0C __write\r
- 0000:4F48 _write\r
- 0000:4F4B __xfclose\r
- 0000:4F86 __xfflush\r
- 04FC:0000 idle DATASEG@\r
- 04FC:005B idle __Int0Vector\r
- 04FC:005F idle __Int4Vector\r
- 04FC:0063 idle __Int5Vector\r
- 04FC:0067 idle __Int6Vector\r
- 04FC:006B __C0argc\r
- 04FC:006D __C0argv\r
- 04FC:0071 idle __C0environ\r
- 04FC:0075 __envLng\r
- 04FC:0077 __envseg\r
- 04FC:0079 idle __envSize\r
- 04FC:007B __psp\r
- 04FC:007D idle __osversion\r
- 04FC:007D __osmajor\r
- 04FC:007D idle __version\r
- 04FC:007E idle __osminor\r
- 04FC:007F _errno\r
- 04FC:0081 __StartTime\r
- 04FC:0085 idle ___brklvl\r
- 04FC:0087 __heapbase\r
- 04FC:008B __brklvl\r
- 04FC:008F __heaptop\r
- 04FC:0DA6 __atexitcnt\r
- 04FC:0DA8 __ctype\r
- 04FC:0EAA __exitbuf\r
- 04FC:0EAC __exitfopen\r
- 04FC:0EAE idle __exitopen\r
- 04FC:0EB0 __streams\r
- 04FC:1040 __nfile\r
- 04FC:1042 __openfd\r
- 04FC:106A __fmode\r
- 04FC:106C __notUmask\r
- 04FC:106E __doserrno\r
- 04FC:1070 idle __dosErrorToSV\r
- 04FC:10D4 __stklen\r
- 04FC:113E __wscroll\r
- 04FC:1140 __video\r
- 04FC:114F _directvideo\r
- 04FC:118C __cFlag\r
- 04FC:118D __cChar\r
- 04FC:118E __argc\r
- 04FC:1190 __argv\r
- 04FC:11A4 __RealCvtVector\r
- 04FC:11A6 idle __ScanTodVector\r
- 04FC:11BE idle _XMSaddr\r
- 04FC:11C0 idle _aftersort\r
- 04FC:11C2 idle _beforesort\r
- 04FC:11C4 idle _finishcachebox\r
- 04FC:11C6 idle _updatecachebox\r
- 04FC:11C8 idle _drawcachebox\r
- 04FC:11CA _debughandle\r
- 04FC:11CC idle _profilehandle\r
- 04FC:11CE __atexittbl\r
+ 0000:101B idle _printmeminfoline\r
+ 0000:10ED _US_CheckParm\r
+ 0000:11BF idle _MML_CheckForEMS\r
+ 0000:1204 idle _MML_SetupEMS\r
+ 0000:130A idle _MML_ShutdownEMS\r
+ 0000:134B idle _MM_MapEMS\r
+ 0000:13E4 idle _MM_MapXEMS\r
+ 0000:148D idle _MML_CheckForXMS\r
+ 0000:14C4 idle _MML_SetupXMS\r
+ 0000:156A idle _MML_ShutdownXMS\r
+ 0000:159D idle _MML_UseSpace\r
+ 0000:1747 idle _MML_ClearBlock\r
+ 0000:17AD _MM_Startup\r
+ 0000:1B69 _MM_Shutdown\r
+ 0000:1BEB _MM_GetPtr\r
+ 0000:1F64 _MM_FreePtr\r
+ 0000:203E idle _MM_SetPurge\r
+ 0000:2105 idle _MM_SetLock\r
+ 0000:21D1 idle _MM_SortMem\r
+ 0000:2348 _MM_ShowMemory\r
+ 0000:24F4 _MM_DumpData\r
+ 0000:2630 idle _MM_UnusedMemory\r
+ 0000:26A2 idle _MM_TotalFree\r
+ 0000:273B _MM_Report\r
+ 0000:2A47 idle _MM_BombOnError\r
+ 0000:2A56 idle _MM_GetNewBlock\r
+ 0000:2AFA idle _MM_FreeBlock\r
+ 0000:2B40 idle _MM_seguin\r
+ 0000:2B4B idle _MM_segude\r
+ 0000:2B51 idle _atexit\r
+ 0000:2B75 _clock\r
+ 0000:2BBE __dos_getfileattr\r
+ 0000:2BDE idle __dos_setfileattr\r
+ 0000:2C49 _exit\r
+ 0000:2C58 __exit\r
+ 0000:2C6A idle __cexit\r
+ 0000:2C78 idle __c_exit\r
+ 0000:2C84 N_LXLSH@\r
+ 0000:2C87 idle LXLSH@\r
+ 0000:2C87 idle F_LXLSH@\r
+ 0000:2CA5 N_LXURSH@\r
+ 0000:2CA8 idle LXURSH@\r
+ 0000:2CA8 idle F_LXURSH@\r
+ 0000:2CC6 N_PADD@\r
+ 0000:2CC9 idle F_PADD@\r
+ 0000:2CC9 idle PADD@\r
+ 0000:2CF5 idle N_PSUB@\r
+ 0000:2CF8 idle F_PSUB@\r
+ 0000:2CF8 idle PSUB@\r
+ 0000:2D26 N_PSBP@\r
+ 0000:2D29 idle PSBP@\r
+ 0000:2D29 idle F_PSBP@\r
+ 0000:2D4E __IOERROR\r
+ 0000:2D87 __DOSERROR\r
+ 0000:2D99 _isatty\r
+ 0000:2DAA __LONGTOA\r
+ 0000:2E2C __UTOA\r
+ 0000:2E4C _lseek\r
+ 0000:2E75 __MKNAME\r
+ 0000:2ECE idle __TMPNAM\r
+ 0000:2F25 N_PCMP@\r
+ 0000:2F46 __read\r
+ 0000:2F75 __setupio\r
+ 0000:3027 _tolower\r
+ 0000:3053 _unlink\r
+ 0000:3083 __VPRINTER\r
+ 0000:3546 __VPTR\r
+ 0000:356B __VRAM\r
+ 0000:35E5 __stpcpy\r
+ 0000:3615 _coreleft\r
+ 0000:3619 __CPUTN\r
+ 0000:374B idle _cprintf\r
+ 0000:37A2 __VideoInt\r
+ 0000:382D idle __c0crtinit\r
+ 0000:384A idle __crtinit\r
+ 0000:392B idle ___first\r
+ 0000:392D idle ___last\r
+ 0000:392F idle ___rover\r
+ 0000:3A6B _free\r
+ 0000:3A6B _farfree\r
+ 0000:3B75 _malloc\r
+ 0000:3B7F _farmalloc\r
+ 0000:3CD9 idle _realloc\r
+ 0000:3CE0 idle _farrealloc\r
+ 0000:3DCC __brk\r
+ 0000:3E0B __sbrk\r
+ 0000:3E96 _farcoreleft\r
+ 0000:3EE6 _getch\r
+ 0000:3EFF idle __Ngetche\r
+ 0000:3EFF idle _getche\r
+ 0000:3F1C idle __Nungetch\r
+ 0000:3F1C idle _ungetch\r
+ 0000:3F3A _gettext\r
+ 0000:3F90 _puttext\r
+ 0000:3FE6 _ioctl\r
+ 0000:400F _kbhit\r
+ 0000:4021 _movetext\r
+ 0000:40BE _putch\r
+ 0000:40D5 __REALCVT\r
+ 0000:420F __SCREENIO\r
+ 0000:424B __VALIDATEXY\r
+ 0000:42C2 __SCROLL\r
+ 0000:454D _setblock\r
+ 0000:45BD __wherexy\r
+ 0000:45C7 idle _wherex\r
+ 0000:45D6 idle _wherey\r
+ 0000:45E9 __chmod\r
+ 0000:4606 _close\r
+ 0000:462C __close\r
+ 0000:464A _fclose\r
+ 0000:46FA _fflush\r
+ 0000:47C0 _filelength\r
+ 0000:4801 _flushall\r
+ 0000:48F7 idle __OPENFP\r
+ 0000:49C0 idle __GETFP\r
+ 0000:4A0A _fopen\r
+ 0000:4A3F _fprintf\r
+ 0000:4ADD _fseek\r
+ 0000:4B59 _ftell\r
+ 0000:4C33 _getenv\r
+ 0000:4CA3 idle _itoa\r
+ 0000:4CCE _ultoa\r
+ 0000:4CEB idle _ltoa\r
+ 0000:4D13 _memcpy\r
+ 0000:4D37 _movedata\r
+ 0000:4D86 _open\r
+ 0000:4EE6 __open\r
+ 0000:4F35 _printf\r
+ 0000:4F50 idle __fputc\r
+ 0000:4F6A idle _fputc\r
+ 0000:50F3 idle _fputchar\r
+ 0000:5106 __FPUTN\r
+ 0000:52F4 ___read\r
+ 0000:53BF _read\r
+ 0000:53C2 _setvbuf\r
+ 0000:5511 _sprintf\r
+ 0000:5533 idle _vsprintf\r
+ 0000:5554 _strcat\r
+ 0000:5593 _strchr\r
+ 0000:55D0 _strcmp\r
+ 0000:5600 _strcpy\r
+ 0000:5629 _strdup\r
+ 0000:5669 _strlen\r
+ 0000:5688 ___write\r
+ 0000:57D1 __write\r
+ 0000:580D _write\r
+ 0000:5810 __xfclose\r
+ 0000:584B __xfflush\r
+ 0589:0000 idle DATASEG@\r
+ 0589:005B idle __Int0Vector\r
+ 0589:005F idle __Int4Vector\r
+ 0589:0063 idle __Int5Vector\r
+ 0589:0067 idle __Int6Vector\r
+ 0589:006B __C0argc\r
+ 0589:006D __C0argv\r
+ 0589:0071 __C0environ\r
+ 0589:0075 __envLng\r
+ 0589:0077 __envseg\r
+ 0589:0079 __envSize\r
+ 0589:007B __psp\r
+ 0589:007D idle __osversion\r
+ 0589:007D __osmajor\r
+ 0589:007D idle __version\r
+ 0589:007E idle __osminor\r
+ 0589:007F _errno\r
+ 0589:0081 __StartTime\r
+ 0589:0085 idle ___brklvl\r
+ 0589:0087 __heapbase\r
+ 0589:008B __brklvl\r
+ 0589:008F __heaptop\r
+ 0589:0094 idle __kitten_catalog\r
+ 0589:0CB0 __atexitcnt\r
+ 0589:0CB2 __ctype\r
+ 0589:0DB4 __exitbuf\r
+ 0589:0DB6 __exitfopen\r
+ 0589:0DB8 idle __exitopen\r
+ 0589:0DBA __streams\r
+ 0589:0F4A __nfile\r
+ 0589:0F4C __openfd\r
+ 0589:0F74 __fmode\r
+ 0589:0F76 __notUmask\r
+ 0589:0F78 __doserrno\r
+ 0589:0F7A idle __dosErrorToSV\r
+ 0589:0FDE __stklen\r
+ 0589:1048 __wscroll\r
+ 0589:104A __video\r
+ 0589:1059 _directvideo\r
+ 0589:1096 __cFlag\r
+ 0589:1097 __cChar\r
+ 0589:1098 __argc\r
+ 0589:109A __argv\r
+ 0589:10A8 _environ\r
+ 0589:10B2 __RealCvtVector\r
+ 0589:10B4 idle __ScanTodVector\r
+ 0589:10D6 idle _heaphandle\r
+ 0589:10D8 idle _finishcachebox\r
+ 0589:10DA idle _updatecachebox\r
+ 0589:10DC idle _drawcachebox\r
+ 0589:10DE _debughandle\r
+ 0589:10E0 idle _profilehandle\r
+ 0589:10E2 idle _XMSaddr\r
+ 0589:10E4 idle _aftersort\r
+ 0589:10E6 idle _beforesort\r
+ 0589:10E8 __atexittbl\r
\r
Program entry point at 0000:0000\r
\r
--- /dev/null
+\r
+/* Functions that emulate UNIX catgets */\r
+\r
+/* Copyright (C) 1999,2000,2001 Jim Hall <jhall@freedos.org> */\r
+\r
+/*\r
+ This library is free software; you can redistribute it and/or\r
+ modify it under the terms of the GNU Lesser General Public\r
+ License as published by the Free Software Foundation; either\r
+ version 2.1 of the License, or (at your option) any later version.\r
+\r
+ This library is distributed in the hope that it will be useful,\r
+ but WITHOUT ANY WARRANTY; without even the implied warranty of\r
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\r
+ Lesser General Public License for more details.\r
+\r
+ You should have received a copy of the GNU Lesser General Public\r
+ License along with this library; if not, write to the Free Software\r
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA\r
+*/\r
+\r
+#include <stdio.h> /* sprintf */\r
+#include <stdlib.h> /* getenv */\r
+#include <string.h> /* strchr */\r
+#include <sys/stat.h>\r
+#include <io.h>\r
+#include <fcntl.h>\r
+\r
+#include "src/lib/nyan/kitten.h"\r
+\r
+\r
+/* DB stuff */\r
+\r
+struct db_list{\r
+ struct db_list *next;\r
+ char *key;\r
+ char *value;\r
+};\r
+\r
+typedef struct db_list db_t;\r
+\r
+db_t *db_insert (char *key, char *value);\r
+db_t *db_fetch (char *key);\r
+\r
+\r
+/* External functions */\r
+\r
+int get_line (int file, char *buffer, int size);\r
+\r
+\r
+/* Local prototypes */\r
+\r
+int catread (char *catfile); /* Reads a catfile into the hash */\r
+char *processEscChars(char *line); /* Converts c escape sequences to chars */\r
+\r
+/* Globals */\r
+\r
+nl_catd _kitten_catalog = 0; /* _kitten_catalog descriptor, either 0 or 1 */\r
+\r
+\r
+\r
+#if defined(__SMALL__) /* it's not very portable ;) */\r
+\r
+#include <dos.h>\r
+/* assert we are running in small model */\r
+/* else pointer below has to be done correctly */\r
+char verify_small_pointers[sizeof(void*) == 2 ? 1 : -1];\r
+\r
+\r
+int dos_open(char *filename, int mode);\r
+#define open(filename,mode) dos_open(filename,mode)\r
+\r
+int dos_read(int file, void *ptr, unsigned count);\r
+#define read(file, ptr, count) dos_read(file,ptr,count)\r
+\r
+void dos_close(int file);\r
+#define close(file) dos_close(file)\r
+\r
+#ifdef __WATCOMC__\r
+\r
+#pragma aux dos_open = \\r
+"mov ax, 0x3d00" \\r
+"int 0x21" \\r
+"jnc noerror" \\r
+"mov ax, 0xffff" \\r
+"noerror:" \\r
+parm [dx] [ax] value [ax];\r
+\r
+#pragma aux dos_read = \\r
+"mov ah, 0x3f" \\r
+"int 0x21" \\r
+"jnc noerror" \\r
+"xor ax, ax" \\r
+"noerror:" \\r
+parm [bx] [dx] [cx] value [ax];\r
+\r
+#pragma aux dos_close = \\r
+"mov ah, 0x3e" \\r
+"int 0x21" \\r
+parm [bx];\r
+\r
+#else\r
+\r
+int dos_open(char *filename, int mode)\r
+{\r
+ union REGS r;\r
+\r
+ if (mode); /* mode ignored - readonly supported */\r
+\r
+ r.h.ah = 0x3d;\r
+ r.h.al = 0; /* read mode only supoported now !! */\r
+ r.x.dx = (unsigned)filename;\r
+ intdos(&r,&r);\r
+\r
+ if (r.x.cflag)\r
+ return -1;\r
+ return r.x.ax;\r
+}\r
+\r
+int dos_read(int file, void *ptr, unsigned count)\r
+{\r
+ union REGS r;\r
+\r
+ r.h.ah = 0x3f;\r
+ r.x.bx = file;\r
+ r.x.cx = count;\r
+ r.x.dx = (unsigned)ptr;\r
+ intdos(&r,&r);\r
+\r
+ if (r.x.cflag)\r
+ return 0;\r
+ return r.x.ax;\r
+}\r
+\r
+void dos_close(int file)\r
+{\r
+ union REGS r;\r
+\r
+ r.h.ah = 0x3e;\r
+ r.x.bx = file;\r
+ intdos(&r,&r);\r
+}\r
+\r
+#endif\r
+#endif\r
+\r
+#ifndef NOCATS\r
+\r
+/* Functions */\r
+\r
+char *\r
+pascal kittengets(int set_number, int message_number, char *message)\r
+{\r
+ /* get message from a message _kitten_catalog */\r
+\r
+ /* 'message' should really be const, but not when it is returned */\r
+\r
+ /* On success, catgets() returns a pointer to an internal buffer\r
+ area containing the null-terminated message string. On failure,\r
+ catgets() returns the value 'message'. */\r
+\r
+ char key[10];\r
+ db_t *ptr;\r
+\r
+\r
+ /* fetch the message that goes with the set/message number */\r
+\r
+ sprintf (key, "%d.%d", set_number, message_number);\r
+ ptr = db_fetch (key);\r
+\r
+ /* printf("\ncatgets %s\n",message); */\r
+\r
+ if (ptr)\r
+ {\r
+ /* printf("------> %s\n",ptr->value); */\r
+\r
+ return (ptr->value);\r
+ }\r
+\r
+ /* else */\r
+\r
+ return (message);\r
+}\r
+\r
+nl_catd\r
+kittenopen(char *name)\r
+{\r
+ /* catopen() returns a message _kitten_catalog descriptor of type nl_catd on\r
+ success. On failure, it returns -1. */\r
+\r
+ /* 'flag' is completely ignored here. */\r
+\r
+ char catfile[256]; /* full path to the msg _kitten_catalog */\r
+ char *nlsptr; /* ptr to NLSPATH */\r
+ char *lang; /* ptr to LANG */\r
+\r
+\r
+\r
+ /* Open the _kitten_catalog file */\r
+\r
+ /* The value of `_kitten_catalog' will be set based on catread */\r
+\r
+ if (_kitten_catalog)\r
+ {\r
+ /* Already one open */\r
+\r
+ printf("cat already open\n");\r
+ return (-1);\r
+ }\r
+\r
+ /* If the message _kitten_catalog file name contains a directory separator,\r
+ assume that this is a real path to the _kitten_catalog file. Note that\r
+ catread will return a true or false value based on its ability\r
+ to read the catfile. */\r
+\r
+ if (strchr (name, '\\'))\r
+ {\r
+ /* first approximation: 'name' is a filename */\r
+\r
+ printf("found \\\n");\r
+\r
+ _kitten_catalog = catread (name);\r
+ return (_kitten_catalog);\r
+ }\r
+\r
+ /* If the message _kitten_catalog file name does not contain a directory\r
+ separator, then we need to try to locate the message _kitten_catalog on\r
+ our own. We will use several methods to find it. */\r
+\r
+ /* We will need the value of LANG, and may need a 2-letter abbrev of\r
+ LANG later on, so get it now. */\r
+\r
+ lang = getenv ("LANG");\r
+\r
+ if (lang == NULL)\r
+ {\r
+ /* printf("no lang= found\n"); */\r
+\r
+ /* Return failure - we won't be able to locate the cat file */\r
+ return (-1);\r
+ }\r
+\r
+\r
+ /* step through NLSPATH */\r
+\r
+ nlsptr = getenv ("NLSPATH");\r
+\r
+\r
+ if (nlsptr == NULL)\r
+ {\r
+ /* printf("no NLSPATH= found\n"); */\r
+\r
+ /* Return failure - we won't be able to locate the cat file */\r
+ return (-1);\r
+ }\r
+\r
+ /* printf("nlsptr:%s\n",nlsptr); */\r
+\r
+ while (*nlsptr)\r
+ {\r
+ char *tok = strchr(nlsptr, ';');\r
+ int toklen;\r
+\r
+\r
+ if (tok == NULL) tok = nlsptr + strlen(nlsptr);\r
+ toklen=tok-nlsptr;\r
+ /* Try to find the _kitten_catalog file in each path from NLSPATH */\r
+\r
+ /* Rule #1: %NLSPATH%\%LANG%\cat */\r
+\r
+ memcpy(catfile,nlsptr,toklen);\r
+ sprintf(catfile+toklen,"\\%s\\%s",lang,name);\r
+\r
+ _kitten_catalog = catread (catfile);\r
+ if (_kitten_catalog)\r
+ {\r
+ return (_kitten_catalog);\r
+ }\r
+\r
+ /* Rule #2: %NLSPATH%\cat.%LANG% */\r
+\r
+ sprintf(catfile+toklen,"\\%s.%s",name, lang);\r
+\r
+ _kitten_catalog = catread (catfile);\r
+\r
+ if (_kitten_catalog)\r
+ {\r
+ return (_kitten_catalog);\r
+ }\r
+\r
+ /* Rule #3: if LANG looks to be in format "en-UK" then\r
+ %NLSPATH%\cat.EN */\r
+\r
+ if (lang[2] == '-')\r
+ {\r
+ lang[2] = 0;\r
+ sprintf(catfile+toklen,"\\%s.%s",name,lang);\r
+ lang[2] = '-';\r
+\r
+ _kitten_catalog = catread (catfile);\r
+ if (_kitten_catalog)\r
+ {\r
+ return (_kitten_catalog);\r
+ }\r
+ }\r
+\r
+ /* Grab next tok for the next while iteration */\r
+ nlsptr = tok;\r
+ if (*nlsptr) nlsptr++;\r
+\r
+ } /* while tok */\r
+\r
+ /* We could not find it. Return failure. */\r
+\r
+ return (0);\r
+}\r
+\r
+int\r
+catread (char *catfile)\r
+{\r
+ int file; /* pointer to the catfile */\r
+ char *key; /* part of key-value for hash */\r
+ char *value; /* part of key-value for hash */\r
+ char inBuffer[256]; /* the string read from the file */\r
+\r
+ /* Open the catfile for reading */\r
+\r
+ /*printf("catread %s\n",catfile); */\r
+\r
+ file = open (catfile, O_RDONLY | O_TEXT);\r
+ if (file < 0)\r
+ {\r
+ /* Cannot open the file. Return failure */\r
+ /* printf("catread: cant read %s\n",catfile); */\r
+ return (0);\r
+ }\r
+\r
+ /*printf("catread %s success\n",catfile);*/\r
+\r
+ /* Read the file into memory */\r
+\r
+ while (get_line (file, inBuffer, sizeof(inBuffer)))\r
+ {\r
+ /* Break into parts. Entries should be of the form:\r
+ "1.2:This is a message" */\r
+\r
+ /* A line that starts with '#' is considered a comment, and will\r
+ be thrown away without reading it. */\r
+\r
+ if (inBuffer[0] == '#') /* comment */\r
+ continue;\r
+\r
+ if ((key = strchr (inBuffer, ':')) != NULL)\r
+ {\r
+ *key = 0;\r
+\r
+ value = processEscChars(key+1);\r
+\r
+ db_insert (inBuffer, value);\r
+ }\r
+\r
+ } /* while */\r
+\r
+ close (file);\r
+\r
+ /* Return success */\r
+\r
+ return (1);\r
+}\r
+\r
+void\r
+kittenclose (void)\r
+{\r
+ /* close a message _kitten_catalog */\r
+\r
+ _kitten_catalog = 0;\r
+}\r
+\r
+\r
+\r
+/**\r
+ * Process strings, converting \n, \t, \v, \b, \r, \f, \\, \ddd, \xdd and \x0dd\r
+ * to actual chars. (Note: \x is an extension to support hexadecimal)\r
+ * This method is used to allow the message _kitten_catalog to use c escape sequences.\r
+ * Modifies the line in-place (always same size or shorter).\r
+ * Returns a pointer to input string.\r
+ */\r
+\r
+int mystrtoul(char *src, int base, int size, int *error)\r
+{\r
+ int ret = 0;\r
+\r
+ *error = 1;\r
+\r
+ for (; size > 0; size--)\r
+ {\r
+ int digit;\r
+ int ch = *src++;\r
+\r
+ if (ch >= '0' && ch <= '9') digit = ch - '0';\r
+ else if (ch >= 'A' && ch <= 'Z') digit = ch - 'A' + 10;\r
+ else if (ch >= 'a' && ch <= 'z') digit = ch - 'a' + 10;\r
+ else\r
+ {\r
+ return 0;\r
+ }\r
+\r
+ if (digit >= base)\r
+ {\r
+ return 0;\r
+ }\r
+\r
+ ret = ret * base + digit;\r
+ }\r
+\r
+ *error = 0;\r
+\r
+ return ret;\r
+}\r
+\r
+\r
+char *processEscChars(char *line)\r
+{\r
+ register char *src = line, *dst = line;\r
+\r
+ /* used when converting \xdd and \ddd (hex or octal) characters */\r
+ char ch;\r
+\r
+ if (line == NULL) return NULL;\r
+\r
+ /* cycle through copying characters, except when a \ is encountered. */\r
+ for ( ; *src != '\0'; src++, dst++)\r
+ {\r
+ ch = *src;\r
+\r
+ if (ch == '\\')\r
+ {\r
+ src++; /* point to char following slash */\r
+ switch (ch = *src)\r
+ {\r
+ case '\\': /* a single slash */\r
+ ch = '\\';\r
+ break;\r
+ case 'n': /* a newline (linefeed) */\r
+ ch = '\n';\r
+ break;\r
+ case 'r': /* a carriage return */\r
+ ch = '\r';\r
+ break;\r
+ case 't': /* a horizontal tab */\r
+ ch = '\t';\r
+ break;\r
+ case 'v': /* a vertical tab */\r
+ ch = '\v';\r
+ break;\r
+ case 'b': /* a backspace */\r
+ ch = '\b';\r
+ break;\r
+ case 'a': /* alert */\r
+ ch = '\a';\r
+ break;\r
+ case 'f': /* formfeed */\r
+ ch = '\f';\r
+ break;\r
+ case 'x': /* extension supporting hex numbers \xdd or \x0dd */\r
+ {\r
+ int error;\r
+ ch = mystrtoul(src+1,16,2, &error); /* get value */\r
+ if (!error) /* store character */\r
+ {\r
+ src += 2;\r
+ }\r
+ else /* error so just store x (loose slash) */\r
+ {\r
+ ch = *src;\r
+ }\r
+ }\r
+\r
+ break;\r
+ default: /* just store letter (loose slash) or handle octal */\r
+\r
+ {\r
+ int error;\r
+ ch = mystrtoul(src,8,3, &error); /* get value */\r
+ if (!error) /* store character */\r
+ {\r
+ src += 3;\r
+ }\r
+ else\r
+ ch = *src;\r
+ }\r
+\r
+ break;\r
+ }\r
+ }\r
+\r
+ *dst = ch;\r
+ }\r
+\r
+ /* ensure '\0' terminated */\r
+ *dst = '\0';\r
+\r
+ return line;\r
+}\r
+\r
+\r
+\r
+int\r
+get_line (int file, char *str, int size)\r
+{\r
+ int success = 0;\r
+\r
+ /* now, read the string */\r
+\r
+ for ( ; size > 0; )\r
+ {\r
+ if (read(file,str,1) <= 0)\r
+ break;\r
+\r
+ success = 1;\r
+\r
+ if (*str == '\r')\r
+ continue;\r
+\r
+ if (*str == '\n')\r
+ break;\r
+\r
+ str++;\r
+ size--;\r
+\r
+ } /* while */\r
+\r
+ *str = 0;\r
+\r
+ return success;\r
+}\r
+\r
+/* Function prototypes */\r
+\r
+\r
+/* Global variables */\r
+\r
+static db_t *hashtab[1];\r
+\r
+\r
+/* Functions */\r
+\r
+\r
+/* db_fetch() - Query the hash and return a struct that contains the\r
+ key and the pointer. The calling function should not look beyond\r
+ that. */\r
+\r
+db_t *\r
+db_fetch (char *s)\r
+{\r
+ db_t *db_ptr;\r
+\r
+ for (db_ptr = hashtab[0]; db_ptr != NULL; db_ptr = db_ptr->next)\r
+ {\r
+ if (strcmp (s, db_ptr->key) == 0)\r
+ {\r
+ break;\r
+\r
+ }\r
+ }\r
+\r
+\r
+ return (db_ptr);\r
+}\r
+\r
+/* db_insert() - Inserts a key,value pair into the hash. If the key\r
+ already exists in the hash, the new value is NOT inserted. */\r
+\r
+db_t *\r
+db_insert (char *key, char *value)\r
+{\r
+ db_t *db_ptr;\r
+\r
+ if ((db_ptr = db_fetch (key)) == NULL)\r
+ {\r
+ /* not found */\r
+\r
+ db_ptr = (db_t *) malloc (sizeof (*db_ptr));\r
+\r
+ if (db_ptr == NULL || (db_ptr->key = strdup (key)) == NULL)\r
+ {\r
+ return (NULL);\r
+ }\r
+\r
+ /* insert the key,value into the hash. */\r
+\r
+ db_ptr->next = hashtab[0];\r
+ hashtab[0] = db_ptr;\r
+ }\r
+\r
+ else\r
+ {\r
+ /* already there */\r
+\r
+ free ((void *) db_ptr->value);\r
+ }\r
+\r
+ if ((db_ptr ->value = strdup (value)) == NULL)\r
+ {\r
+ return (NULL);\r
+ }\r
+\r
+ /* else */\r
+\r
+ return (db_ptr);\r
+}\r
+\r
+\r
+\r
+#endif /* NOCATS */\r