\r
Start Stop Length Name Class\r
\r
- 00000H 04F63H 04F64H _TEXT CODE\r
- 04F70H 04F70H 00000H _FARDATA FAR_DATA\r
- 04F70H 04F70H 00000H _FARBSS FAR_BSS\r
- 04F70H 04F70H 00000H _OVERLAY_ OVRINFO\r
- 04F70H 04F70H 00000H _1STUB_ STUBSEG\r
- 04F70H 060BDH 0114EH _DATA DATA\r
- 060BEH 060BFH 00002H _CVTSEG DATA\r
- 060C0H 060C5H 00006H _SCNSEG DATA\r
- 060C6H 060C6H 00000H _CONST CONST\r
- 060C6H 060D7H 00012H _INIT_ INITDATA\r
- 060D8H 060D8H 00000H _INITEND_ INITDATA\r
- 060D8H 060D8H 00000H _EXIT_ EXITDATA\r
- 060D8H 060D8H 00000H _EXITEND_ EXITDATA\r
- 060D8H 06139H 00062H _BSS BSS\r
- 0613AH 0613AH 00000H _BSSEND BSSEND\r
- 06140H 061BFH 00080H _STACK STACK\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
\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 022B C=CODE S=_TEXT G=(none) M=EXMMTEST.C ACBP=28\r
- 0000:04BA 1947 C=CODE S=_TEXT G=(none) M=16_MM.C ACBP=28\r
- 0000:1E01 0442 C=CODE S=_TEXT G=(none) M=16_HEAD.C ACBP=28\r
- 0000:2243 0232 C=CODE S=_TEXT G=(none) M=16_CA.C ACBP=28\r
- 0000:2475 0024 C=CODE S=_TEXT G=(none) M=ATEXIT ACBP=28\r
- 0000:2499 0049 C=CODE S=_TEXT G=(none) M=CLOCK ACBP=28\r
- 0000:24E2 0000 C=CODE S=_TEXT G=(none) M=CTYPE ACBP=28\r
- 0000:24E2 003D C=CODE S=_TEXT G=(none) M=DOSFATTR ACBP=28\r
- 0000:251F 0089 C=CODE S=_TEXT G=(none) M=EXIT ACBP=28\r
- 0000:25A8 0000 C=CODE S=_TEXT G=(none) M=FILES ACBP=28\r
- 0000:25A8 0000 C=CODE S=_TEXT G=(none) M=FILES2 ACBP=28\r
- 0000:25A8 0000 C=CODE S=_TEXT G=(none) M=FMODE ACBP=28\r
- 0000:25A8 00AE C=CODE S=_TEXT G=(none) M=H_LDIV ACBP=28\r
- 0000:2656 0021 C=CODE S=_TEXT G=(none) M=H_LLSH ACBP=28\r
- 0000:2677 0021 C=CODE S=_TEXT G=(none) M=H_LURSH ACBP=28\r
- 0000:2698 0060 C=CODE S=_TEXT G=(none) M=H_PADD ACBP=28\r
- 0000:26F8 0028 C=CODE S=_TEXT G=(none) M=H_PSBP ACBP=28\r
- 0000:2720 004B C=CODE S=_TEXT G=(none) M=IOERROR ACBP=28\r
- 0000:276B 0011 C=CODE S=_TEXT G=(none) M=ISATTY ACBP=28\r
- 0000:277C 00A2 C=CODE S=_TEXT G=(none) M=LONGTOA ACBP=28\r
- 0000:281E 0029 C=CODE S=_TEXT G=(none) M=LSEEK ACBP=28\r
- 0000:2847 00B0 C=CODE S=_TEXT G=(none) M=MKNAME ACBP=28\r
- 0000:28F7 0021 C=CODE S=_TEXT G=(none) M=N_PCMP ACBP=28\r
- 0000:2918 00B2 C=CODE S=_TEXT G=(none) M=SETUPIO ACBP=28\r
- 0000:29CA 0000 C=CODE S=_TEXT G=(none) M=STKLEN ACBP=28\r
- 0000:29CA 002C C=CODE S=_TEXT G=(none) M=TOLOWER ACBP=28\r
- 0000:29F6 0018 C=CODE S=_TEXT G=(none) M=UNLINK ACBP=28\r
- 0000:2A0E 04DB C=CODE S=_TEXT G=(none) M=VPRINTER ACBP=28\r
- 0000:2EE9 009F C=CODE S=_TEXT G=(none) M=VRAM ACBP=28\r
- 0000:2F88 0000 C=CODE S=_TEXT G=(none) M=WSCROLL ACBP=28\r
- 0000:2F88 0030 C=CODE S=_TEXT G=(none) M=_STPCPY ACBP=28\r
- 0000:2FB8 0004 C=CODE S=_TEXT G=(none) M=CORELEFT ACBP=28\r
- 0000:2FBC 014E C=CODE S=_TEXT G=(none) M=CPRINTF ACBP=28\r
- 0000:310A 01A5 C=CODE S=_TEXT G=(none) M=CRTINIT ACBP=28\r
- 0000:32AF 001F C=CODE S=_TEXT G=(none) M=CVTFAK ACBP=28\r
- 0000:32CE 042D C=CODE S=_TEXT G=(none) M=FARHEAP ACBP=28\r
- 0000:36FB 013E C=CODE S=_TEXT G=(none) M=FBRK ACBP=28\r
- 0000:3839 0050 C=CODE S=_TEXT G=(none) M=FCORELFT ACBP=28\r
- 0000:3889 0054 C=CODE S=_TEXT G=(none) M=GETCH ACBP=28\r
- 0000:38DD 00AC C=CODE S=_TEXT G=(none) M=GPTEXT ACBP=28\r
- 0000:3989 0029 C=CODE S=_TEXT G=(none) M=IOCTL ACBP=28\r
- 0000:39B2 0012 C=CODE S=_TEXT G=(none) M=KBHIT ACBP=28\r
- 0000:39C4 009D C=CODE S=_TEXT G=(none) M=MOVETEXT ACBP=28\r
- 0000:3A61 0017 C=CODE S=_TEXT G=(none) M=PUTCH ACBP=28\r
- 0000:3A78 0004 C=CODE S=_TEXT G=(none) M=REALCVT ACBP=28\r
- 0000:3A7C 01C7 C=CODE S=_TEXT G=(none) M=SCREEN ACBP=28\r
- 0000:3C43 0184 C=CODE S=_TEXT G=(none) M=SCROLL ACBP=28\r
- 0000:3DC7 0129 C=CODE S=_TEXT G=(none) M=SETARGV ACBP=28\r
- 0000:3EF0 001C C=CODE S=_TEXT G=(none) M=SETBLOCK ACBP=28\r
- 0000:3F0C 002C C=CODE S=_TEXT G=(none) M=WHEREXY ACBP=28\r
- 0000:3F38 001D C=CODE S=_TEXT G=(none) M=CHMODA ACBP=28\r
- 0000:3F55 0026 C=CODE S=_TEXT G=(none) M=CLOSE ACBP=28\r
- 0000:3F7B 001E C=CODE S=_TEXT G=(none) M=CLOSEA ACBP=28\r
- 0000:3F99 00B0 C=CODE S=_TEXT G=(none) M=FCLOSE ACBP=28\r
- 0000:4049 00C6 C=CODE S=_TEXT G=(none) M=FFLUSH ACBP=28\r
- 0000:410F 0041 C=CODE S=_TEXT G=(none) M=FLENGTH ACBP=28\r
- 0000:4150 0040 C=CODE S=_TEXT G=(none) M=FLUSHALL ACBP=28\r
- 0000:4190 01FE C=CODE S=_TEXT G=(none) M=FOPEN ACBP=28\r
- 0000:438E 001C C=CODE S=_TEXT G=(none) M=FPRINTF ACBP=28\r
- 0000:43AA 01D8 C=CODE S=_TEXT G=(none) M=FSEEK ACBP=28\r
- 0000:4582 0070 C=CODE S=_TEXT G=(none) M=LTOA1 ACBP=28\r
- 0000:45F2 0024 C=CODE S=_TEXT G=(none) M=MEMCPY ACBP=28\r
- 0000:4616 0022 C=CODE S=_TEXT G=(none) M=MOVEDATA ACBP=28\r
- 0000:4638 018D C=CODE S=_TEXT G=(none) M=OPEN ACBP=28\r
- 0000:47C5 004F C=CODE S=_TEXT G=(none) M=OPENA ACBP=28\r
- 0000:4814 001B C=CODE S=_TEXT G=(none) M=PRINTF ACBP=28\r
- 0000:482F 03A4 C=CODE S=_TEXT G=(none) M=PUTC ACBP=28\r
- 0000:4BD3 0111 C=CODE S=_TEXT G=(none) M=SETVBUF ACBP=28\r
- 0000:4CE4 003F C=CODE S=_TEXT G=(none) M=STRCAT ACBP=28\r
- 0000:4D23 0029 C=CODE S=_TEXT G=(none) M=STRCPY ACBP=28\r
- 0000:4D4C 001F C=CODE S=_TEXT G=(none) M=STRLEN ACBP=28\r
- 0000:4D6B 0149 C=CODE S=_TEXT G=(none) M=WRITE ACBP=28\r
- 0000:4EB4 003C C=CODE S=_TEXT G=(none) M=WRITEA ACBP=28\r
- 0000:4EF0 0003 C=CODE S=_TEXT G=(none) M=WRITEU ACBP=28\r
- 0000:4EF3 003B C=CODE S=_TEXT G=(none) M=XFCLOSE ACBP=28\r
- 0000:4F2E 0036 C=CODE S=_TEXT G=(none) M=XFFLUSH ACBP=28\r
- 04F7:0000 0000 C=FAR_DATA S=_FARDATA G=(none) M=c0.ASM ACBP=68\r
- 04F7:0000 0000 C=FAR_BSS S=_FARBSS G=(none) M=c0.ASM ACBP=68\r
- 04F7:0000 0000 C=OVRINFO S=_OVERLAY_ G=(none) M=c0.ASM ACBP=68\r
- 04F7:0000 0000 C=STUBSEG S=_1STUB_ G=(none) M=c0.ASM ACBP=68\r
- 04F7:0000 0093 C=DATA S=_DATA G=DGROUP M=c0.ASM ACBP=68\r
- 04F7:0094 018C C=DATA S=_DATA G=DGROUP M=EXMMTEST.C ACBP=48\r
- 04F7:0220 0AFF C=DATA S=_DATA G=DGROUP M=16_MM.C ACBP=48\r
- 04F7:0D20 0004 C=DATA S=_DATA G=DGROUP M=16_HEAD.C ACBP=48\r
- 04F7:0D24 002C C=DATA S=_DATA G=DGROUP M=16_CA.C ACBP=48\r
- 04F7:0D50 0002 C=DATA S=_DATA G=DGROUP M=ATEXIT ACBP=48\r
- 04F7:0D52 0000 C=DATA S=_DATA G=DGROUP M=CLOCK ACBP=48\r
- 04F7:0D52 0101 C=DATA S=_DATA G=DGROUP M=CTYPE ACBP=48\r
- 04F7:0E54 0000 C=DATA S=_DATA G=DGROUP M=DOSFATTR ACBP=48\r
- 04F7:0E54 0006 C=DATA S=_DATA G=DGROUP M=EXIT ACBP=48\r
- 04F7:0E5A 0190 C=DATA S=_DATA G=DGROUP M=FILES ACBP=48\r
- 04F7:0FEA 002A C=DATA S=_DATA G=DGROUP M=FILES2 ACBP=48\r
- 04F7:1014 0004 C=DATA S=_DATA G=DGROUP M=FMODE ACBP=48\r
- 04F7:1018 0000 C=DATA S=_DATA G=DGROUP M=H_LDIV ACBP=48\r
- 04F7:1018 0000 C=DATA S=_DATA G=DGROUP M=H_LLSH ACBP=48\r
- 04F7:1018 0000 C=DATA S=_DATA G=DGROUP M=H_LURSH ACBP=48\r
- 04F7:1018 0000 C=DATA S=_DATA G=DGROUP M=H_PADD ACBP=48\r
- 04F7:1018 0000 C=DATA S=_DATA G=DGROUP M=H_PSBP ACBP=48\r
- 04F7:1018 005B C=DATA S=_DATA G=DGROUP M=IOERROR ACBP=48\r
- 04F7:1074 0000 C=DATA S=_DATA G=DGROUP M=ISATTY ACBP=48\r
- 04F7:1074 0000 C=DATA S=_DATA G=DGROUP M=LONGTOA ACBP=48\r
- 04F7:1074 0000 C=DATA S=_DATA G=DGROUP M=LSEEK ACBP=48\r
- 04F7:1074 0009 C=DATA S=_DATA G=DGROUP M=MKNAME ACBP=48\r
- 04F7:107E 0000 C=DATA S=_DATA G=DGROUP M=N_PCMP ACBP=48\r
- 04F7:107E 0000 C=DATA S=_DATA G=DGROUP M=SETUPIO ACBP=48\r
- 04F7:107E 0002 C=DATA S=_DATA G=DGROUP M=STKLEN ACBP=48\r
- 04F7:1080 0000 C=DATA S=_DATA G=DGROUP M=TOLOWER ACBP=48\r
- 04F7:1080 0000 C=DATA S=_DATA G=DGROUP M=UNLINK ACBP=48\r
- 04F7:1080 0067 C=DATA S=_DATA G=DGROUP M=VPRINTER ACBP=48\r
- 04F7:10E8 0000 C=DATA S=_DATA G=DGROUP M=VRAM ACBP=48\r
- 04F7:10E8 0002 C=DATA S=_DATA G=DGROUP M=WSCROLL ACBP=48\r
- 04F7:10EA 0000 C=DATA S=_DATA G=DGROUP M=_STPCPY ACBP=48\r
- 04F7:10EA 0000 C=DATA S=_DATA G=DGROUP M=CORELEFT ACBP=48\r
- 04F7:10EA 0000 C=DATA S=_DATA G=DGROUP M=CPRINTF ACBP=48\r
- 04F7:10EA 0018 C=DATA S=_DATA G=DGROUP M=CRTINIT ACBP=48\r
- 04F7:1102 0031 C=DATA S=_DATA G=DGROUP M=CVTFAK ACBP=48\r
- 04F7:1134 0000 C=DATA S=_DATA G=DGROUP M=FARHEAP ACBP=48\r
- 04F7:1134 0002 C=DATA S=_DATA G=DGROUP M=FBRK ACBP=48\r
- 04F7:1136 0000 C=DATA S=_DATA G=DGROUP M=FCORELFT ACBP=48\r
- 04F7:1136 0000 C=DATA S=_DATA G=DGROUP M=GETCH ACBP=48\r
- 04F7:1136 0000 C=DATA S=_DATA G=DGROUP M=GPTEXT ACBP=48\r
- 04F7:1136 0000 C=DATA S=_DATA G=DGROUP M=IOCTL ACBP=48\r
- 04F7:1136 0002 C=DATA S=_DATA G=DGROUP M=KBHIT ACBP=48\r
- 04F7:1138 0000 C=DATA S=_DATA G=DGROUP M=MOVETEXT ACBP=48\r
- 04F7:1138 0000 C=DATA S=_DATA G=DGROUP M=PUTCH ACBP=48\r
- 04F7:1138 0000 C=DATA S=_DATA G=DGROUP M=REALCVT ACBP=48\r
- 04F7:1138 0000 C=DATA S=_DATA G=DGROUP M=SCREEN ACBP=48\r
- 04F7:1138 0000 C=DATA S=_DATA G=DGROUP M=SCROLL ACBP=48\r
- 04F7:1138 0010 C=DATA S=_DATA G=DGROUP M=SETARGV ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=SETBLOCK ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=WHEREXY ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=CHMODA ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=CLOSE ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=CLOSEA ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=FCLOSE ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=FFLUSH ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=FLENGTH ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=FLUSHALL ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=FOPEN ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=FPRINTF ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=FSEEK ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=LTOA1 ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=MEMCPY ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=MOVEDATA ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=OPEN ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=OPENA ACBP=48\r
- 04F7:1148 0000 C=DATA S=_DATA G=DGROUP M=PRINTF ACBP=48\r
- 04F7:1148 0001 C=DATA S=_DATA G=DGROUP M=PUTC ACBP=48\r
- 04F7:114A 0004 C=DATA S=_DATA G=DGROUP M=SETVBUF ACBP=48\r
- 04F7:114E 0000 C=DATA S=_DATA G=DGROUP M=STRCAT ACBP=48\r
- 04F7:114E 0000 C=DATA S=_DATA G=DGROUP M=STRCPY ACBP=48\r
- 04F7:114E 0000 C=DATA S=_DATA G=DGROUP M=STRLEN ACBP=48\r
- 04F7:114E 0000 C=DATA S=_DATA G=DGROUP M=WRITE ACBP=48\r
- 04F7:114E 0000 C=DATA S=_DATA G=DGROUP M=WRITEA ACBP=48\r
- 04F7:114E 0000 C=DATA S=_DATA G=DGROUP M=WRITEU ACBP=48\r
- 04F7:114E 0000 C=DATA S=_DATA G=DGROUP M=XFCLOSE ACBP=48\r
- 04F7:114E 0000 C=DATA S=_DATA G=DGROUP M=XFFLUSH ACBP=48\r
- 04F7:114E 0000 C=DATA S=_CVTSEG G=DGROUP M=c0.ASM ACBP=48\r
- 04F7:114E 0002 C=DATA S=_CVTSEG G=DGROUP M=CVTFAK ACBP=48\r
- 04F7:1150 0000 C=DATA S=_CVTSEG G=DGROUP M=REALCVT ACBP=48\r
- 04F7:1150 0000 C=DATA S=_SCNSEG G=DGROUP M=c0.ASM ACBP=48\r
- 04F7:1150 0006 C=DATA S=_SCNSEG G=DGROUP M=CVTFAK ACBP=48\r
- 04F7:1156 0000 C=CONST S=_CONST G=DGROUP M=c0.ASM ACBP=48\r
- 04F7:1156 0000 C=INITDATA S=_INIT_ G=DGROUP M=c0.ASM ACBP=48\r
- 04F7:1156 0006 C=INITDATA S=_INIT_ G=DGROUP M=SETUPIO ACBP=48\r
- 04F7:115C 0006 C=INITDATA S=_INIT_ G=DGROUP M=CRTINIT ACBP=48\r
- 04F7:1162 0006 C=INITDATA S=_INIT_ G=DGROUP M=SETARGV ACBP=48\r
- 04F7:1168 0000 C=INITDATA S=_INITEND_ G=DGROUP M=c0.ASM ACBP=28\r
- 04F7:1168 0000 C=EXITDATA S=_EXIT_ G=DGROUP M=c0.ASM ACBP=48\r
- 04F7:1168 0000 C=EXITDATA S=_EXITEND_ G=DGROUP M=c0.ASM ACBP=28\r
- 04F7:1168 0000 C=BSS S=_BSS G=DGROUP M=c0.ASM ACBP=48\r
- 04F7:1168 0000 C=BSS S=_BSS G=DGROUP M=EXMMTEST.C ACBP=48\r
- 04F7:1168 0006 C=BSS S=_BSS G=DGROUP M=16_MM.C ACBP=48\r
- 04F7:116E 0000 C=BSS S=_BSS G=DGROUP M=16_HEAD.C ACBP=48\r
- 04F7:116E 000A C=BSS S=_BSS G=DGROUP M=16_CA.C ACBP=48\r
- 04F7:1178 0040 C=BSS S=_BSS G=DGROUP M=ATEXIT ACBP=48\r
- 04F7:11B8 0001 C=BSS S=_BSS G=DGROUP M=CLOCK ACBP=48\r
- 04F7:11BA 0000 C=BSS S=_BSS G=DGROUP M=DOSFATTR ACBP=48\r
- 04F7:11BA 0000 C=BSS S=_BSS G=DGROUP M=IOERROR ACBP=48\r
- 04F7:11BA 0000 C=BSS S=_BSS G=DGROUP M=ISATTY ACBP=48\r
- 04F7:11BA 0000 C=BSS S=_BSS G=DGROUP M=LONGTOA ACBP=48\r
- 04F7:11BA 0000 C=BSS S=_BSS G=DGROUP M=LSEEK ACBP=48\r
- 04F7:11BA 000D C=BSS S=_BSS G=DGROUP M=MKNAME ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=SETUPIO ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=UNLINK ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=VPRINTER ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=VRAM ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=CORELEFT ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=CRTINIT ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=GETCH ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=IOCTL ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=KBHIT ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=SETBLOCK ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=CHMODA ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=CLOSEA ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=FLENGTH ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=MEMCPY ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=MOVEDATA ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=OPEN ACBP=48\r
- 04F7:11C8 0000 C=BSS S=_BSS G=DGROUP M=OPENA ACBP=48\r
- 04F7:11C8 0001 C=BSS S=_BSS G=DGROUP M=PUTC ACBP=48\r
- 04F7:11CA 0000 C=BSS S=_BSS G=DGROUP M=STRCAT ACBP=48\r
- 04F7:11CA 0000 C=BSS S=_BSS G=DGROUP M=STRCPY ACBP=48\r
- 04F7:11CA 0000 C=BSS S=_BSS G=DGROUP M=STRLEN ACBP=48\r
- 04F7:11CA 0000 C=BSS S=_BSS G=DGROUP M=WRITEA ACBP=48\r
- 04F7:11CA 0000 C=BSSEND S=_BSSEND G=DGROUP M=c0.ASM ACBP=28\r
- 0614:0000 0080 C=STACK S=_STACK G=(none) M=c0.ASM ACBP=74\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
\r
Address Publics by Name\r
\r
- 04F7:0000 idle DATASEG@\r
+ 04FC:0000 idle DATASEG@\r
0000:028B idle DGROUP@\r
- 0000:25AB idle F_LDIV@\r
- 0000:25BA idle F_LMOD@\r
- 0000:25B2 idle F_LUDIV@\r
- 0000:25C2 idle F_LUMOD@\r
- 0000:2659 idle F_LXLSH@\r
- 0000:267A idle F_LXURSH@\r
- 0000:269B idle F_PADD@\r
- 0000:26FB idle F_PSBP@\r
- 0000:26CA idle F_PSUB@\r
- 0000:25AB idle LDIV@\r
- 0000:25BA idle LMOD@\r
- 0000:25B2 idle LUDIV@\r
- 0000:25C2 idle LUMOD@\r
- 0000:2659 idle LXLSH@\r
- 0000:267A idle LXURSH@\r
- 0000:25A8 idle N_LDIV@\r
- 0000:25B7 idle N_LMOD@\r
- 0000:25AF N_LUDIV@\r
- 0000:25BF idle N_LUMOD@\r
- 0000:2656 N_LXLSH@\r
- 0000:2677 N_LXURSH@\r
- 0000:2698 N_PADD@\r
- 0000:28F7 N_PCMP@\r
- 0000:26F8 N_PSBP@\r
- 0000:26C7 idle N_PSUB@\r
- 0000:269B idle PADD@\r
- 0000:26FB idle PSBP@\r
- 0000:26CA idle PSUB@\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:0276 _abort\r
- 04F7:116A idle _aftersort\r
- 0000:1FA3 idle _AllocateLargestFarFreeBlock\r
- 0000:1E40 idle _AllocateLargestFreeBlock\r
- 0000:2475 idle _atexit\r
- 04F7:116C idle _beforesort\r
- 0000:23D9 idle _CAL_OptimizeNodes\r
- 0000:2264 _CA_CloseDebug\r
- 0000:2271 idle _CA_FarRead\r
- 0000:22AF idle _CA_FarWrite\r
- 0000:2354 _CA_LoadFile\r
- 0000:2243 _CA_OpenDebug\r
- 0000:22ED idle _CA_ReadFile\r
- 0000:2468 _CA_Shutdown\r
- 0000:2447 _CA_Startup\r
- 0000:2499 _clock\r
- 0000:3F55 _close\r
- 0000:2FB8 _coreleft\r
- 0000:30EE idle _cprintf\r
- 04F7:1174 _debughandle\r
- 04F7:10F9 _directvideo\r
- 04F7:1172 idle _drawcachebox\r
- 04F7:007F _errno\r
- 0000:256D _exit\r
- 0000:3839 _farcoreleft\r
- 0000:340E _farfree\r
- 0000:3522 _farmalloc\r
- 0000:3683 idle _farrealloc\r
- 0000:3F99 _fclose\r
- 0000:4049 _fflush\r
- 0000:410F _filelength\r
- 0000:2112 idle _filesize\r
- 04F7:116E idle _finishcachebox\r
- 0000:4150 _flushall\r
- 0000:4359 _fopen\r
- 0000:438E _fprintf\r
- 0000:4849 idle _fputc\r
- 0000:49D2 idle _fputchar\r
- 0000:340E _free\r
- 0000:442C _fseek\r
- 0000:44A8 _ftell\r
- 0000:3889 _getch\r
- 0000:38A2 idle _getche\r
- 0000:2045 idle _GetFarFreeSize\r
- 0000:1ED6 idle _GetFreeSize\r
- 0000:38DD _gettext\r
- 0000:3989 _ioctl\r
- 0000:276B _isatty\r
- 0000:4582 idle _itoa\r
- 0000:39B2 _kbhit\r
- 0000:281E _lseek\r
- 0000:45CA idle _ltoa\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:3518 _malloc\r
- 0000:45F2 _memcpy\r
- 0000:04BA idle _MML_CheckForEMS\r
- 0000:0788 idle _MML_CheckForXMS\r
- 0000:0A48 idle _MML_ClearBlock\r
- 0000:04FF idle _MML_SetupEMS\r
- 0000:07BF idle _MML_SetupXMS\r
- 0000:0605 idle _MML_ShutdownEMS\r
- 0000:0865 idle _MML_ShutdownXMS\r
- 0000:0898 idle _MML_UseSpace\r
- 0000:1D5D idle _MM_BombOnError\r
- 0000:180A _MM_DumpData\r
- 0000:1DC2 idle _MM_FreeBlock\r
- 0000:1229 _MM_FreePtr\r
- 0000:1D6C idle _MM_GetNewBlock\r
- 0000:0F75 _MM_GetPtr\r
- 0000:0646 idle _MM_MapEMS\r
- 0000:06DF idle _MM_MapXEMS\r
- 0000:1A51 _MM_Report\r
- 0000:13C7 idle _MM_SetLock\r
- 0000:1303 idle _MM_SetPurge\r
- 0000:1607 _MM_ShowMemory\r
- 0000:0EF0 _MM_Shutdown\r
- 0000:1490 idle _MM_SortMem\r
- 0000:0AAE _MM_Startup\r
- 0000:19B8 idle _MM_TotalFree\r
- 0000:1946 idle _MM_UnusedMemory\r
- 0000:4616 _movedata\r
- 0000:39C4 _movetext\r
- 0000:4665 _open\r
- 0000:4814 _printf\r
- 04F7:1176 idle _profilehandle\r
- 0000:3A61 _putch\r
- 0000:3933 _puttext\r
- 0000:367C idle _realloc\r
- 0000:3EF0 _setblock\r
- 0000:4BD3 _setvbuf\r
- 0000:4CE4 _strcat\r
- 0000:4D23 _strcpy\r
- 0000:4D4C _strlen\r
- 0000:29CA _tolower\r
- 0000:45AD _ultoa\r
- 0000:38BF idle _ungetch\r
- 0000:29F6 _unlink\r
- 04F7:1170 idle _updatecachebox\r
- 0000:2171 _US_CheckParm\r
- 0000:1E01 idle _wait\r
- 0000:3F16 idle _wherex\r
- 0000:3F25 idle _wherey\r
- 0000:4EF0 _write\r
- 04F7:1168 idle _XMSaddr\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
0000:1000 idle __AHINCR\r
0000:000C idle __AHSHIFT\r
- 04F7:1138 __argc\r
- 04F7:113A __argv\r
- 04F7:0D50 __atexitcnt\r
- 04F7:1178 __atexittbl\r
- 0000:376F __brk\r
- 04F7:008B __brklvl\r
- 04F7:006B __C0argc\r
- 04F7:006D __C0argv\r
- 0000:31D0 idle __c0crtinit\r
- 04F7:0071 idle __C0environ\r
- 04F7:1137 __cChar\r
- 0000:258E idle __cexit\r
- 04F7:1136 __cFlag\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
0000:0166 __checknull\r
- 0000:3F38 __chmod\r
+ 0000:3F90 __chmod\r
0000:0153 __cleanup\r
- 0000:3F7B __close\r
- 0000:2FBC __CPUTN\r
- 0000:31ED idle __crtinit\r
- 04F7:0D52 __ctype\r
+ 0000:3FD3 __close\r
+ 0000:3014 __CPUTN\r
+ 0000:3245 idle __crtinit\r
+ 04FC:0DA8 __ctype\r
0000:0000 Abs __cvtfak\r
- 0000:259C idle __c_exit\r
- 04F7:1018 __doserrno\r
- 0000:2759 __DOSERROR\r
- 04F7:101A idle __dosErrorToSV\r
- 0000:24E2 __dos_getfileattr\r
- 0000:2502 idle __dos_setfileattr\r
- 04F7:0075 __envLng\r
- 04F7:0077 __envseg\r
- 04F7:0079 idle __envSize\r
- 0000:257C __exit\r
- 04F7:0E54 __exitbuf\r
- 04F7:0E56 __exitfopen\r
- 04F7:0E58 idle __exitopen\r
- 04F7:1014 __fmode\r
- 0000:482F idle __fputc\r
- 0000:49E5 __FPUTN\r
- 0000:430F idle __GETFP\r
- 04F7:0087 __heapbase\r
- 04F7:008F __heaptop\r
- 04F7:005B idle __Int0Vector\r
- 04F7:005F idle __Int4Vector\r
- 04F7:0063 idle __Int5Vector\r
- 04F7:0067 idle __Int6Vector\r
- 0000:2720 __IOERROR\r
- 0000:277C __LONGTOA\r
- 0000:2847 __MKNAME\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:028D idle __MMODEL\r
- 04F7:0FEA __nfile\r
- 0000:38A2 idle __Ngetche\r
- 04F7:1016 __notUmask\r
- 0000:38BF idle __Nungetch\r
- 0000:47C5 __open\r
- 04F7:0FEC __openfd\r
- 0000:4246 idle __OPENFP\r
- 04F7:007D __osmajor\r
- 04F7:007E idle __osminor\r
- 04F7:007D idle __osversion\r
- 04F7:007B __psp\r
- 0000:3A78 __REALCVT\r
- 04F7:114E __RealCvtVector\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
0000:01BC __restorezero\r
- 0000:37AE __sbrk\r
- 04F7:1150 idle __ScanTodVector\r
- 0000:3BB2 __SCREENIO\r
- 0000:3C65 __SCROLL\r
+ 0000:3806 __sbrk\r
+ 04FC:11A6 idle __ScanTodVector\r
+ 0000:3C0A __SCREENIO\r
+ 0000:3CBD __SCROLL\r
0000:0000 Abs __setargv__\r
- 0000:2918 __setupio\r
- 04F7:0081 __StartTime\r
- 04F7:107E __stklen\r
- 0000:2F88 __stpcpy\r
- 04F7:0E5A __streams\r
+ 0000:2970 __setupio\r
+ 04FC:0081 __StartTime\r
+ 04FC:10D4 __stklen\r
+ 0000:2FE0 __stpcpy\r
+ 04FC:0EB0 __streams\r
0000:0167 __terminate\r
- 0000:28A0 idle __TMPNAM\r
+ 0000:28F8 idle __TMPNAM\r
0000:0000 idle __turboCrt\r
- 0000:27FE __UTOA\r
- 0000:3BEE __VALIDATEXY\r
- 04F7:007D idle __version\r
- 04F7:10EA __video\r
- 0000:3145 __VideoInt\r
- 0000:2A26 __VPRINTER\r
- 0000:2EE9 __VPTR\r
- 0000:2F0E __VRAM\r
- 0000:3F0C __wherexy\r
- 0000:4EB4 __write\r
- 04F7:10E8 __wscroll\r
- 0000:4EF3 __xfclose\r
- 0000:4F2E __xfflush\r
- 04F7:0085 idle ___brklvl\r
- 0000:32CE idle ___first\r
- 0000:32D0 idle ___last\r
- 0000:32D2 idle ___rover\r
- 0000:4D6B ___write\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
\r
Address Publics by Value\r
\r
0000:028B idle DGROUP@\r
0000:028D idle __MMODEL\r
0000:028F _main\r
- 0000:04BA idle _MML_CheckForEMS\r
- 0000:04FF idle _MML_SetupEMS\r
- 0000:0605 idle _MML_ShutdownEMS\r
- 0000:0646 idle _MM_MapEMS\r
- 0000:06DF idle _MM_MapXEMS\r
- 0000:0788 idle _MML_CheckForXMS\r
- 0000:07BF idle _MML_SetupXMS\r
- 0000:0865 idle _MML_ShutdownXMS\r
- 0000:0898 idle _MML_UseSpace\r
- 0000:0A48 idle _MML_ClearBlock\r
- 0000:0AAE _MM_Startup\r
- 0000:0EF0 _MM_Shutdown\r
- 0000:0F75 _MM_GetPtr\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:1000 idle __AHINCR\r
- 0000:1229 _MM_FreePtr\r
- 0000:1303 idle _MM_SetPurge\r
- 0000:13C7 idle _MM_SetLock\r
- 0000:1490 idle _MM_SortMem\r
- 0000:1607 _MM_ShowMemory\r
- 0000:180A _MM_DumpData\r
- 0000:1946 idle _MM_UnusedMemory\r
- 0000:19B8 idle _MM_TotalFree\r
- 0000:1A51 _MM_Report\r
- 0000:1D5D idle _MM_BombOnError\r
- 0000:1D6C idle _MM_GetNewBlock\r
- 0000:1DC2 idle _MM_FreeBlock\r
- 0000:1E01 idle _wait\r
- 0000:1E40 idle _AllocateLargestFreeBlock\r
- 0000:1ED6 idle _GetFreeSize\r
- 0000:1FA3 idle _AllocateLargestFarFreeBlock\r
- 0000:2045 idle _GetFarFreeSize\r
- 0000:2112 idle _filesize\r
- 0000:2171 _US_CheckParm\r
- 0000:2243 _CA_OpenDebug\r
- 0000:2264 _CA_CloseDebug\r
- 0000:2271 idle _CA_FarRead\r
- 0000:22AF idle _CA_FarWrite\r
- 0000:22ED idle _CA_ReadFile\r
- 0000:2354 _CA_LoadFile\r
- 0000:23D9 idle _CAL_OptimizeNodes\r
- 0000:2447 _CA_Startup\r
- 0000:2468 _CA_Shutdown\r
- 0000:2475 idle _atexit\r
- 0000:2499 _clock\r
- 0000:24E2 __dos_getfileattr\r
- 0000:2502 idle __dos_setfileattr\r
- 0000:256D _exit\r
- 0000:257C __exit\r
- 0000:258E idle __cexit\r
- 0000:259C idle __c_exit\r
- 0000:25A8 idle N_LDIV@\r
- 0000:25AB idle LDIV@\r
- 0000:25AB idle F_LDIV@\r
- 0000:25AF N_LUDIV@\r
- 0000:25B2 idle F_LUDIV@\r
- 0000:25B2 idle LUDIV@\r
- 0000:25B7 idle N_LMOD@\r
- 0000:25BA idle F_LMOD@\r
- 0000:25BA idle LMOD@\r
- 0000:25BF idle N_LUMOD@\r
- 0000:25C2 idle LUMOD@\r
- 0000:25C2 idle F_LUMOD@\r
- 0000:2656 N_LXLSH@\r
- 0000:2659 idle LXLSH@\r
- 0000:2659 idle F_LXLSH@\r
- 0000:2677 N_LXURSH@\r
- 0000:267A idle LXURSH@\r
- 0000:267A idle F_LXURSH@\r
- 0000:2698 N_PADD@\r
- 0000:269B idle F_PADD@\r
- 0000:269B idle PADD@\r
- 0000:26C7 idle N_PSUB@\r
- 0000:26CA idle F_PSUB@\r
- 0000:26CA idle PSUB@\r
- 0000:26F8 N_PSBP@\r
- 0000:26FB idle PSBP@\r
- 0000:26FB idle F_PSBP@\r
- 0000:2720 __IOERROR\r
- 0000:2759 __DOSERROR\r
- 0000:276B _isatty\r
- 0000:277C __LONGTOA\r
- 0000:27FE __UTOA\r
- 0000:281E _lseek\r
- 0000:2847 __MKNAME\r
- 0000:28A0 idle __TMPNAM\r
- 0000:28F7 N_PCMP@\r
- 0000:2918 __setupio\r
- 0000:29CA _tolower\r
- 0000:29F6 _unlink\r
- 0000:2A26 __VPRINTER\r
- 0000:2EE9 __VPTR\r
- 0000:2F0E __VRAM\r
- 0000:2F88 __stpcpy\r
- 0000:2FB8 _coreleft\r
- 0000:2FBC __CPUTN\r
- 0000:30EE idle _cprintf\r
- 0000:3145 __VideoInt\r
- 0000:31D0 idle __c0crtinit\r
- 0000:31ED idle __crtinit\r
- 0000:32CE idle ___first\r
- 0000:32D0 idle ___last\r
- 0000:32D2 idle ___rover\r
- 0000:340E _free\r
- 0000:340E _farfree\r
- 0000:3518 _malloc\r
- 0000:3522 _farmalloc\r
- 0000:367C idle _realloc\r
- 0000:3683 idle _farrealloc\r
- 0000:376F __brk\r
- 0000:37AE __sbrk\r
- 0000:3839 _farcoreleft\r
- 0000:3889 _getch\r
- 0000:38A2 idle __Ngetche\r
- 0000:38A2 idle _getche\r
- 0000:38BF idle __Nungetch\r
- 0000:38BF idle _ungetch\r
- 0000:38DD _gettext\r
- 0000:3933 _puttext\r
- 0000:3989 _ioctl\r
- 0000:39B2 _kbhit\r
- 0000:39C4 _movetext\r
- 0000:3A61 _putch\r
- 0000:3A78 __REALCVT\r
- 0000:3BB2 __SCREENIO\r
- 0000:3BEE __VALIDATEXY\r
- 0000:3C65 __SCROLL\r
- 0000:3EF0 _setblock\r
- 0000:3F0C __wherexy\r
- 0000:3F16 idle _wherex\r
- 0000:3F25 idle _wherey\r
- 0000:3F38 __chmod\r
- 0000:3F55 _close\r
- 0000:3F7B __close\r
- 0000:3F99 _fclose\r
- 0000:4049 _fflush\r
- 0000:410F _filelength\r
- 0000:4150 _flushall\r
- 0000:4246 idle __OPENFP\r
- 0000:430F idle __GETFP\r
- 0000:4359 _fopen\r
- 0000:438E _fprintf\r
- 0000:442C _fseek\r
- 0000:44A8 _ftell\r
- 0000:4582 idle _itoa\r
- 0000:45AD _ultoa\r
- 0000:45CA idle _ltoa\r
- 0000:45F2 _memcpy\r
- 0000:4616 _movedata\r
- 0000:4665 _open\r
- 0000:47C5 __open\r
- 0000:4814 _printf\r
- 0000:482F idle __fputc\r
- 0000:4849 idle _fputc\r
- 0000:49D2 idle _fputchar\r
- 0000:49E5 __FPUTN\r
- 0000:4BD3 _setvbuf\r
- 0000:4CE4 _strcat\r
- 0000:4D23 _strcpy\r
- 0000:4D4C _strlen\r
- 0000:4D6B ___write\r
- 0000:4EB4 __write\r
- 0000:4EF0 _write\r
- 0000:4EF3 __xfclose\r
- 0000:4F2E __xfflush\r
- 04F7:0000 idle DATASEG@\r
- 04F7:005B idle __Int0Vector\r
- 04F7:005F idle __Int4Vector\r
- 04F7:0063 idle __Int5Vector\r
- 04F7:0067 idle __Int6Vector\r
- 04F7:006B __C0argc\r
- 04F7:006D __C0argv\r
- 04F7:0071 idle __C0environ\r
- 04F7:0075 __envLng\r
- 04F7:0077 __envseg\r
- 04F7:0079 idle __envSize\r
- 04F7:007B __psp\r
- 04F7:007D idle __osversion\r
- 04F7:007D __osmajor\r
- 04F7:007D idle __version\r
- 04F7:007E idle __osminor\r
- 04F7:007F _errno\r
- 04F7:0081 __StartTime\r
- 04F7:0085 idle ___brklvl\r
- 04F7:0087 __heapbase\r
- 04F7:008B __brklvl\r
- 04F7:008F __heaptop\r
- 04F7:0D50 __atexitcnt\r
- 04F7:0D52 __ctype\r
- 04F7:0E54 __exitbuf\r
- 04F7:0E56 __exitfopen\r
- 04F7:0E58 idle __exitopen\r
- 04F7:0E5A __streams\r
- 04F7:0FEA __nfile\r
- 04F7:0FEC __openfd\r
- 04F7:1014 __fmode\r
- 04F7:1016 __notUmask\r
- 04F7:1018 __doserrno\r
- 04F7:101A idle __dosErrorToSV\r
- 04F7:107E __stklen\r
- 04F7:10E8 __wscroll\r
- 04F7:10EA __video\r
- 04F7:10F9 _directvideo\r
- 04F7:1136 __cFlag\r
- 04F7:1137 __cChar\r
- 04F7:1138 __argc\r
- 04F7:113A __argv\r
- 04F7:114E __RealCvtVector\r
- 04F7:1150 idle __ScanTodVector\r
- 04F7:1168 idle _XMSaddr\r
- 04F7:116A idle _aftersort\r
- 04F7:116C idle _beforesort\r
- 04F7:116E idle _finishcachebox\r
- 04F7:1170 idle _updatecachebox\r
- 04F7:1172 idle _drawcachebox\r
- 04F7:1174 _debughandle\r
- 04F7:1176 idle _profilehandle\r
- 04F7:1178 __atexittbl\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
\r
Program entry point at 0000:0000\r
\r
while((goal > clock()) && !kbhit()) ;\r
} /* End of wait */
-void* AllocateLargestFreeBlock(size_t* Size)
+void __near* LargestFreeBlock(size_t* Size)
{
- size_t s0, s1;
- void* p;
-
- s0 = ~(size_t)0 ^ (~(size_t)0 >> 1);
-
- while (s0 && (p = malloc(s0)) == NULL)
- s0 >>= 1;
-
- if (p)
- free(p);
+ size_t s0, s1;
+ void __near* p;
- s1 = s0 >> 1;
+ s0 = ~(size_t)0 ^ (~(size_t)0 >> 1);
+ while (s0 && (p = _nmalloc(s0)) == NULL)
+ s0 >>= 1;
- while (s1)
- {
- if ((p = malloc(s0 + s1)) != NULL)
- {
- s0 += s1;
- free(p);
- }
- s1 >>= 1;
- }
+ if (p)
+ _nfree(p);
- while (s0 && (p = malloc(s0)) == NULL)
- s0 ^= s0 & -s0;
+ s1 = s0 >> 1;
+ while (s1)
+ {
+ if ((p = _nmalloc(s0 + s1)) != NULL)
+ {
+ s0 += s1;
+ _nfree(p);
+ }
+ s1 >>= 1;
+ }
+ while (s0 && (p = _nmalloc(s0)) == NULL)
+ s0 ^= s0 & -s0;
- *Size = s0;
- return p;
+ *Size = s0;
+ return p;
}
-size_t GetFreeSize(void)
+size_t _coreleft(void)
{
- size_t total = 0;
- void* pFirst = NULL;
- void* pLast = NULL;
-
- for (;;)
- {
- size_t largest;
- void* p = AllocateLargestFreeBlock(&largest);
-
- if (largest < sizeof(void*))
- {
- if (p != NULL)
- free(p);
- break;
- }
-
- *(void**)p = NULL;
-
- total += largest;
-
- if (pFirst == NULL)
- pFirst = p;
-
- if (pLast != NULL)
- *(void**)pLast = p;
-
- pLast = p;
- }
+ size_t total = 0;
+ void __near* pFirst = NULL;
+ void __near* pLast = NULL;
+ for(;;)
+ {
+ size_t largest;
+ void __near* p = LargestFreeBlock(&largest);
+ if (largest < sizeof(void __near*))
+ {
+ if (p != NULL)
+ _nfree(p);
+ break;
+ }
+ *(void __near* __near*)p = NULL;
+ total += largest;
+ if (pFirst == NULL)
+ pFirst = p;
- while (pFirst != NULL)
- {
- void* p = *(void**)pFirst;
- free(pFirst);
- pFirst = p;
- }
+ if (pLast != NULL)
+ *(void __near* __near*)pLast = p;
+ pLast = p;
+ }
- return total;
+ while (pFirst != NULL)
+ {
+ void __near* p = *(void __near* __near*)pFirst;
+ _nfree(pFirst);
+ pFirst = p;
+ }
+ return total;
}
-void far* AllocateLargestFarFreeBlock(size_t far* Size)
+void far* LargestFarFreeBlock(size_t* Size)
{
size_t s0, s1;
void far* p;
return p;
}
-size_t GetFarFreeSize(void)
+size_t _farcoreleft(void)
{
size_t total = 0;
void far* pFirst = NULL;
for(;;)
{
size_t largest;
- void far* p = AllocateLargestFarFreeBlock(&largest);
+ void far* p = LargestFarFreeBlock(&largest);
if (largest < sizeof(void far*))
{
if (p != NULL)
return total;
}
-//near versions
-void __near* AllocateLargestNearFreeBlock(size_t* Size)
+void huge* LargestHugeFreeBlock(size_t* Size)
{
size_t s0, s1;
- void __near* p;
+ void huge* p;
s0 = ~(size_t)0 ^ (~(size_t)0 >> 1);
- while (s0 && (p = _nmalloc(s0)) == NULL)
+ while (s0 && (p = halloc((dword)s0, 1)) == NULL)
s0 >>= 1;
if (p)
- _nfree(p);
+ hfree(p);
s1 = s0 >> 1;
while (s1)
{
- if ((p = _nmalloc(s0 + s1)) != NULL)
+ if ((p = halloc((dword)(s0 + s1), 1)) != NULL)
{
s0 += s1;
- _nfree(p);
+ hfree(p);
}
s1 >>= 1;
}
- while (s0 && (p = _nmalloc(s0)) == NULL)
+ while (s0 && (p = halloc((dword)s0, 1)) == NULL)
s0 ^= s0 & -s0;
*Size = s0;
return p;
}
-size_t GetNearFreeSize(void)
+size_t _hugecoreleft(void)
{
size_t total = 0;
- void __near* pFirst = NULL;
- void __near* pLast = NULL;
+ void huge* pFirst = NULL;
+ void huge* pLast = NULL;
for(;;)
{
size_t largest;
- void __near* p = AllocateLargestNearFreeBlock(&largest);
- if (largest < sizeof(void __near*))
+ void huge* p = LargestHugeFreeBlock(&largest);
+ if (largest < sizeof(void huge*))
{
if (p != NULL)
- _nfree(p);
+ hfree(p);
break;
}
- *(void __near* __near*)p = NULL;
+ *(void huge* huge*)p = NULL;
total += largest;
if (pFirst == NULL)
pFirst = p;
if (pLast != NULL)
- *(void __near* __near*)pLast = p;
+ *(void huge* huge*)pLast = p;
pLast = p;
}
while (pFirst != NULL)
{
- void __near* p = *(void __near* __near*)pFirst;
- _nfree(pFirst);
+ void huge* p = *(void huge* huge*)pFirst;
+ hfree(pFirst);
+ pFirst = p;
+ }
+ return total;
+}
+
+/*void __based(__self)* LargestBasedFreeBlock(size_t* Size)
+{
+ __segment segu;
+ size_t s0, s1;
+ void __based(__self)* p;
+
+ s0 = ~(size_t)0 ^ (~(size_t)0 >> 1);
+ while (s0 && (p = _bmalloc(segu, s0)) == NULL)
+ s0 >>= 1;
+
+ if (p)
+ _ffree(p);
+
+ s1 = s0 >> 1;
+ while (s1)
+ {
+ if ((p = _bmalloc(segu, s0 + s1)) != NULL)
+ {
+ s0 += s1;
+ _ffree(p);
+ }
+ s1 >>= 1;
+ }
+ while (s0 && (p = _bmalloc(segu, s0)) == NULL)
+ s0 ^= s0 & -s0;
+
+ *Size = s0;
+ return p;
+}
+
+size_t _basedcoreleft(void)
+{
+ __segment segu;
+ size_t total = 0;
+ void __based(segu)* pFirst = NULL;
+ void __based(segu)* pLast = NULL;
+ // allocate based heap\r
+ segu = _bheapseg( 1024 );\r
+ if( segu == _NULLSEG ) {\r
+ printf( "Unable to allocate based heap\n" );
+ return 0;\r
+ //exit( 1 );\r
+ }
+ else
+
+ for(;;)
+ {
+ size_t largest;
+ void __based(segu)* p = LargestBasedFreeBlock(&largest);
+ if (largest < sizeof(void far*))
+ {
+ if (p != NULL)
+ _ffree(p);
+ break;
+ }
+ *(void far* far*)p = NULL;
+ total += largest;
+ if (pFirst == NULL)
+ pFirst = p;
+
+ if (pLast != NULL)
+ *(void far* far*)pLast = p;
+ pLast = p;
+ }
+
+ while (pFirst != NULL)
+ {
+ void far* p = *(void far* far*)pFirst;
+ _ffree(pFirst);
pFirst = p;
}
return total;
+}*/
+
+size_t GetFreeSize(void)
+{
+ struct _heapinfo h_info;
+ int heap_status;
+ size_t h_free=0, h_total=0, h_used=0;
+
+ h_info._pentry = NULL;
+ for(;;) {
+ heap_status = _heapwalk( &h_info );
+ if( heap_status != _HEAPOK ) break;
+ if((h_info._useflag == _USEDENTRY ? "USED" : "FREE")=="FREE") h_free += h_info._size;
+ if((h_info._useflag == _USEDENTRY ? "USED" : "FREE")=="USED") h_used += h_info._size;
+ h_total += h_info._size;
+ }
+ heapstat(heap_status);
+ return h_free;
+}
+
+size_t GetFarFreeSize(void)
+{
+ struct _heapinfo fh_info;
+ int heap_status;
+ size_t fh_free=0, fh_total=0, fh_used=0;
+
+ fh_info._pentry = NULL;
+ for(;;) {
+ heap_status = _fheapwalk( &fh_info );
+ if( heap_status != _HEAPOK ) break;
+ if((fh_info._useflag == _USEDENTRY ? "USED" : "FREE")=="FREE") fh_free += fh_info._size;
+ if((fh_info._useflag == _USEDENTRY ? "USED" : "FREE")=="USED") fh_used += fh_info._size;
+ fh_total += fh_info._size;
+ }
+ heapstat(heap_status);
+ return fh_free;
+}
+
+size_t GetNearFreeSize(void)
+{
+ struct _heapinfo nh_info;
+ int heap_status;
+ size_t nh_free=0, nh_total=0, nh_used=0;
+
+ nh_info._pentry = NULL;
+ for(;;) {
+ heap_status = _nheapwalk( &nh_info );
+ if( heap_status != _HEAPOK ) break;
+ if((nh_info._useflag == _USEDENTRY ? "USED" : "FREE")=="FREE") nh_free += nh_info._size;
+ if((nh_info._useflag == _USEDENTRY ? "USED" : "FREE")=="USED") nh_used += nh_info._size;
+ nh_total += nh_info._size;
+ }
+ heapstat(heap_status);
+ return nh_free;
}
long int
return(size_of_file);\r
}
+void print_normal_entry(char *text, dword total, dword used, dword free)
+{
+ printf("%-17s", text);
+ convert("%8sB ", total);
+ convert("%9sB ", used);
+ convert("%9sB\n", free);
+}
+
+/*
+ * As for printf(), but format may only contain a single format specifier,
+ * which must be "%s" and is replaced with the string form of num with commas
+ * separating groups of three digits.
+ *
+ * e.g. convert("%s bytes", 1234567) -> "1,234,567 bytes"
+ */
+void convert(const char *format, dword num)
+{
+ int c, i, j, n;
+ char des[4*sizeof(dword)+3];
+ union REGS regs;
+ struct SREGS sregs;
+ char mycountry[48]; /* probably 34 bytes are enough... */
+ char ksep = ','; /* or . */
+
+ regs.x.ax = 0x3800;
+ sregs.ds = FP_SEG(&mycountry);
+ regs.x.dx = FP_OFF(&mycountry);
+ intdosx(®s,®s,&sregs);
+ if (regs.x.cflag == 0) {
+ ksep = mycountry[7]; /* 1000's separator */
+ /* dsep = mycountry[9]; ** decimal separator */
+ }
+
+ n = sprintf(des, "%lu", num);
+ /* insert commas in the string */
+ c = 3;
+ for (i = n - 3; i > 0; i--) {
+ if (c%3==0) {
+ for (j = n; j >= i; j--)
+ des[j+1] = des[j];
+ des[i]=ksep; /* ',' */
+ n++;
+ }
+ c++;
+ }
+ printf(format, des);
+}
+
+void heapdump(void)
+{
+ struct _heapinfo fh_info, nh_info, h_info;
+ int heap_status;
+ size_t h_free, nh_free, fh_free, h_total, nh_total, fh_total, h_used, nh_used, fh_used;
+
+ printf("\n == default ==\n\n");
+ h_info._pentry = NULL;
+ h_free=0; h_total=0; h_used=0;
+ for(;;) {
+ heap_status = _heapwalk( &h_info );
+ if( heap_status != _HEAPOK ) break;
+ printf( " %s block at %Fp of size %4.4X\n",
+(h_info._useflag == _USEDENTRY ? "USED" : "FREE"),
+h_info._pentry, h_info._size );
+ if((h_info._useflag == _USEDENTRY ? "USED" : "FREE")=="FREE") h_free += h_info._size;
+ if((h_info._useflag == _USEDENTRY ? "USED" : "FREE")=="USED") h_used += h_info._size;
+ h_total += h_info._size;
+ }
+ heapstat(heap_status);
+
+ //near
+ printf("\n == near ==\n\n");
+ nh_info._pentry = NULL;
+ nh_free=0; nh_total=0; nh_used=0;
+ for(;;) {
+ heap_status = _nheapwalk( &nh_info );
+ if( heap_status != _HEAPOK ) break;
+ printf( " %s block at %Fp of size %4.4X\n",
+(nh_info._useflag == _USEDENTRY ? "USED" : "FREE"),
+nh_info._pentry, nh_info._size );
+ if((nh_info._useflag == _USEDENTRY ? "USED" : "FREE")=="FREE") nh_free += nh_info._size;
+ if((nh_info._useflag == _USEDENTRY ? "USED" : "FREE")=="USED") nh_used += nh_info._size;
+ nh_total += nh_info._size;
+ }
+ heapstat(heap_status);
+
+ //far
+ printf("\n == far ==\n\n");
+ fh_info._pentry = NULL;
+ fh_free=0; fh_total=0; fh_used=0;
+ for(;;) {
+ heap_status = _fheapwalk( &fh_info );
+ if( heap_status != _HEAPOK ) break;
+ printf( " %s block at %Fp of size %4.4X\n",
+(fh_info._useflag == _USEDENTRY ? "USED" : "FREE"),
+fh_info._pentry, fh_info._size );
+ if((fh_info._useflag == _USEDENTRY ? "USED" : "FREE")=="FREE") fh_free += fh_info._size;
+ if((fh_info._useflag == _USEDENTRY ? "USED" : "FREE")=="USED") fh_used += fh_info._size;
+ fh_total += fh_info._size;
+ }
+ heapstat(heap_status);
+
+printf("\n");
+printf(kittengets(2,0,"Memory Type Total Used Free\n"));
+printf( "---------------- -------- -------- --------\n");
+print_normal_entry(kittengets(2,1,"Default"), (dword)h_total, (dword)h_used, (dword)h_free);
+print_normal_entry(kittengets(2,1,"Near"), (dword)nh_total, (dword)nh_used, (dword)nh_free);
+print_normal_entry(kittengets(2,1,"Far"), (dword)fh_total, (dword)fh_used, (dword)fh_free);
+printf( "---------------- -------- -------- --------\n");
+//printf("memavl = %lu\n", (dword)_memavl());
+printf("stackavail = %u\n", stackavail());
+}
+
+void heapstat(int heap_status)
+{
+ switch( heap_status ) {
+ case _HEAPEND:
+ //printf( "OK - end of heap\n" );
+ break;
+ case _HEAPEMPTY:
+ //printf( "OK - heap is empty\n" );
+ break;
+ case _HEAPBADBEGIN:
+ printf( "ERROR - heap is damaged\n" );
+ break;
+ case _HEAPBADPTR:
+ printf( "ERROR - bad pointer to heap\n" );
+ break;
+ case _HEAPBADNODE:
+ printf( "ERROR - bad node in heap\n" );
+ }
+}
+
+
///////////////////////////////////////////////////////////////////////////\r
//\r
// US_CheckParm() - checks to see if a string matches one of a set of\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 <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