add a few porting comments
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@2915
This commit is contained in:
parent
8f76382e7d
commit
d4c94c16d5
1 changed files with 46 additions and 0 deletions
46
docs/PORTING
Normal file
46
docs/PORTING
Normal file
|
@ -0,0 +1,46 @@
|
|||
Some notes about porting DOSBox to systems with certain restrictions,
|
||||
like handheld devices.
|
||||
|
||||
If memory is a constraint:
|
||||
- in paging.h reduce the size of the TLB:
|
||||
#define TLB_SIZE (64*1024)
|
||||
the 64 gives access to the first 256mb of linear memory
|
||||
drawback: some protected mode games won't work then
|
||||
gain: reduces memory requirements about ~15mb
|
||||
TODO: limit vmemory access to the size of the TLB,
|
||||
otherwise games which use >256mb vaddresses will crash badly
|
||||
- in render.h lower the scaler integration:
|
||||
#define RENDER_USE_ADVANCED_SCALERS 1
|
||||
or
|
||||
#define RENDER_USE_ADVANCED_SCALERS 0
|
||||
drawback: complex scalers and the scaler cache are disabled,
|
||||
be sure to test if this affects speed!
|
||||
with define RENDER_USE_ADVANCED_SCALERS==0 most simple
|
||||
scalers are disabled as well, some graphics modes won't
|
||||
work due to reduced cache sizes
|
||||
gain: ~2mb with RENDER_USE_ADVANCED_SCALERS==1
|
||||
~5mb with RENDER_USE_ADVANCED_SCALERS==0
|
||||
- in dos_system.h reduce the drive cache entries:
|
||||
#define MAX_OPENDIRS 256
|
||||
drawback: some apps might not work whith large directory trees
|
||||
gain: ~1mb per mounted drive
|
||||
- in vga.h reduce the size of the emulated graphics memory:
|
||||
#define VGA_MEMORY (1*1024*1024)
|
||||
drawback: some graphics modes won't work then
|
||||
gain: reduces memory requirements about 1mb
|
||||
TODO: remove the respective svga modes, adapt some svga registers
|
||||
- remove the GUS emulation (gus.cpp, especially GUSRam[1024*1024] )
|
||||
drawback: no gravis ultrasound
|
||||
gain: reduces memory requirements about 1mb
|
||||
|
||||
If speed is a constraint:
|
||||
- see if the simple core is faster, possibly remove the normal core
|
||||
set the simple core as default
|
||||
drawback: one game is known to not work with the simple core;
|
||||
the simple core does only work for games which don't use paging
|
||||
(when paging is requested the normal core is used automatically)
|
||||
gain: the simple core should be somewhat faster
|
||||
TODO: add possibility to easily remove the normal core, use fullcore fallback
|
||||
- raise the default frameskip value
|
||||
drawback: minor graphics smoothness loss for some games (video playback)
|
||||
gain: reduces graphics load
|
Loading…
Add table
Reference in a new issue