summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author angelosa <lordkale4@gmail.com>2025-07-10 18:37:43 +0200
committer angelosa <lordkale4@gmail.com>2025-07-10 18:37:46 +0200
commit20050d94189286d8dc9c3b02eb99468808c98b0a (patch)
treef546ebc011d1cad9bbe065584adcaab53123a761
parent9af5ef672f265203a010db19c612d9d6055000e7 (diff)
toshiba/pasopia7.cpp: kick off a pasopia7 cassette SW list
New software list items marked not working ------------------------------------------ pasopia7_cass: 3D Golf Simulation, Space Battle Ship, Space Shooter [archive.org]
-rw-r--r--hash/pasopia7_cass.xml54
-rw-r--r--src/mame/toshiba/pasopia7.cpp26
2 files changed, 70 insertions, 10 deletions
diff --git a/hash/pasopia7_cass.xml b/hash/pasopia7_cass.xml
new file mode 100644
index 00000000000..74fbc714e47
--- /dev/null
+++ b/hash/pasopia7_cass.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0"?>
+<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
+<!--
+license:CC0-1.0
+-->
+<softwarelist name="pasopia7_cass" description="Toshiba Pasopia 7 PA7007 cassettes">
+
+ <software name="3dgolf" supported="no">
+ <description>3D Golf Simulation</description>
+ <year>1983?</year>
+ <publisher>T&amp;E Soft</publisher>
+ <notes><![CDATA[
+Keeps ringing [DAC1BIT] when ball goes O.B.
+]]></notes>
+ <info name="alt_title" value="3Dゴルフシミュレーション"/>
+ <part name="cass1" interface="pasopia7_cass">
+ <dataarea name="cass" size="31821868">
+ <rom name="3d golf simulation.wav" size="31821868" crc="1005e6a0" sha1="538562b9c80f07b8671454cc5a2e270fec7440c9"/>
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="spacebs" supported="no">
+ <description>Space Battle Ship</description>
+ <year>1988</year>
+ <publisher>&lt;unknown&gt;</publisher>
+ <notes><![CDATA[
+Hangs once an enemy is found
+]]></notes>
+ <part name="cass1" interface="pasopia7_cass">
+ <dataarea name="cass" size="4865361">
+ <rom name="spacebattleship_(bm-1988-04).wav" size="4865361" crc="ec5299f6" sha1="55473cf086aacf90d124d775407b2315d303bfed"/>
+ </dataarea>
+ </part>
+ </software>
+
+ <software name="spacesht" supported="no">
+ <description>Space Shooter</description>
+ <year>1983</year>
+ <!-- Coverdisk? -->
+ <publisher>&lt;unknown&gt;</publisher>
+ <notes><![CDATA[
+Black screen, tight loops on PPI port B bit 6
+]]></notes>
+ <!-- Was with B&M label -->
+ <part name="cass1" interface="pasopia7_cass">
+ <dataarea name="cass" size="1686928">
+ <rom name="space shooter (io_198301).wav" size="1686928" crc="35a071e5" sha1="706b1447fd8e40f2f5520c802c63271c4de952e1"/>
+ </dataarea>
+ </part>
+ </software>
+
+
+</softwarelist>
diff --git a/src/mame/toshiba/pasopia7.cpp b/src/mame/toshiba/pasopia7.cpp
index 3cca942fd21..9c986bdb9f1 100644
--- a/src/mame/toshiba/pasopia7.cpp
+++ b/src/mame/toshiba/pasopia7.cpp
@@ -32,17 +32,19 @@
#include "bus/pasopia/pac2.h"
#include "cpu/z80/z80.h"
+#include "imagedev/cassette.h"
#include "imagedev/floppy.h"
#include "machine/i8255.h"
#include "machine/upd765.h"
#include "machine/z80ctc.h"
#include "machine/z80pio.h"
#include "sound/sn76496.h"
-#include "video/mc6845.h"
-#include "imagedev/cassette.h"
#include "sound/spkrdev.h"
+#include "video/mc6845.h"
+
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
@@ -384,7 +386,7 @@ void pasopia7_state::memory_ctrl_w(uint8_t data)
// bank4 is always RAM
-// printf("%02x\n",m_vram_sel);
+// logerror("%02x\n",m_vram_sel);
}
/* writes always occurs to the RAM banks, even if the ROMs are selected. */
@@ -655,24 +657,24 @@ uint8_t pasopia7_state::crtc_portb_r()
void pasopia7_state::screen_mode_w(uint8_t data)
{
if(data & 0x5f)
- printf("GFX MODE %02x\n",data);
+ logerror("GFX MODE %02x\n",data);
m_x_width = data & 0x20;
m_gfx_mode = data & 0x80;
-// printf("%02x\n",m_gfx_mode);
+// logerror("%02x\n",m_gfx_mode);
}
void pasopia7_state::plane_reg_w(uint8_t data)
{
//if(data & 0x11)
- //printf("PLANE %02x\n",data);
+ //logerror("PLANE %02x\n",data);
m_plane_reg = data;
}
void pasopia7_state::video_attr_w(uint8_t data)
{
- //printf("VIDEO ATTR %02x | TEXT_PAGE %02x\n",data & 0xf,data & 0x70);
+ //logerror("VIDEO ATTR %02x | TEXT_PAGE %02x\n",data & 0xf,data & 0x70);
m_attr_data = (data & 0x7) | ((data & 0x8)<<4);
}
@@ -688,7 +690,7 @@ void pasopia7_state::video_misc_w(uint8_t data)
*/
//if(data & 2)
//{
- // printf("VIDEO MISC %02x\n",data);
+ // logerror("VIDEO MISC %02x\n",data);
// machine().debug_break();
//}
m_cursor_blink = data & 0x20;
@@ -704,7 +706,7 @@ void pasopia7_state::nmi_mask_w(uint8_t data)
---- --x- sound off
---- ---x reset NMI & trap
*/
-// printf("SYSTEM MISC %02x\n",data);
+// logerror("SYSTEM MISC %02x\n",data);
if(data & 1)
{
@@ -727,7 +729,7 @@ uint8_t pasopia7_state::unk_r()
uint8_t pasopia7_state::nmi_reg_r()
{
- //printf("C\n");
+ //logerror("C\n");
return 0xfc | m_bank_reg;//machine().rand();
}
@@ -845,8 +847,12 @@ void pasopia7_state::p7_base(machine_config &config)
CASSETTE(config, m_cass);
m_cass->set_default_state(CASSETTE_PLAY | CASSETTE_MOTOR_DISABLED | CASSETTE_SPEAKER_ENABLED);
m_cass->add_route(ALL_OUTPUTS, "mono", 0.05);
+ m_cass->set_interface("pasopia7_cass");
PASOPIA_PAC2(config, m_pac2, pac2_default_devices, nullptr);
+
+ SOFTWARE_LIST(config, "cass_list").set_original("pasopia7_cass");
+// SOFTWARE_LIST(config, "flop_list").set_original("pasopia7_flop");
}
void pasopia7_state::p7_raster(machine_config &config)