Difference between revisions of "Defines"

From MSX Game Library

 
(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
== Build ==
 
== Build ==
 +
These options are determined by the project configuration (<tt>project_config.js</tt>) for the [[build tool]].
  
 
=== TARGET ===
 
=== TARGET ===
''Defined by the build tool''
 
 
 
Values:
 
Values:
TARGET_BIN ................... BASIC binary program
+
<syntaxhighlight lang="txt">
TARGET_ROM16 ................. 16KB ROM in page 1
+
TARGET_BIN ................... BASIC binary program (starting at 8000h)
TARGET_ROM16P2 ............... 16KB ROM in page 2
+
TARGET_BIN_USR ............... BASIC USR binary driver (starting at C000h)
TARGET_ROM32 ................. 32KB ROM in page 1-2
+
TARGET_DOS1 .................. MSX-DOS 1 program (starting at 0100h)
TARGET_ROM32P0 ............... 32KB ROM in page 0-1
+
TARGET_DOS2 .................. MSX-DOS 2 program (starting at 0100h)
TARGET_ROM48 ................. 48KB ROM in page 0-2
+
TARGET_DOS0 .................. Direct program boot from disk (starting at 0100h)
TARGET_DOS ................... MSX-DOS program
+
TARGET_ROM_8K ................ 8 KB ROM in page 1 (4000h ~ 5FFFh)
TARGET_DOSARG ................ MSX-DOS program (using command line arguments)
+
TARGET_ROM_8K_P2 ............. 8 KB ROM in page 2 (8000h ~ 9FFFh)
 
+
TARGET_ROM_16K ............... 16 KB ROM in page 1 (4000h ~ 7FFFh)
 +
TARGET_ROM_16K_P2 ............ 16 KB ROM in page 2 (8000h ~ BFFFh)
 +
TARGET_ROM_32K ............... 32 KB ROM in page 1&2 (4000h ~ BFFFh)
 +
TARGET_ROM_48K ............... 48 KB ROM in page 0-2 (0000h ~ BFFFh)
 +
TARGET_ROM_48K_ISR ........... 48 KB ROM in page 0-2 (0000h ~ BFFFh) with ISR replacement
 +
TARGET_ROM_64K ............... 64 KB ROM in page 0-3 (0000h ~ FFFFh)
 +
TARGET_ROM_64K_ISR ........... 64 KB ROM in page 0-3 (0000h ~ FFFFh) with ISR replacement
 +
TARGET_ROM_ASCII8_<size> ..... ASCII-8: 8 KB segments for a total of 64 KB to 2 MB
 +
TARGET_ROM_ASCII16_<size> .... ASCII-16: 16 KB segments for a total of 64 KB to 4 MB
 +
TARGET_ROM_KONAMI_<size> ..... Konami MegaROM (aka Konami4): 8 KB segments for a total of 64 KB to 2 MB
 +
TARGET_ROM_KONAMI_SCC_<size> . Konami MegaROM SCC (aka Konami5): 8 KB segments for a total of 64 KB to 2 MB
 +
TARGET_ROM_NEO8_<size> ....... NEO-8: 8 KB segments for a total of 1 MB to 32 MB
 +
TARGET_ROM_NEO16_<size> ...... NEO-16: 16 KB segments for a total of 1 MB to 64 MB
 +
</syntaxhighlight>
  
 
=== TARGET_TYPE ===
 
=== TARGET_TYPE ===
''Defined by the build tool''
 
 
 
Values:
 
Values:
TARGET_TYPE_BIN .............. BASIC binary program
+
<syntaxhighlight lang="txt">
TARGET_TYPE_ROM .............. ROM
+
TARGET_TYPE_BIN .............. BASIC binary program
TARGET_TYPE_DOS .............. MSX-DOS program
+
TARGET_TYPE_ROM .............. ROM
 +
TARGET_TYPE_DOS .............. MSX-DOS program
 +
</syntaxhighlight>
  
 
=== MSX_VERSION ===
 
=== MSX_VERSION ===
 
 
Values:
 
Values:
MSX_1 ........................ MSX
+
<syntaxhighlight lang="txt">
MSX_2 ........................ MSX 2
+
MSX_1 ........................ MSX 1
MSX_2Plus .................... MSX 2+
+
MSX_2 ........................ MSX 2
MSX_TurboR ................... MSX Turbo-R
+
MSX_12 ....................... MSX 1 and 2 (support each)
 +
MSX_2K ....................... Korean MSX 2 (SC9 support)
 +
MSX_2P ....................... MSX 2+
 +
MSX_22P ...................... MSX 2 and 2+ (support each)
 +
MSX_122P ..................... MSX 1, 2 and 2+ (support each)
 +
MSX_0 ........................ MSX 0 (MSX 2+)
 +
MSX_TR ....................... MSX turbo R
 +
MSX_3 ........................ MSX 3
 +
</syntaxhighlight>
  
== Bios Module ==
+
== Modules ==
 +
Each [[modules]] can have their own defines grouped in the library configuration file (<tt>msxgl_config.h</tt>).
  
=== RENDER_MODE ===
+
{{:Modules}}
RENDER_VDP ................... Use direct access to VDP registers
 
RENDER_BIOS .................. Use BIOS routines
 

Latest revision as of 19:52, 12 January 2024

Build

These options are determined by the project configuration (project_config.js) for the build tool.

TARGET

Values:

TARGET_BIN ................... BASIC binary program (starting at 8000h)
TARGET_BIN_USR ............... BASIC USR binary driver (starting at C000h)
TARGET_DOS1 .................. MSX-DOS 1 program (starting at 0100h)
TARGET_DOS2 .................. MSX-DOS 2 program (starting at 0100h)
TARGET_DOS0 .................. Direct program boot from disk (starting at 0100h)
TARGET_ROM_8K ................ 8 KB ROM in page 1 (4000h ~ 5FFFh)
TARGET_ROM_8K_P2 ............. 8 KB ROM in page 2 (8000h ~ 9FFFh)
TARGET_ROM_16K ............... 16 KB ROM in page 1 (4000h ~ 7FFFh)
TARGET_ROM_16K_P2 ............ 16 KB ROM in page 2 (8000h ~ BFFFh)
TARGET_ROM_32K ............... 32 KB ROM in page 1&2 (4000h ~ BFFFh)
TARGET_ROM_48K ............... 48 KB ROM in page 0-2 (0000h ~ BFFFh)
TARGET_ROM_48K_ISR ........... 48 KB ROM in page 0-2 (0000h ~ BFFFh) with ISR replacement
TARGET_ROM_64K ............... 64 KB ROM in page 0-3 (0000h ~ FFFFh)
TARGET_ROM_64K_ISR ........... 64 KB ROM in page 0-3 (0000h ~ FFFFh) with ISR replacement
TARGET_ROM_ASCII8_<size> ..... ASCII-8: 8 KB segments for a total of 64 KB to 2 MB
TARGET_ROM_ASCII16_<size> .... ASCII-16: 16 KB segments for a total of 64 KB to 4 MB
TARGET_ROM_KONAMI_<size> ..... Konami MegaROM (aka Konami4): 8 KB segments for a total of 64 KB to 2 MB
TARGET_ROM_KONAMI_SCC_<size> . Konami MegaROM SCC (aka Konami5): 8 KB segments for a total of 64 KB to 2 MB
TARGET_ROM_NEO8_<size> ....... NEO-8: 8 KB segments for a total of 1 MB to 32 MB
TARGET_ROM_NEO16_<size> ...... NEO-16: 16 KB segments for a total of 1 MB to 64 MB

TARGET_TYPE

Values:

TARGET_TYPE_BIN .............. BASIC binary program
TARGET_TYPE_ROM .............. ROM
TARGET_TYPE_DOS .............. MSX-DOS program

MSX_VERSION

Values:

MSX_1 ........................ MSX 1
MSX_2 ........................ MSX 2
MSX_12 ....................... MSX 1 and 2 (support each)
MSX_2K ....................... Korean MSX 2 (SC9 support)
MSX_2P ....................... MSX 2+
MSX_22P ...................... MSX 2 and 2+ (support each)
MSX_122P ..................... MSX 1, 2 and 2+ (support each)
MSX_0 ........................ MSX 0 (MSX 2+)
MSX_TR ....................... MSX turbo R
MSX_3 ........................ MSX 3

Modules

Each modules can have their own defines grouped in the library configuration file (msxgl_config.h).

Core:

  • bios (MSX BIOS)
  • dos (MSX-DOS 1 & 2)
  • input (Joystick, keyboard and mouse)
  • math (Random and fast computation)
  • memory (Heap or dynamic allocator)
  • print (Display text)
  • string
  • system (Low-level features)
  • vdp (Video chip)

Gameplay:

Graphic:

Tools:

Devices:

Audio chips:

Audio players:

Compression:

Network:

Helpers: