VOGONS


First post, by truth_deleted

User metadata

x86 platforms may compile dosbox to use the dynamic-x86 (faster core) or the dynrec core. However, in compiling dosbox-SVN+3dfx_patch with the dynrec core there are a couple of errors which also occur in compiling the 64-bit linux version (credit to Ykhwong). That web link has information to bypass the errors as shown below.
Patch #1:

--- src/cpu/core_dynrec_orig.cpp	2014-02-14 06:30:42 -0500
+++ src/cpu/core_dynrec.cpp 2014-02-14 06:14:32 -0500
@@ -331,4 +331,10 @@ void CPU_Core_Dynrec_Cache_Close(void) {
cache_close();
}

+void CPU_Core_Dyn_X86_SaveDHFPUState(void) {
+}
+
+void CPU_Core_Dyn_X86_RestoreDHFPUState(void) {
+}
+
#endif

Patch #2:

--- src/cpu/core_dynrec/decoder_basic_orig.h	2014-02-14 06:30:16 -0500
+++ src/cpu/core_dynrec/decoder_basic.h 2014-02-14 06:33:09 -0500
@@ -140,13 +140,13 @@ static bool MakeCodePage(Bitu lin_addr,C
return false;
}
if (handler->flags & PFLAG_NOCODE) {
- if (PAGING_ForcePageInit(lin_addr)) {
+ // if (PAGING_ForcePageInit(lin_addr)) {
handler=get_tlb_readhandler(lin_addr);
if (handler->flags & PFLAG_HASCODE) {
cph=(CodePageHandlerDynRec *)handler;
return false;
}
- }
+ // }
if (handler->flags & PFLAG_NOCODE) {
LOG_MSG("DYNREC:Can't run code in this page");
cph=0;