src/mess/video/super80.c
| r9181 | r9182 | |
| 303 | 303 | static UINT8 framecnt=0; |
| 304 | 304 | static UINT8 speed,flash; |
| 305 | 305 | static UINT16 cursor; |
| 306 | static UINT8 *videoram; |
| 307 | static UINT8 *colorram; |
| 308 | static UINT8 *pcgram; |
| 306 | 309 | |
| 307 | 310 | READ8_HANDLER( super80v_low_r ) |
| 308 | 311 | { |
| 309 | 312 | super80_state *state = space->machine->driver_data<super80_state>(); |
| 310 | 313 | |
| 311 | 314 | if (state->super80_shared & 4) |
| 312 | | { |
| 313 | | UINT8 *videoram = state->videoram; |
| 314 | 315 | return videoram[offset]; |
| 315 | | } |
| 316 | 316 | else |
| 317 | | { |
| 318 | | UINT8 *colorram = state->colorram; |
| 319 | 317 | return colorram[offset]; |
| 320 | | } |
| 321 | 318 | } |
| 322 | 319 | |
| 323 | 320 | WRITE8_HANDLER( super80v_low_w ) |
| r9181 | r9182 | |
| 325 | 322 | super80_state *state = space->machine->driver_data<super80_state>(); |
| 326 | 323 | |
| 327 | 324 | if (state->super80_shared & 4) |
| 328 | | { |
| 329 | | UINT8 *videoram = state->videoram; |
| 330 | 325 | videoram[offset] = data; |
| 331 | | } |
| 332 | 326 | else |
| 333 | | { |
| 334 | | UINT8 *colorram = state->colorram; |
| 335 | 327 | colorram[offset] = data; |
| 336 | | } |
| 337 | 328 | } |
| 338 | 329 | |
| 339 | 330 | READ8_HANDLER( super80v_high_r ) |
| r9181 | r9182 | |
| 341 | 332 | super80_state *state = space->machine->driver_data<super80_state>(); |
| 342 | 333 | |
| 343 | 334 | if (~state->super80_shared & 4) |
| 344 | | { |
| 345 | | UINT8 *colorram = state->colorram; |
| 346 | | return colorram[0x800+offset]; |
| 347 | | } |
| 335 | return colorram[0x800 | offset]; |
| 348 | 336 | else |
| 349 | | { |
| 350 | | UINT8 *pcgram = state->pcgram; |
| 351 | | if (state->super80_shared & 0x10) |
| 352 | | return pcgram[0x800+offset]; |
| 353 | | else |
| 354 | | return pcgram[offset]; |
| 355 | | } |
| 337 | if (state->super80_shared & 0x10) |
| 338 | return pcgram[0x800 | offset]; |
| 339 | else |
| 340 | return pcgram[offset]; |
| 356 | 341 | } |
| 357 | 342 | |
| 358 | 343 | WRITE8_HANDLER( super80v_high_w ) |
| r9181 | r9182 | |
| 360 | 345 | super80_state *state = space->machine->driver_data<super80_state>(); |
| 361 | 346 | |
| 362 | 347 | if (~state->super80_shared & 4) |
| 363 | | { |
| 364 | | UINT8 *colorram = state->colorram; |
| 365 | | colorram[offset+0x800] = data; |
| 366 | | } |
| 348 | colorram[0x800 | offset] = data; |
| 367 | 349 | else |
| 368 | 350 | { |
| 369 | | UINT8 *videoram = state->videoram; |
| 370 | | videoram[offset+0x800] = data; |
| 351 | videoram[0x800 | offset] = data; |
| 371 | 352 | |
| 372 | 353 | if (state->super80_shared & 0x10) |
| 373 | | { |
| 374 | | UINT8 *pcgram = state->pcgram; |
| 375 | | pcgram[0x800+offset] = data; |
| 376 | | } |
| 354 | pcgram[0x800 | offset] = data; |
| 377 | 355 | } |
| 378 | 356 | } |
| 379 | 357 | |
| r9181 | r9182 | |
| 434 | 412 | { |
| 435 | 413 | mc6845 = machine->device("crtc"); |
| 436 | 414 | FNT = memory_region(machine, "gfx1"); |
| 415 | pcgram = memory_region(machine, "maincpu")+0xf000; |
| 416 | videoram = memory_region(machine, "videoram"); |
| 417 | colorram = memory_region(machine, "colorram"); |
| 437 | 418 | } |
| 438 | 419 | |
| 439 | 420 | VIDEO_UPDATE( super80v ) |
| r9181 | r9182 | |
| 451 | 432 | MC6845_UPDATE_ROW( super80v_update_row ) |
| 452 | 433 | { |
| 453 | 434 | super80_state *state = device->machine->driver_data<super80_state>(); |
| 454 | | UINT8 *videoram = state->videoram; |
| 455 | | UINT8 *pcgram = state->pcgram; |
| 456 | | UINT8 *colorram = state->colorram; |
| 457 | 435 | UINT8 chr,col,gfx,fg,bg=0; |
| 458 | 436 | UINT16 mem,x; |
| 459 | 437 | UINT16 *p = BITMAP_ADDR16(bitmap, y, 0); |
src/mess/drivers/zx.c
| r9181 | r9182 | |
| 569 | 569 | COMP( 1984, pc8300, zx81, 0, pc8300, pc8300, zx, "Your Computer", "PC8300", 0 ) |
| 570 | 570 | COMP( 1983, pow3000, zx81, 0, pow3000, pow3000, zx, "Creon Enterprises", "Power 3000", 0 ) |
| 571 | 571 | COMP( 1982, lambda, zx81, 0, pow3000, pow3000, zx, "Lambda Electronics Ltd", "Lambda 8300", 0 ) |
| 572 | | COMP( 1997, zx97, zx81, 0, zx81, zx81, zx, "Wilf Rigter", "ZX97", GAME_NOT_WORKING ) |
| 572 | COMP( 1997, zx97, zx81, 0, zx81, zx81, zx, "Wilf Rigter", "ZX97", GAME_NOT_WORKING | GAME_UNOFFICIAL ) |
src/mess/drivers/super80.c
| r9181 | r9182 | |
| 226 | 226 | AM_RANGE(0x0000, 0x3fff) AM_RAMBANK("bank1") |
| 227 | 227 | AM_RANGE(0x4000, 0xbfff) AM_RAM |
| 228 | 228 | AM_RANGE(0xc000, 0xefff) AM_ROM |
| 229 | | AM_RANGE(0xf000, 0xf7ff) AM_READWRITE(super80v_low_r, super80v_low_w) AM_BASE_MEMBER(super80_state, pcgram) |
| 229 | AM_RANGE(0xf000, 0xf7ff) AM_READWRITE(super80v_low_r, super80v_low_w) |
| 230 | 230 | AM_RANGE(0xf800, 0xffff) AM_READWRITE(super80v_high_r, super80v_high_w) |
| 231 | 231 | ADDRESS_MAP_END |
| 232 | 232 | |
| r9181 | r9182 | |
| 824 | 824 | ROM_LOAD("super80.u33", 0xd000, 0x1000, CRC(cf8020a8) SHA1(2179a61f80372cd49e122ad3364773451531ae85) ) |
| 825 | 825 | ROM_LOAD("super80.u42", 0xe000, 0x1000, CRC(a1c6cb75) SHA1(d644ca3b399c1a8902f365c6095e0bbdcea6733b) ) |
| 826 | 826 | ROM_LOAD("s80hmce.ic24", 0xf000, 0x0800, CRC(a6488a1e) SHA1(7ba613d70a37a6b738dcd80c2bb9988ff1f011ef) ) |
| 827 | |
| 828 | ROM_REGION( 0x1000, "videoram", ROMREGION_ERASEFF ) |
| 827 | 829 | ROM_END |
| 828 | 830 | |
| 829 | 831 | ROM_START( super80v ) |
| r9181 | r9182 | |
| 832 | 834 | ROM_LOAD("s80-v37.u33", 0xd000, 0x1000, CRC(812ad777) SHA1(04f355bea3470a7d9ea23bb2811f6af7d81dc400) ) |
| 833 | 835 | ROM_LOAD("s80-v37.u42", 0xe000, 0x1000, CRC(e02e736e) SHA1(57b0264c805da99234ab5e8e028fca456851a4f9) ) |
| 834 | 836 | ROM_LOAD("s80hmce.ic24", 0xf000, 0x0800, CRC(a6488a1e) SHA1(7ba613d70a37a6b738dcd80c2bb9988ff1f011ef) ) |
| 837 | |
| 838 | ROM_REGION( 0x1000, "videoram", ROMREGION_ERASEFF ) |
| 839 | ROM_REGION( 0x1000, "colorram", ROMREGION_ERASEFF ) |
| 835 | 840 | ROM_END |
| 836 | 841 | |
| 837 | 842 | /* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME */ |
| 838 | 843 | COMP( 1981, super80, 0, 0, super80, super80, super80, "Dick Smith Electronics","Super-80 (V1.2)" , 0) |
| 839 | 844 | COMP( 1981, super80d, super80, 0, super80d, super80d, super80, "Dick Smith Electronics","Super-80 (V2.2)" , 0) |
| 840 | | COMP( 1981, super80e, super80, 0, super80e, super80d, super80, "Dick Smith Electronics","Super-80 (El Graphix 4)" , 0) |
| 841 | | COMP( 1981, super80m, super80, 0, super80m, super80m, super80, "Dick Smith Electronics","Super-80 (8R0)" , 0) |
| 842 | | COMP( 1981, super80r, super80, 0, super80r, super80r, super80v, "Dick Smith Electronics","Super-80 (with VDUEB)" , 0) |
| 843 | | COMP( 1981, super80v, super80, 0, super80v, super80v, super80v, "Dick Smith Electronics","Super-80 (with enhanced VDUEB)" , 0) |
| 845 | COMP( 1981, super80e, super80, 0, super80e, super80d, super80, "Dick Smith Electronics","Super-80 (El Graphix 4)" , GAME_UNOFFICIAL) |
| 846 | COMP( 1981, super80m, super80, 0, super80m, super80m, super80, "Dick Smith Electronics","Super-80 (8R0)" , GAME_UNOFFICIAL) |
| 847 | COMP( 1981, super80r, super80, 0, super80r, super80r, super80v, "Dick Smith Electronics","Super-80 (with VDUEB)" , GAME_UNOFFICIAL) |
| 848 | COMP( 1981, super80v, super80, 0, super80v, super80v, super80v, "Dick Smith Electronics","Super-80 (with enhanced VDUEB)" , GAME_UNOFFICIAL) |