src/mess/drivers/iq151.c
| r12231 | r12232 | |
| 120 | 120 | static ADDRESS_MAP_START(iq151_mem, AS_PROGRAM, 8, iq151_state) |
| 121 | 121 | ADDRESS_MAP_UNMAP_HIGH |
| 122 | 122 | AM_RANGE( 0x0000, 0x07ff ) AM_RAMBANK("boot") |
| 123 | | AM_RANGE( 0x0800, 0xdfff ) AM_RAM AM_REGION("maincpu", 0x0800) // puts FF into C800 so we can boot |
| 124 | | AM_RANGE( 0xe000, 0xe7ff ) AM_ROM |
| 125 | | AM_RANGE( 0xe800, 0xefff ) AM_RAM AM_BASE(m_p_videoram) |
| 123 | AM_RANGE( 0x0800, 0x7fff ) AM_RAM |
| 124 | AM_RANGE( 0xe800, 0xefff ) AM_RAM AM_BASE(m_p_videoram) // on Video 32/64 cartridge |
| 126 | 125 | AM_RANGE( 0xf000, 0xffff ) AM_ROM |
| 127 | 126 | ADDRESS_MAP_END |
| 128 | 127 | |
| r12231 | r12232 | |
| 183 | 182 | PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("L") PORT_CODE(KEYCODE_L) PORT_CHAR('l') PORT_CHAR('L') |
| 184 | 183 | PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME(". >") PORT_CODE(KEYCODE_STOP) PORT_CHAR('.') PORT_CHAR('>') |
| 185 | 184 | PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Enter") PORT_CODE(KEYCODE_ENTER) PORT_CHAR(13) |
| 186 | | PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_UNUSED) // 0x1d |
| 187 | | PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_UNUSED) // 0x1c |
| 185 | PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Del") PORT_CODE(KEYCODE_DEL) PORT_CHAR(UCHAR_MAMEKEY(DEL)) |
| 186 | PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Ins") PORT_CODE(KEYCODE_INSERT) PORT_CHAR(UCHAR_MAMEKEY(INSERT)) |
| 188 | 187 | PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_UNUSED) // 0x01 |
| 189 | 188 | |
| 190 | 189 | PORT_START("X5") |
| r12231 | r12232 | |
| 194 | 193 | PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("/ ?") PORT_CODE(KEYCODE_SLASH) PORT_CHAR('/') PORT_CHAR('?') |
| 195 | 194 | PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("\\ |") PORT_CODE(KEYCODE_BACKSLASH) PORT_CHAR('\\') PORT_CHAR('|') |
| 196 | 195 | PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_UNUSED) // 0x1e |
| 197 | | PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Backspace") PORT_CODE(KEYCODE_BACKSPACE) PORT_CHAR(8) |
| 196 | PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Left") PORT_CODE(KEYCODE_LEFT) PORT_CHAR(UCHAR_MAMEKEY(LEFT)) |
| 198 | 197 | PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_UNUSED) // 0x02 |
| 199 | 198 | |
| 200 | 199 | PORT_START("X6") |
| 201 | 200 | PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("^ ~") PORT_CODE(KEYCODE_EQUALS) PORT_CHAR('^') PORT_CHAR('~') |
| 202 | 201 | PORT_BIT(0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("[ {") PORT_CODE(KEYCODE_OPENBRACE) PORT_CHAR('[') PORT_CHAR('{') |
| 203 | 202 | PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("] }") PORT_CODE(KEYCODE_CLOSEBRACE) PORT_CHAR(']') PORT_CHAR('}') |
| 204 | | PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_UNUSED) // 0x1a |
| 203 | PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Down") PORT_CODE(KEYCODE_DOWN) PORT_CHAR(UCHAR_MAMEKEY(DOWN)) |
| 205 | 204 | PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_UNUSED) // 0x05 |
| 206 | 205 | PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_UNUSED) // 0x0b |
| 207 | | PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_UNUSED) // 0x0c |
| 206 | PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Home") PORT_CODE(KEYCODE_HOME) PORT_CHAR(UCHAR_MAMEKEY(HOME)) |
| 208 | 207 | PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_UNUSED) // 0x04 |
| 209 | 208 | |
| 210 | 209 | PORT_START("X7") |
| r12231 | r12232 | |
| 213 | 212 | PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME(": *") PORT_CODE(KEYCODE_QUOTE) PORT_CHAR(':') PORT_CHAR('*') |
| 214 | 213 | PORT_BIT(0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Space") PORT_CODE(KEYCODE_SPACE) PORT_CHAR(' ') |
| 215 | 214 | PORT_BIT(0x10, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("_") PORT_CODE(KEYCODE_END) // its actually some sort of graphic character |
| 216 | | PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_UNUSED) // 0x19 |
| 217 | | PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_UNUSED) // 0x18 |
| 215 | PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Up") PORT_CODE(KEYCODE_UP) PORT_CHAR(UCHAR_MAMEKEY(UP)) |
| 216 | PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_KEYBOARD) PORT_NAME("Right") PORT_CODE(KEYCODE_RIGHT) PORT_CHAR(UCHAR_MAMEKEY(RIGHT)) |
| 218 | 217 | PORT_BIT(0x80, IP_ACTIVE_HIGH, IPT_UNUSED) // 0x03 |
| 219 | 218 | |
| 220 | 219 | PORT_START("X8") |
| r12231 | r12232 | |
| 324 | 323 | |
| 325 | 324 | return IMAGE_INIT_PASS; |
| 326 | 325 | } |
| 326 | else if (!strcmp(cart_type, "BASICG")) |
| 327 | { |
| 328 | // BASIC-G cartridge |
| 329 | address_space *space = image.device().machine().device("maincpu")->memory().space(AS_PROGRAM); |
| 330 | space->install_rom(0xb000, 0xbfff, image.get_software_region("rom_a")); |
| 331 | space->install_rom(0xc800, 0xe7ff, image.get_software_region("rom_b")); |
| 332 | return IMAGE_INIT_PASS; |
| 333 | } |
| 327 | 334 | else |
| 328 | 335 | { |
| 329 | 336 | image.seterror(IMAGE_ERROR_UNSPECIFIED, "Unknown cartridge type"); |