From edf5197460e1c62d553f4ccd5efceeaa8054a9cd Mon Sep 17 00:00:00 2001 From: OBattler Date: Thu, 17 Feb 2022 13:33:09 +0100 Subject: [PATCH 1/2] BIOS Dumper. --- biosdump/biosdump.lk1 | 2 + biosdump/biosdump.map | 350 ++++++++++++++++++++++++++++++++++++++++++ biosdump/biosdump.mk | 3 + biosdump/biosdump.mk1 | 15 ++ biosdump/biosdump.sym | Bin 0 -> 12288 bytes biosdump/biosdump.tgt | 81 ++++++++++ biosdump/biosdump.wpj | 43 ++++++ 7 files changed, 494 insertions(+) create mode 100644 biosdump/biosdump.lk1 create mode 100644 biosdump/biosdump.map create mode 100644 biosdump/biosdump.mk create mode 100644 biosdump/biosdump.mk1 create mode 100644 biosdump/biosdump.sym create mode 100644 biosdump/biosdump.tgt create mode 100644 biosdump/biosdump.wpj diff --git a/biosdump/biosdump.lk1 b/biosdump/biosdump.lk1 new file mode 100644 index 0000000..3a98059 --- /dev/null +++ b/biosdump/biosdump.lk1 @@ -0,0 +1,2 @@ +FIL biosdump.obj + diff --git a/biosdump/biosdump.map b/biosdump/biosdump.map new file mode 100644 index 0000000..4d69877 --- /dev/null +++ b/biosdump/biosdump.map @@ -0,0 +1,350 @@ +Open Watcom Linker Version 2.0 beta Sep 12 2021 00:40:14 (64-bit) +Copyright (c) 2002-2021 The Open Watcom Contributors. All Rights Reserved. +Portions Copyright (c) 1985-2002 Sybase, Inc. All Rights Reserved. +Created on: 21/09/12 13:24:26 +Executable Image: biosdump.exe +creating a DOS/4G executable + + + +------------+ + | Groups | + +------------+ + +Group Address Size +===== ======= ==== + +DGROUP 0002:00000000 00010610 + + + + +--------------+ + | Segments | + +--------------+ + +Segment Class Group Address Size +======= ===== ===== ======= ==== + +BEGTEXT CODE AUTO 0001:00000000 00000010 +_TEXT CODE AUTO 0001:00000010 00004603 +_NULL BEGDATA DGROUP 0002:00000000 00000004 +_AFTERNULL BEGDATA DGROUP 0002:00000004 00000000 +CONST DATA DGROUP 0002:00000004 00000170 +CONST2 DATA DGROUP 0002:00000174 00000025 +_DATA DATA DGROUP 0002:0000019c 00000310 +XIB DATA DGROUP 0002:000004ac 00000000 +XI DATA DGROUP 0002:000004ac 00000018 +XIE DATA DGROUP 0002:000004c4 00000000 +YIB DATA DGROUP 0002:000004c4 00000000 +YI DATA DGROUP 0002:000004c4 00000012 +YIE DATA DGROUP 0002:000004d6 00000000 +TIB DATA DGROUP 0002:000004d6 00000000 +TI DATA DGROUP 0002:000004d6 00000000 +TIE DATA DGROUP 0002:000004d6 00000000 +DATA DATA DGROUP 0002:000004d6 00000000 +_BSS BSS DGROUP 0002:000004d8 0000012e +STACK STACK DGROUP 0002:00000610 00010000 + + + +----------------+ + | Memory Map | + +----------------+ + +* = unreferenced symbol ++ = symbol only referenced locally + +Address Symbol +======= ====== + +Module: biosdump.obj(F:\VMs\biosdump.c) +0001:00000010 main_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(stk386.asm) +0001:0000027f* __STK +0001:0000026c __CHK +0001:0000027c* __GRO +0001:0000029c* __STKOVERFLOW_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(printf.c) +0001:000002b0 printf_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(fopen.c) +0001:000002e0+ __open_flags_ +0001:000004e0+ _fsopen_ +0001:00000530 fopen_ +0001:000005b0* freopen_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(fwrite.c) +0001:00000600 fwrite_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(fclose.c) +0001:000007e0 __doclose_ +0001:00000870 __shutdown_stream_ +0001:00000890 fclose_ +0002:000004d8+ ___RmTmpFileFn +Module: C:\WATCOM\lib386\dos\clib3r.lib(cstart) +0001:00000003* ___begtext +0002:00000000* __nullarea +0002:000001b0* __D16Infoseg +0002:000001b2 __x386_zero_base_selector +0001:000008c0 _cstart_ +0001:00000aad __exit_ +0001:00000ab0 __do_exit_with_msg_ +0001:00000b78* __GETDS +0001:00000b78 ___GETDSStart_ +0001:00000b83 ___GETDSEnd_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(xmsg.c) +0001:00000b90* __exit_with_msg_ +0001:00000ba0 __fatal_runtime_error_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(crwdata) +0002:000001ee __osmajor +0002:000001ef __osminor +0002:000001bc __LpCmdLine +0002:000001c0 __LpPgmName +0002:000001b4 __dynend +0002:000001b8 __curbrk +0002:000001d8* __cbyte +0002:000001dc* __cbyte2 +0002:000001e0 __child +0002:000001e8 __Envptr +0002:000001c4 __psp +0002:000001e5 __Extender +0002:000001e6 __ExtenderSubtype +0002:000001e7 __X32VM +0002:000001c8* __x386_stacklow +0002:000001c8 __STACKLOW +0002:000001cc __STACKTOP +0002:000001d0 __ASTACKSIZ +0002:000001d4 __ASTACKPTR +0002:000001e4 __no87 +0002:000001f0 ___FPE_handler +Module: C:\WATCOM\lib386\dos\clib3r.lib(iob.c) +0002:000001f4 ___iob +0002:000004dc ___ClosedStreams +0002:000004e0 ___OpenStreams +Module: C:\WATCOM\lib386\dos\clib3r.lib(fprtf.c) +0001:00000be0 __fprtf_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(comtflag.c) +0001:00000c80* __set_commode_ +0002:000003fc __commode +Module: C:\WATCOM\lib386\dos\clib3r.lib(textmode.c) +0002:00000400 __fmode +Module: C:\WATCOM\lib386\dos\clib3r.lib(errno.c) +0001:00000c90 __get_errno_ptr_ +0002:000004e4+ _errno +Module: C:\WATCOM\lib386\dos\clib3r.lib(tolower.c) +0001:00000c96 tolower_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(open.c) +0001:00000f00* open_ +0001:00000f30 _sopen_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(fseek.c) +0001:00000fb0 fseek_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(chktty.c) +0001:000010b0 __chktty_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(freefp.c) +0001:000010f0 __freefp_ +0001:00001120 __purgefp_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(allocfp.c) +0001:00001150 __allocfp_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(qwrit.c) +0001:00001200 __qwrite_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(ioalloc.c) +0001:00001280 __ioalloc_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(flush.c) +0001:00001320 __flush_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(fputc.c) +0001:00001410 fputc_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(__lseek.c) +0001:000014d0 __lseek_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(_clse.c) +0001:00001520 __close_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(nfree.c) +0001:00001570 _nfree_ +0001:00001570 free_ +0002:000004e8 ___MiniHeapFreeRover +Module: C:\WATCOM\lib386\dos\clib3r.lib(cmain386.c) +0001:00001650 __CMain +Module: C:\WATCOM\lib386\dos\clib3r.lib(initrtns.c) +0001:000016a0 __InitRtns +0001:000016f0 __FiniRtns +Module: C:\WATCOM\lib386\dos\clib3r.lib(dosseg) +0000:00001234 __DOSseg__ +Module: C:\WATCOM\lib386\dos\clib3r.lib(uselfn.c) +0002:00000404 ___uselfn +Module: C:\WATCOM\lib386\dos\clib3r.lib(enterdb.c) +0001:00001750 __EnterWVIDEO_ +0002:00000408+ ___WD_Present +Module: C:\WATCOM\lib386\dos\clib3r.lib(initfile.c) +0001:00001780 __InitFiles_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(ioexit.c) +0001:00001880* fcloseall_ +0001:00001890 __full_io_exit_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(prtf.c) +0001:00002430 __prtf_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(opendos.c) +0001:000026e0 _dos_open_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(iomode.c) +0001:00002700 __GetIOMode_ +0001:00002720 __SetIOMode_nogrow_ +0002:0000040c ___NFiles +0002:00000410 ___init_mode +0002:00000460 ___io_mode +Module: C:\WATCOM\lib386\dos\clib3r.lib(isatt.c) +0001:00002740 isatty_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(dosret.c) +0001:00002760 __dosretax +0001:00002770* __dosret0 +0001:00002780 __set_errno_dos_ +0001:00002800* __set_errno_dos_reterr_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(doserrno.c) +0001:00002810 __get_doserrno_ptr_ +0002:000004ec+ __doserrno +Module: C:\WATCOM\lib386\dos\clib3r.lib(umaskval.c) +0002:00000478 ___umaskval +Module: C:\WATCOM\lib386\dos\clib3r.lib(creatdos.c) +0001:00002820 _dos_creat_ +0001:00002840* _dos_creatnew_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(stiomode.c) +0001:00002860+ __grow_iomode_ +0001:00002920+ __shrink_iomode_ +0001:00002950 __SetIOMode_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(lseek.c) +0001:000029c0 lseek_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(tell.c) +0001:000029f0 _tell_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(nmalloc.c) +0001:00002a10 _nmalloc_ +0001:00002a10 malloc_ +0002:0000047c ___nheapbeg +0002:00000480 ___MiniHeapRover +0002:00000484 ___LargestSizeB4MiniHeapRover +Module: C:\WATCOM\lib386\dos\clib3r.lib(memset.c) +0001:00002af0 memset_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(fsync.c) +0001:00002b10 fsync_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(mem.c) +0001:00002b20 __MemAllocator +0001:00002bd0 __MemFree +Module: C:\WATCOM\lib386\dos\clib3r.lib(cinit.c) +0001:00002d10 __CommonInit_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(___argc.c) +0002:000004f4 ____Argv +0002:000004f8 ____Argc +Module: C:\WATCOM\lib386\dos\clib3r.lib(exit.c) +0001:00002d60+ __null_int23_exit_ +0001:00002d61 exit_ +0001:00002d8b* _exit_ +0002:00000488+ ___int23_exit +0002:0000048c+ ___FPE_handler_exit +Module: C:\WATCOM\lib386\dos\clib3r.lib(sgdef086) +0002:000004ac __Start_XI +0002:000004c4 __End_XI +0002:000004c4 __Start_YI +0002:000004d6 __End_YI +Module: C:\WATCOM\lib386\dos\clib3r.lib(wctomb.c) +0001:00002da0 wctomb_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(itoa.c) +0001:00002dd0+ utoa_ +0001:00002e20 itoa_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(strupr.c) +0001:00002e50 _strupr_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(noefgfmt.c) +0002:00000490 ___EFG_printf +0002:00000494* ___EFG_scanf +Module: C:\WATCOM\lib386\dos\clib3r.lib(lltoa.c) +0001:00002e80 ulltoa_ +0001:00002ee0* lltoa_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(ltoa.c) +0001:00002f10 ultoa_ +0001:00002f60* ltoa_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(mbisdbcs.c) +0002:00000498 ___IsDBCS +Module: C:\WATCOM\lib386\dos\clib3r.lib(mbislead.c) +0001:00002f90* _ismbblead_ +0002:000004fc ___MBCSIsTable +Module: C:\WATCOM\lib386\dos\clib3r.lib(error386.asm) +0001:00002fa8 __doserror_ +0001:00002fbb* __doserror1_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(nrealloc.c) +0001:00002fd0* _nrealloc_ +0001:00002fd0 realloc_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(iomodtty.c) +0001:00003070 __ChkTTYIOMode_ +0001:000030b0* __IOMode_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(nmemneed.c) +0001:000030d0 __nmemneed_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(grownear.c) +0001:00003160 __ReAllocDPMIBlock_ +0001:000032c0+ __LastFree_ +0001:00003530 __ExpandDGROUP_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(__stos.asm) +0001:000036b0 __STOSB +0001:000036ea* __STOSD +Module: C:\WATCOM\lib386\dos\clib3r.lib(filedos.c) +0001:00003760* _dos_close_ +0001:00003770 _dos_commit_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(dpmihost.c) +0001:00003780 __DPMI_hosted_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(alphabet.c) +0002:00000174 ___Alphabet +Module: C:\WATCOM\lib386\dos\clib3r.lib(mbinit.c) +0001:0000388a __mbinit_ +0002:000004a0+ ___MBCodePage +Module: C:\WATCOM\lib386\dos\clib3r.lib(nmsize.c) +0001:00003920 _nmsize_ +0001:00003920* _msize_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(nexpand.c) +0001:00003930 _nexpand_ +0001:00003930* _expand_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(heapen.c) +0001:000039a0* _heapenable_ +0002:000004a4 ___heap_enabled +Module: C:\WATCOM\lib386\dos\clib3r.lib(nheapmin.c) +0001:000039b0* _nheapshrink_ +0001:000039b0* _nheapmin_ +0001:000039b0* _heapmin_ +0001:000039b0* _heapshrink_ +0001:00003a60 __nheapshrink_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(nheapunl.c) +0001:00003b70 __UnlinkNHeap_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(minreal.c) +0002:00000600 ___minreal +Module: C:\WATCOM\lib386\dos\clib3r.lib(amblksiz.c) +0002:000004a8 __amblksiz +Module: C:\WATCOM\lib386\dos\clib3r.lib(sbrk.c) +0001:00003bd0 __brk_ +0001:00003cc0 sbrk_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(getltdos.c) +0001:00003da0 dos_get_dbcs_lead_table_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(getcpdos.c) +0001:00003ed0 dos_get_code_page_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(_expand.c) +0001:00003f80 __HeapManager_expand_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(intdx386.c) +0001:000040c0 intdosx_ +Module: C:\WATCOM\lib386\dos\clib3r.lib(inirmsel.c) +0002:00000604 __ExtenderRealModeSelector +Module: C:\WATCOM\lib386\dos\clib3r.lib(intxa386.asm) +0001:00004228* __int386x_ +0001:00004291 _DoINTR_ + + + +----------------------+ + | Imported Symbols | + +----------------------+ + +Symbol Module +====== ====== + + + + +--------------------+ + | Libraries Used | + +--------------------+ + +C:\WATCOM\lib386\dos\clib3r.lib + + + +-----------------------+ + | Linker Statistics | + +-----------------------+ + +Stack size: 00010000 (65536.) +Memory size: 00014c23 (85027.) +Entry point address: 0001:000008c0 +Stub file: C:\WATCOM\binnt64\wstub.exe +Link time: 00:00.06 diff --git a/biosdump/biosdump.mk b/biosdump/biosdump.mk new file mode 100644 index 0000000..d913dc7 --- /dev/null +++ b/biosdump/biosdump.mk @@ -0,0 +1,3 @@ +project : F:\VMs\biosdump.exe .SYMBOLIC + +!include F:\VMs\biosdump.mk1 diff --git a/biosdump/biosdump.mk1 b/biosdump/biosdump.mk1 new file mode 100644 index 0000000..2e90e24 --- /dev/null +++ b/biosdump/biosdump.mk1 @@ -0,0 +1,15 @@ +!define BLANK "" +F:\VMs\biosdump.obj : F:\VMs\biosdump.c .AUTODEPEND + @F: + cd F:\VMs + *wcc386 biosdump.c -i="C:\WATCOM/h" -w4 -e25 -zq -od -d2 -6r -bt=dos -fo=.o& +bj -mf + +F:\VMs\biosdump.exe : F:\VMs\biosdump.obj .AUTODEPEND + @F: + cd F:\VMs + @%write biosdump.lk1 FIL biosdump.obj + @%append biosdump.lk1 + *wlink name biosdump d all sys dos4g op m op maxe=25 op q op symf @biosdump& +.lk1 + diff --git a/biosdump/biosdump.sym b/biosdump/biosdump.sym new file mode 100644 index 0000000000000000000000000000000000000000..094e7a258e5bd1d769f1801bd05efb798d2671f0 GIT binary patch literal 12288 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 TMok>gW1lTn=9ksTjS2C;qE;Fo literal 0 HcmV?d00001 diff --git a/biosdump/biosdump.tgt b/biosdump/biosdump.tgt new file mode 100644 index 0000000..4664de0 --- /dev/null +++ b/biosdump/biosdump.tgt @@ -0,0 +1,81 @@ +40 +targetIdent +0 +MProject +1 +MComponent +0 +2 +WString +3 +EXE +3 +WString +5 +dr2en +1 +0 +1 +4 +MCommand +0 +5 +MCommand +0 +6 +MItem +12 +biosdump.exe +7 +WString +3 +EXE +8 +WVList +0 +9 +WVList +0 +-1 +1 +1 +0 +10 +WPickList +2 +11 +MItem +3 +*.c +12 +WString +4 +COBJ +13 +WVList +0 +14 +WVList +0 +-1 +1 +1 +0 +15 +MItem +10 +biosdump.c +16 +WString +4 +COBJ +17 +WVList +0 +18 +WVList +0 +11 +1 +1 +0 diff --git a/biosdump/biosdump.wpj b/biosdump/biosdump.wpj new file mode 100644 index 0000000..087382c --- /dev/null +++ b/biosdump/biosdump.wpj @@ -0,0 +1,43 @@ +40 +projectIdent +0 +VpeMain +1 +WRect +2448 +208 +7680 +9178 +2 +MProject +3 +MCommand +0 +4 +MCommand +0 +1 +5 +WFileName +12 +biosdump.tgt +6 +WVList +1 +7 +VComponent +8 +WRect +0 +0 +5690 +4295 +0 +0 +9 +WFileName +12 +biosdump.tgt +0 +1 +7 From dec19ac2fe2321a733eceb79358c8f4dc65cee16 Mon Sep 17 00:00:00 2001 From: OBattler Date: Thu, 17 Feb 2022 13:34:48 +0100 Subject: [PATCH 2/2] And the .c file. --- biosdump/biosdump.c | 70 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 biosdump/biosdump.c diff --git a/biosdump/biosdump.c b/biosdump/biosdump.c new file mode 100644 index 0000000..4eb56a7 --- /dev/null +++ b/biosdump/biosdump.c @@ -0,0 +1,70 @@ +#include +#include +#include +#include + + +int +#ifdef STANDARD_MAIN +main(int argc, char *argv[]) +#else +main(void) +#endif +{ + FILE *f; + char *p; + uint32_t size, ret; + + printf("Dumping low BIOS range (000C0000-000FFFFF)... "); + p = (char *) 0x000c0000; + size = 0x00040000; + f = fopen("000c0000.dmp", "wb"); + if (f == NULL) { + printf("FAILURE\n"); + return 1; + } + ret = fwrite(p, 1, size, f); + if (ret != size) { + printf("FAILURE\n"); + fclose(f); + return 2; + } + fclose(f); + printf("OK\n\n"); + + printf("Dumping mid BIOS range (00FE0000-00FFFFFF)... "); + p = (char *) 0x00fe0000; + size = 0x00020000; + f = fopen("00fe0000.dmp", "wb"); + if (f == NULL) { + printf("FAILURE\n"); + return 3; + } + ret = fwrite(p, 1, size, f); + if (ret != size) { + printf("FAILURE\n"); + fclose(f); + return 4; + } + fclose(f); + printf("OK\n\n"); + + printf("Dumping high BIOS range (FFF80000-FFFFFFFF)... "); + p = (char *) 0xfff80000; + size = 0x00080000; + f = fopen("fff80000.dmp", "wb"); + if (f == NULL) { + printf("FAILURE\n"); + return 5; + } + ret = fwrite(p, 1, size, f); + if (ret != size) { + printf("FAILURE\n"); + fclose(f); + return 6; + } + fclose(f); + printf("OK\n"); + + return 0; +}