Difference between revisions of "NEO mapper/Extension"

From MSX Game Library

< NEO mapper

Line 44: Line 44:
  
 
=== Functions ===
 
=== Functions ===
==== 0x01: Cartridge information ====
+
==== 0x00: Cartridge information ====
When activated, any read access to the given bank will return the cartridge information (8 KB, mirrored on NEO-16).²
+
When activated, any read access to the given bank will return the cartridge information (8 KB, mirrored on NEO-16).
 
{| class="wikitable"
 
{| class="wikitable"
 
|+ PARAMETER
 
|+ PARAMETER
 
|-
 
|-
! 7 || 6 || 5 || 4 || 3 || 2 || 1 || 0
+
! 8 || 7 || 6 || 5 || 4 || 3 || 2 || 1
 
|-
 
|-
 
|style="background-color:#BBB;"| 0
 
|style="background-color:#BBB;"| 0
Line 57: Line 57:
 
|style="background-color:#BBB;"| 0
 
|style="background-color:#BBB;"| 0
 
|style="background-color:#AAF;" colspan="5"| Bank
 
|style="background-color:#AAF;" colspan="5"| Bank
 +
|}
  
 +
==== 0x01: Cartridge configuration ====
 +
 +
==== 0x04: Activate SRAM/FRAM ====
 +
When activated, any read/write access to the specified bank (set as a parameter) is redirected to the given segment of the SRAM/FRAM.
 +
SRAM/FRAM are accessed via 8 KB segments (on the NEO-16, the segment is mirrored).
 +
Up to 16 segments can be accessed, for a total of 128 KB.
 +
 +
{| class="wikitable"
 +
|+ PARAMETER
 +
|-
 +
! 8 || 7 || 6 || 5 || 4 || 3 || 2 || 1
 +
|-
 +
|style="background-color:#AAF;" colspan="4"| Segment
 +
|style="background-color:#BBB;"| 0
 +
|style="background-color:#AAF;" colspan="5"| Bank
 
|}
 
|}

Revision as of 19:16, 6 April 2026

⚠️ This page is still in the proposal stage and should not yet be considered an official specification.

Proposal for an extension to the NEO mapper format.

Specifications

Principles

Any write operation to the NEO mapper with data bit 7 set to 1 and address bit 0 set to 1 is considered an access to extended features. All other write operations should be considered normal access to the mapper's bank register.

The data contains:

  • The number of an extended function in the mapper
  • A bit indicating whether the function should be enabled or disabled

The address contains an 8-bit parameter to be passed to the function.

ADDRESS
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Page Bank 0 0 Parameter 1
DATA
7 6 5 4 3 2 1 0
1 A 0 Function

Functions

0x00: Cartridge information

When activated, any read access to the given bank will return the cartridge information (8 KB, mirrored on NEO-16).

PARAMETER
8 7 6 5 4 3 2 1
0 0 0 0 0 Bank

0x01: Cartridge configuration

0x04: Activate SRAM/FRAM

When activated, any read/write access to the specified bank (set as a parameter) is redirected to the given segment of the SRAM/FRAM. SRAM/FRAM are accessed via 8 KB segments (on the NEO-16, the segment is mirrored). Up to 16 segments can be accessed, for a total of 128 KB.

PARAMETER
8 7 6 5 4 3 2 1
Segment 0 Bank