From 01fe58047ed8dab81a2e51d1cde6239efd80a38f Mon Sep 17 00:00:00 2001 From: Peter Veenstra Date: Mon, 18 Nov 2019 21:08:57 +0000 Subject: [PATCH] Try to solve the Bitu formatting warning on all supported platforms (both 32 and 64 bit). Did a few places. Still a lot to go. Changed default display of Bitu to be unsigned instead of signed. Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@4291 --- acinclude.m4 | 20 +++++++++++++++----- src/cpu/callback.cpp | 2 +- src/cpu/cpu.cpp | 20 ++++++++++---------- src/hardware/dma.cpp | 10 +++++----- src/platform/visualc/config.h | 32 +++++++++++++++++++------------- 5 files changed, 50 insertions(+), 34 deletions(-) diff --git a/acinclude.m4 b/acinclude.m4 index 9f299355..9cbf5dfa 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -388,11 +388,21 @@ typedef double Real64; #endif #if SIZEOF_INT_P == 4 - typedef Bit32u Bitu; - typedef Bit32s Bits; -#else - typedef Bit64u Bitu; - typedef Bit64s Bits; + +typedef Bit32u Bitu; +typedef Bit32s Bits; +#define sBitud "%u" +#define sBitux "%x" +#define sBituX "%X" + +#else //SIZEOF_INT_P + +typedef Bit64u Bitu; +typedef Bit64s Bits; +#define sBitud "%lu" +#define sBitux "%lx" +#define sBituX "%lX" + #endif ]) diff --git a/src/cpu/callback.cpp b/src/cpu/callback.cpp index 136888a6..ed13a6e8 100644 --- a/src/cpu/callback.cpp +++ b/src/cpu/callback.cpp @@ -527,7 +527,7 @@ Bitu CALLBACK_SetupExtra(Bitu callback, Bitu type, PhysPt physAddress, bool use_ phys_writeb(physAddress+0x1B,(Bit8u)0xC3); //A RETN Instruction return (use_cb?32:27); default: - E_Exit("CALLBACK:Setup:Illegal type %d",type); + E_Exit("CALLBACK:Setup:Illegal type " sBitud,type); } return 0; } diff --git a/src/cpu/cpu.cpp b/src/cpu/cpu.cpp index 37916028..1a55bace 100644 --- a/src/cpu/cpu.cpp +++ b/src/cpu/cpu.cpp @@ -349,7 +349,7 @@ bool CPU_SwitchTask(Bitu new_tss_selector,TSwitchType tstype,Bitu old_eip) { FillFlags(); TaskStateSegment new_tss; if (!new_tss.SetSelector(new_tss_selector)) - E_Exit("Illegal TSS for switch, selector=%x, switchtype=%x",new_tss_selector,tstype); + E_Exit("Illegal TSS for switch, selector=" sBitux ", switchtype=%x",new_tss_selector,tstype); if (tstype==TSwitch_IRET) { if (!new_tss.desc.IsBusy()) E_Exit("TSS not busy for IRET"); @@ -503,7 +503,7 @@ doconforming: Segs.val[cs]=new_cs; break; default: - E_Exit("Task switch CS Type %d",cs_desc.Type()); + E_Exit("Task switch CS Type " sBitud,cs_desc.Type()); } } CPU_SetSegGeneral(es,new_es); @@ -725,7 +725,7 @@ do_interrupt: } break; default: - E_Exit("INT:Gate Selector points to illegal descriptor with type %x",cs_desc.Type()); + E_Exit("INT:Gate Selector points to illegal descriptor with type " sBitux,cs_desc.Type()); } Segs.val[cs]=(gate_sel&0xfffc) | cpu.cpl; @@ -755,7 +755,7 @@ do_interrupt: } return; default: - E_Exit("Illegal descriptor type %X for int %X",gate.Type(),num); + E_Exit("Illegal descriptor type " sBituX " for int " sBituX,gate.Type(),num); } } assert(1); @@ -902,7 +902,7 @@ void CPU_IRET(bool use32,Bitu oldeip) { EXCEPTION_GP,n_cs_sel & 0xfffc) break; default: - E_Exit("IRET:Illegal descriptor type %X",n_cs_desc.Type()); + E_Exit("IRET:Illegal descriptor type " sBituX, n_cs_desc.Type()); } CPU_CHECK_COND(!n_cs_desc.saved.seg.p, "IRET with nonpresent code segment", @@ -1059,7 +1059,7 @@ CODE_jmp: CPU_SwitchTask(selector,TSwitch_JMP,oldeip); break; default: - E_Exit("JMP Illegal descriptor type %X",desc.Type()); + E_Exit("JMP Illegal descriptor type " sBituX,desc.Type()); } } assert(1); @@ -1295,7 +1295,7 @@ call_code: CPU_Exception(EXCEPTION_GP,selector & 0xfffc); return; default: - E_Exit("CALL:Descriptor type %x unsupported",call.Type()); + E_Exit("CALL:Descriptor type " sBitux " unsupported",call.Type()); } } assert(1); @@ -1353,7 +1353,7 @@ void CPU_RET(bool use32,Bitu bytes,Bitu oldeip) { EXCEPTION_GP,selector & 0xfffc) break; default: - E_Exit("RET from illegal descriptor type %X",desc.Type()); + E_Exit("RET from illegal descriptor type " sBituX,desc.Type()); } RET_same_level: if (!desc.saved.seg.p) { @@ -1398,7 +1398,7 @@ RET_same_level: EXCEPTION_GP,selector & 0xfffc) break; default: - E_Exit("RET from illegal descriptor type %X",desc.Type()); // or #GP(selector) + E_Exit("RET from illegal descriptor type " sBituX,desc.Type()); // or #GP(selector) } CPU_CHECK_COND(!desc.saved.seg.p, @@ -1509,7 +1509,7 @@ bool CPU_LTR(Bitu selector) { LOG(LOG_CPU,LOG_ERROR)("LTR failed, selector=%X (not present)",selector); return CPU_PrepareException(EXCEPTION_NP,selector); } - if (!cpu_tss.SetSelector(selector)) E_Exit("LTR failed, selector=%X",selector); + if (!cpu_tss.SetSelector(selector)) E_Exit("LTR failed, selector=" sBituX,selector); cpu_tss.desc.SetBusy(true); cpu_tss.SaveSelector(); } else { diff --git a/src/hardware/dma.cpp b/src/hardware/dma.cpp index a2bb0d7c..16f56ef5 100644 --- a/src/hardware/dma.cpp +++ b/src/hardware/dma.cpp @@ -50,7 +50,7 @@ static void DMA_BlockRead(PhysPt spage,PhysPt offset,void * data,Bitu size,Bit8u Bit32u dma_wrap = ((0xffff<(dma_wrapping<> 12); @@ -71,7 +71,7 @@ static void DMA_BlockWrite(PhysPt spage,PhysPt offset,void * data,Bitu size,Bit8 Bit32u dma_wrap = ((0xffff<(dma_wrapping<> 12); @@ -109,7 +109,7 @@ bool SecondDMAControllerAvailable(void) { } static void DMA_Write_Port(Bitu port,Bitu val,Bitu /*iolen*/) { - //LOG(LOG_DMACONTROL,LOG_ERROR)("Write %X %X",port,val); + //LOG(LOG_DMACONTROL,LOG_ERROR)("Write " sBituX " " sBituX,port,val); if (port<0x10) { /* write to the first DMA controller (channels 0-3) */ DmaControllers[0]->WriteControllerReg(port,val,1); @@ -132,7 +132,7 @@ static void DMA_Write_Port(Bitu port,Bitu val,Bitu /*iolen*/) { } static Bitu DMA_Read_Port(Bitu port,Bitu iolen) { - //LOG(LOG_DMACONTROL,LOG_ERROR)("Read %X",port); + //LOG(LOG_DMACONTROL,LOG_ERROR)("Read " sBituX,port); if (port<0x10) { /* read from the first DMA controller (channels 0-3) */ return DmaControllers[0]->ReadControllerReg(port,iolen); @@ -258,7 +258,7 @@ Bitu DmaController::ReadControllerReg(Bitu reg,Bitu /*len*/) { } return ret; default: - LOG(LOG_DMACONTROL,LOG_NORMAL)("Trying to read undefined DMA port %x",reg); + LOG(LOG_DMACONTROL,LOG_NORMAL)("Trying to read undefined DMA port " sBitux,reg); break; } return 0xffffffff; diff --git a/src/platform/visualc/config.h b/src/platform/visualc/config.h index f18a7443..7b8838b8 100644 --- a/src/platform/visualc/config.h +++ b/src/platform/visualc/config.h @@ -73,21 +73,27 @@ #pragma warning(disable : 4996) #endif -typedef double Real64; +typedef double Real64; /* The internal types */ -typedef unsigned char Bit8u; -typedef signed char Bit8s; -typedef unsigned short Bit16u; -typedef signed short Bit16s; -typedef unsigned long Bit32u; -typedef signed long Bit32s; -typedef unsigned __int64 Bit64u; -typedef signed __int64 Bit64s; +typedef unsigned char Bit8u; +typedef signed char Bit8s; +typedef unsigned short Bit16u; +typedef signed short Bit16s; +typedef unsigned int Bit32u; +typedef signed int Bit32s; +typedef unsigned __int64 Bit64u; +typedef signed __int64 Bit64s; #ifdef _M_X64 -typedef unsigned __int64 Bitu; -typedef signed __int64 Bits; +typedef Bit64u Bitu; +typedef Bit64s Bits; +#define sBitud "%I64u" +#define sBitux "%I64x" +#define sBituX "%I64X" #else // _M_IX86 -typedef unsigned int Bitu; -typedef signed int Bits; +typedef Bit32u Bitu; +typedef Bit32s Bits; +#define sBitud "%u" +#define sBitux "%x" +#define sBituX "%X" #endif