Merge pull request #2013 from jriwanek-forks/isamem
Initial Boca Research BocaRAM/AT support
This commit is contained in:
@@ -130,6 +130,7 @@ cmake_dependent_option(VNC "VNC renderer"
|
||||
cmake_dependent_option(XL24 "ATI VGA Wonder XL24 (ATI-28800-6)" ON "DEV_BRANCH" OFF)
|
||||
cmake_dependent_option(ISAMEM_RAMPAGE "AST Rampage" ON "DEV_BRANCH" OFF)
|
||||
cmake_dependent_option(ISAMEM_IAB "Intel Above Board" ON "DEV_BRANCH" OFF)
|
||||
cmake_dependent_option(ISAMEM_BRAT "BocaRAM/AT" ON "DEV_BRANCH" OFF)
|
||||
|
||||
# Determine the build type
|
||||
set(RELEASE_BUILD OFF)
|
||||
|
@@ -29,4 +29,8 @@ endif()
|
||||
|
||||
if(ISAMEM_IAB)
|
||||
target_compile_definitions(dev PRIVATE USE_ISAMEM_IAB)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(ISAMEM_BRAT)
|
||||
target_compile_definitions(dev PRIVATE USE_ISAMEM_BRAT)
|
||||
endif()
|
||||
|
@@ -94,6 +94,7 @@
|
||||
#define ISAMEM_EV159_CARD 10
|
||||
#define ISAMEM_RAMPAGEXT_CARD 11
|
||||
#define ISAMEM_ABOVEBOARD_CARD 12
|
||||
#define ISAMEM_BRAT_CARD 13
|
||||
|
||||
#define ISAMEM_DEBUG 0
|
||||
|
||||
@@ -451,6 +452,7 @@ dev->frame_addr = 0xE0000;
|
||||
|
||||
case ISAMEM_RAMPAGEXT_CARD: /* AST RAMpage/XT */
|
||||
case ISAMEM_ABOVEBOARD_CARD: /* Intel AboveBoard */
|
||||
case ISAMEM_BRAT_CARD: /* BocaRAM/AT */
|
||||
dev->base_addr = device_get_config_hex16("base");
|
||||
dev->total_size = device_get_config_int("size");
|
||||
dev->start_addr = device_get_config_int("start");
|
||||
@@ -984,6 +986,96 @@ static const device_t ev159_device = {
|
||||
};
|
||||
|
||||
|
||||
#ifdef USE_ISAMEM_BRAT
|
||||
static const device_config_t brat_config[] =
|
||||
{
|
||||
{
|
||||
"base", "Address", CONFIG_HEX16, "", 0x0258, "", { 0 },
|
||||
{
|
||||
{
|
||||
"208H", 0x0208
|
||||
},
|
||||
{
|
||||
"218H", 0x0218
|
||||
},
|
||||
{
|
||||
"258H", 0x0258
|
||||
},
|
||||
{
|
||||
"268H", 0x0268
|
||||
},
|
||||
{
|
||||
""
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
"frame", "Frame Address", CONFIG_HEX20, "", 0, "", { 0 },
|
||||
{
|
||||
{
|
||||
"Disabled", 0x00000
|
||||
},
|
||||
{
|
||||
"D000H", 0xD0000
|
||||
},
|
||||
{
|
||||
"E000H", 0xE0000
|
||||
},
|
||||
{
|
||||
""
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
"width", "I/O Width", CONFIG_SELECTION, "", 8, "", { 0 },
|
||||
{
|
||||
{
|
||||
"8-bit", 8
|
||||
},
|
||||
{
|
||||
"16-bit", 16
|
||||
},
|
||||
{
|
||||
""
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
"speed", "Transfer Speed", CONFIG_SELECTION, "", 0, "", { 0 },
|
||||
{
|
||||
{
|
||||
"Standard", 0
|
||||
},
|
||||
{
|
||||
"High-Speed", 1
|
||||
},
|
||||
{
|
||||
""
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"size", "Memory Size", CONFIG_SPINNER, "", 128,
|
||||
"",
|
||||
{ 0, 8192, 512 },
|
||||
{ 0 }
|
||||
},
|
||||
{
|
||||
"", "", -1
|
||||
}
|
||||
};
|
||||
|
||||
static const device_t brat_device = {
|
||||
"BocaRAM/AT",
|
||||
DEVICE_ISA,
|
||||
ISAMEM_BRAT_CARD,
|
||||
isamem_init, isamem_close, NULL,
|
||||
{ NULL }, NULL, NULL,
|
||||
brat_config
|
||||
};
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef USE_ISAMEM_RAMPAGE
|
||||
static const device_config_t rampage_config[] =
|
||||
{
|
||||
|
@@ -75,6 +75,9 @@ ifeq ($(DEV_BUILD), y)
|
||||
ifndef ISAMEM_IAB
|
||||
ISAMEM_IAB := y
|
||||
endif
|
||||
ifndef ISAMEM_BRAT
|
||||
ISAMEM_BRAT := y
|
||||
endif
|
||||
ifndef OLIVETTI
|
||||
OLIVETTI := y
|
||||
endif
|
||||
@@ -130,6 +133,9 @@ else
|
||||
ifndef ISAMEM_IAB
|
||||
ISAMEM_IAB := n
|
||||
endif
|
||||
ifndef ISAMEM_BRAT
|
||||
ISAMEM_BRAT := n
|
||||
endif
|
||||
ifndef OLIVETTI
|
||||
OLIVETTI := n
|
||||
endif
|
||||
@@ -470,6 +476,10 @@ ifeq ($(ISAMEM_IAB), y)
|
||||
OPTS += -DUSE_ISAMEM_IAB
|
||||
endif
|
||||
|
||||
ifeq ($(ISAMEM_BRAT), y)
|
||||
OPTS += -DUSE_ISAMEM_BRAT
|
||||
endif
|
||||
|
||||
ifeq ($(OLIVETTI), y)
|
||||
OPTS += -DUSE_OLIVETTI
|
||||
DEVBROBJ += olivetti_eva.o
|
||||
|
Reference in New Issue
Block a user