Previous 15994 Revisions Next

r9748 Tuesday 7th December, 2010 at 12:08:08 UTC by Robbbert
[SAPI1] sapizps3 - added some info
[src/mess/drivers]sapi1.c
[src/mess/includes]sapi1.h
[src/mess/machine]sapi1.c

src/mess/machine/sapi1.c
r9747r9748
4444   state->keyboard_mask = (data ^ 0xff ) & 0x1f;
4545}
4646
47
48MACHINE_RESET( sapizps3 )
49{
50   sapi1_state *state = machine->driver_data<sapi1_state>();
51   state->keyboard_mask = 0;
52   memory_set_bank(machine, "bank1", 1);
53}
54
55DRIVER_INIT( sapizps3 )
56{
57   UINT8 *RAM = memory_region(machine, "maincpu");
58   memory_configure_bank(machine, "bank1", 0, 2, &RAM[0x0000], 0xf800);
59}
src/mess/includes/sapi1.h
r9747r9748
2222/*----------- defined in machine/sapi1.c -----------*/
2323
2424extern DRIVER_INIT( sapi1 );
25extern DRIVER_INIT( sapizps3 );
2526extern MACHINE_START( sapi1 );
2627extern MACHINE_RESET( sapi1 );
28extern MACHINE_RESET( sapizps3 );
2729
2830extern READ8_HANDLER (sapi1_keyboard_r );
2931extern WRITE8_HANDLER(sapi1_keyboard_w );
src/mess/drivers/sapi1.c
r9747r9748
44
55        09/09/2008 Preliminary driver.
66
7        07/12/2010 Added some code to allow sapizps3 to read its rom.
8        With no available docs, the i/o ports are a guess. The ram
9        allocation is based on the actions of the various bios roms.
10        Port 25 is used as a jump vector. in a,(25); ld l,a; jp(hl).
11        According to wikipedia, e800+ is the videoram area, and the
12        number of columns is 64.
13
714****************************************************************************/
815
916
r9747r9748
1320#include "includes/sapi1.h"
1421#include "devices/messram.h"
1522
23static UINT8 sapizps3_25;
24
25/* switch out the rom shadow */
26static WRITE8_HANDLER( sapizps3_00_w )
27{
28   memory_set_bank(space->machine, "bank1", 0);
29}
30
31/* to stop execution in random ram */
32static READ8_HANDLER( sapizps3_25_r )
33{
34   return sapizps3_25;
35}
36
37static WRITE8_HANDLER( sapizps3_25_w )
38{
39   sapizps3_25 = data & 0xfc; //??
40}
41
42
43
1644/* Address maps */
1745static ADDRESS_MAP_START(sapi1_mem, ADDRESS_SPACE_PROGRAM, 8)
1846   ADDRESS_MAP_UNMAP_HIGH
r9747r9748
2856ADDRESS_MAP_END
2957
3058static ADDRESS_MAP_START( sapi1_io, ADDRESS_SPACE_IO, 8 )
31ADDRESS_MAP_UNMAP_HIGH
59   ADDRESS_MAP_UNMAP_HIGH
3260ADDRESS_MAP_END
3361
3462static ADDRESS_MAP_START(sapizps3_mem, ADDRESS_SPACE_PROGRAM, 8)
3563   ADDRESS_MAP_UNMAP_HIGH
64   AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RAMBANK("bank1")
65   AM_RANGE(0x0800, 0xe7ff) AM_RAM
66   AM_RANGE(0xe800, 0xefff) AM_RAM AM_BASE_MEMBER(sapi1_state, sapi_video_ram)
67   AM_RANGE(0xf000, 0xf7ff) AM_RAM
68   AM_RANGE(0xf800, 0xfdff) AM_ROM
69   AM_RANGE(0xfe00, 0xffff) AM_RAM
3670ADDRESS_MAP_END
3771
3872static ADDRESS_MAP_START( sapizps3_io, ADDRESS_SPACE_IO, 8 )
3973   ADDRESS_MAP_UNMAP_HIGH
4074   ADDRESS_MAP_GLOBAL_MASK(0xff)
75   AM_RANGE(0x00, 0x00) AM_WRITE(sapizps3_00_w)
76   AM_RANGE(0x25, 0x25) AM_READWRITE(sapizps3_25_r,sapizps3_25_w)
4177ADDRESS_MAP_END
4278
4379/* Input ports */
r9747r9748
115151   MDRV_PALETTE_INIT(black_and_white)
116152
117153   MDRV_VIDEO_START(sapi1)
118    MDRV_VIDEO_UPDATE(sapi1)
154   MDRV_VIDEO_UPDATE(sapi1)
119155
120156   /* internal ram */
121157   MDRV_RAM_ADD("messram")
r9747r9748
129165   MDRV_CPU_IO_MAP(sapizps3_io)
130166
131167   MDRV_MACHINE_START( sapi1 )
132   MDRV_MACHINE_RESET( sapi1 )
168   MDRV_MACHINE_RESET( sapizps3 )
133169
134170   /* video hardware */
135171   MDRV_SCREEN_ADD("screen", RASTER)
r9747r9748
143179   MDRV_PALETTE_INIT(black_and_white)
144180
145181   MDRV_VIDEO_START(sapizps3)
146    MDRV_VIDEO_UPDATE(sapizps3)
182   MDRV_VIDEO_UPDATE(sapizps3)
147183
148184   /* internal ram */
149185   MDRV_RAM_ADD("messram")
r9747r9748
153189/* ROM definition */
154190
155191ROM_START( sapi1 )
156    ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASEFF )
192   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASEFF )
157193   ROM_SYSTEM_BIOS( 0, "mb1", "MB1" )
158    ROMX_LOAD( "sapi1.rom", 0x0000, 0x1000, CRC(c6e85b01) SHA1(2a26668249c6161aef7215a1e2b92bfdf6fe3671), ROM_BIOS(1))
194   ROMX_LOAD( "sapi1.rom", 0x0000, 0x1000, CRC(c6e85b01) SHA1(2a26668249c6161aef7215a1e2b92bfdf6fe3671), ROM_BIOS(1))
159195   ROM_SYSTEM_BIOS( 1, "mb2", "MB2 (ANK-1)" )
160196   ROMX_LOAD( "mb2_4.bin", 0x0000, 0x1000, CRC(a040b3e0) SHA1(586990a07a96323741679a11ff54ad0023da87bc), ROM_BIOS(2))
161197   ROM_SYSTEM_BIOS( 2, "mb3", "MB3 (Consul)" )
r9747r9748
163199ROM_END
164200
165201ROM_START( sapizps2 )
166    ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASEFF )
202   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASEFF )
167203   ROM_SYSTEM_BIOS( 0, "v4", "MIKOS 4" )
168204   ROMX_LOAD( "36.bin", 0x0000, 0x0800, CRC(a27f340a) SHA1(d07d208fcbe428897336c17197d3e8fb52181f38), ROM_BIOS(1))
169205   ROMX_LOAD( "37.bin", 0x0800, 0x0800, CRC(30daa708) SHA1(66e990c40788ee25cf6cabd4842a78daf4fcdddd), ROM_BIOS(1))
r9747r9748
175211ROM_END
176212
177213ROM_START( sapizps3 )
178    ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASEFF )
214   ROM_REGION( 0x10000, "maincpu", ROMREGION_ERASEFF )
179215   ROM_SYSTEM_BIOS( 0, "default", "JPR-1A" )
180   ROMX_LOAD( "jpr1a.bin",     0x0000, 0x0800, CRC(3ed89786) SHA1(dcc8657b4884bfe58d114c539b733b73d038ee30), ROM_BIOS(1))
216   ROMX_LOAD( "jpr1a.bin",     0xf800, 0x0800, CRC(3ed89786) SHA1(dcc8657b4884bfe58d114c539b733b73d038ee30), ROM_BIOS(1))
181217   ROM_SYSTEM_BIOS( 1, "per", "Perina" )
182   ROMX_LOAD( "perina_1988.bin",0x0000, 0x0800, CRC(d71e8d3a) SHA1(9b3a26ea7c2f2c8a1fb10b51c1c880acc9fd806d), ROM_BIOS(2))
218   ROMX_LOAD( "perina_1988.bin",0xf800, 0x0800, CRC(d71e8d3a) SHA1(9b3a26ea7c2f2c8a1fb10b51c1c880acc9fd806d), ROM_BIOS(2))
183219   ROM_SYSTEM_BIOS( 2, "pkt1", "PKT 1" )
184   ROMX_LOAD( "pkt1.bin",       0x0000, 0x0800, CRC(ed5a2725) SHA1(3383c15f87f976400b8d0f31829e2a95236c4b6c), ROM_BIOS(3))
220   ROMX_LOAD( "pkt1.bin",       0xf800, 0x0800, CRC(ed5a2725) SHA1(3383c15f87f976400b8d0f31829e2a95236c4b6c), ROM_BIOS(3))
185221   ROM_SYSTEM_BIOS( 3, "1zmod", "JPR-1Zmod" )
186   ROMX_LOAD( "jpr1zmod.bin",    0x0000, 0x0800, CRC(69a29b07) SHA1(1cd31032954fcd7d10b1586be62db6f7597eb4f2), ROM_BIOS(4))
222   ROMX_LOAD( "jpr1zmod.bin",    0xf800, 0x0800, CRC(69a29b07) SHA1(1cd31032954fcd7d10b1586be62db6f7597eb4f2), ROM_BIOS(4))
187223ROM_END
188224/* Driver */
189225
190226/*    YEAR  NAME    PARENT  COMPAT  MACHINE     INPUT       INIT     COMPANY                  FULLNAME   FLAGS */
191COMP( 1985, sapi1,   0,      0,      sapi1,      sapi1,      sapi1,    "Tesla",                "SAPI-1 ZPS 1",    GAME_NO_SOUND)
192COMP( 1985, sapizps2,sapi1,   0,      sapi1,      sapi1,      sapi1,    "Tesla",                "SAPI-1 ZPS 2",    GAME_NOT_WORKING | GAME_NO_SOUND)
193COMP( 1985, sapizps3,sapi1,   0,      sapizps3,   sapi1,      sapi1,    "Tesla",                "SAPI-1 ZPS 3",    GAME_NOT_WORKING | GAME_NO_SOUND)
227COMP( 1985, sapi1,   0,   0,   sapi1,      sapi1,   sapi1,    "Tesla", "SAPI-1 ZPS 1",    GAME_NO_SOUND)
228COMP( 1985, sapizps2,sapi1,   0,   sapi1,      sapi1,   sapi1,    "Tesla", "SAPI-1 ZPS 2",    GAME_NOT_WORKING | GAME_NO_SOUND)
229COMP( 1985, sapizps3,sapi1,   0,   sapizps3,   sapi1,   sapizps3, "Tesla", "SAPI-1 ZPS 3",    GAME_NOT_WORKING | GAME_NO_SOUND)

Previous 15994 Revisions Next


© 1998-2018 The MESS Team