mirror of
https://github.com/holub/mame
synced 2025-04-22 16:31:49 +03:00
ti99: Remove include file ti99defs.h
This commit is contained in:
parent
c3b72f0904
commit
c1d025919c
@ -20,7 +20,6 @@
|
||||
#include "emu.h"
|
||||
#include "colorbus.h"
|
||||
#include "busmouse.h"
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
|
||||
DEFINE_DEVICE_TYPE_NS(V9938_COLORBUS, bus::ti99::colorbus, v9938_colorbus_device, "v9938_colorbus", "V9938 Color bus")
|
||||
|
||||
@ -29,7 +28,7 @@ namespace bus { namespace ti99 { namespace colorbus {
|
||||
v9938_colorbus_device::v9938_colorbus_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||
: device_t(mconfig, V9938_COLORBUS, tag, owner, clock),
|
||||
device_single_card_slot_interface<device_v9938_colorbus_interface>(mconfig, *this),
|
||||
m_v9938(*owner, TI_VDP_TAG),
|
||||
m_v9938(*owner, TIGEN_V9938_TAG),
|
||||
m_extra_button(*this)
|
||||
{
|
||||
}
|
||||
|
@ -18,6 +18,9 @@
|
||||
|
||||
#include "video/v9938.h"
|
||||
|
||||
#define TIGEN_V9938_TAG "vdp"
|
||||
#define COLORBUS_TAG "colorbus"
|
||||
|
||||
namespace bus { namespace ti99 { namespace colorbus {
|
||||
|
||||
class v9938_colorbus_device;
|
||||
|
@ -9,7 +9,6 @@
|
||||
#pragma once
|
||||
|
||||
#include "emuopts.h"
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#include "machine/tmc0430.h"
|
||||
#include "softlist_dev.h"
|
||||
#include "gromport.h"
|
||||
|
@ -8,7 +8,6 @@
|
||||
#define MAME_BUS_TI99_GROMPORT_GKRACKER_H
|
||||
|
||||
#pragma once
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#include "cartridges.h"
|
||||
|
||||
namespace bus { namespace ti99 { namespace gromport {
|
||||
|
@ -12,7 +12,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#define TI99_GROMPORT_TAG "gromport"
|
||||
|
||||
namespace bus { namespace ti99 { namespace gromport {
|
||||
|
||||
|
@ -13,7 +13,6 @@
|
||||
#define MAME_BUS_TI99_GROMPORT_MULTICONN_H
|
||||
|
||||
#pragma once
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#include "cartridges.h"
|
||||
|
||||
namespace bus { namespace ti99 { namespace gromport {
|
||||
|
@ -9,7 +9,6 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#include "cartridges.h"
|
||||
|
||||
namespace bus { namespace ti99 { namespace gromport {
|
||||
|
@ -344,15 +344,13 @@ void video992_device::device_reset()
|
||||
E80E: Cassette
|
||||
|
||||
[3] I/O Controller CF40051, Preliminary specification, Texas Instruments
|
||||
|
||||
TODO: Loading still unstable; often failing
|
||||
*/
|
||||
|
||||
io992_device::io992_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock)
|
||||
: bus::hexbus::hexbus_chained_device(mconfig, type, tag, owner, clock),
|
||||
m_hexbus(*this, "^" TI_HEXBUS_TAG),
|
||||
m_cassette(*this, "^" TI_CASSETTE),
|
||||
m_videoctrl(*this, "^" TI992_VDC_TAG),
|
||||
m_hexbus(*owner, TI992_HEXBUS_TAG),
|
||||
m_cassette(*owner, TI992_CASSETTE),
|
||||
m_videoctrl(*owner, TI992_VDC_TAG),
|
||||
m_keyboard(*this, "LINE%u", 0U),
|
||||
m_set_rom_bank(*this),
|
||||
m_key_row(0),
|
||||
|
@ -19,10 +19,13 @@
|
||||
#pragma once
|
||||
|
||||
#include "screen.h"
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#include "bus/hexbus/hexbus.h"
|
||||
#include "imagedev/cassette.h"
|
||||
|
||||
#define TI992_CASSETTE "cassette"
|
||||
#define TI992_VDC_TAG "vdc"
|
||||
#define TI992_HEXBUS_TAG "hexbus"
|
||||
|
||||
namespace bus { namespace ti99 { namespace internal {
|
||||
|
||||
class video992_device : public device_t,
|
||||
|
@ -160,8 +160,8 @@ mainboard8_device::mainboard8_device(const machine_config &mconfig, const char *
|
||||
m_amigo(*this, TI998_AMIGO_TAG),
|
||||
m_oso(*this, TI998_OSO_TAG),
|
||||
m_maincpu(*owner, "maincpu"),
|
||||
m_video(*owner, TI_VDP_TAG), // subdevice of main class
|
||||
m_sound(*owner, TI_SOUNDCHIP_TAG),
|
||||
m_video(*owner, TI998_VDP_TAG),
|
||||
m_sound(*owner, TI998_SOUNDCHIP_TAG),
|
||||
m_speech(*owner, TI998_SPEECHSYN_TAG),
|
||||
m_gromport(*owner, TI99_GROMPORT_TAG),
|
||||
m_ioport(*owner, TI99_IOPORT_TAG),
|
||||
@ -2266,7 +2266,7 @@ void amigo_device::device_reset()
|
||||
oso_device::oso_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
|
||||
bus::hexbus::hexbus_chained_device(mconfig, TI99_OSO, tag, owner, clock),
|
||||
m_int(*this),
|
||||
m_hexbusout(*this, ":" TI_HEXBUS_TAG),
|
||||
m_hexbusout(*this, ":" TI998_HEXBUS_TAG),
|
||||
m_data(0),
|
||||
m_status(0xff),
|
||||
m_control(0),
|
||||
|
@ -18,7 +18,6 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#include "bus/ti99/gromport/gromport.h"
|
||||
#include "bus/hexbus/hexbus.h"
|
||||
|
||||
@ -31,11 +30,15 @@
|
||||
|
||||
// -------------- Defines ------------------------------------
|
||||
|
||||
#define TI998_SRAM_TAG "sram8"
|
||||
#define TI998_DRAM_TAG "dram8"
|
||||
#define TI998_MAPPER_TAG "mapper"
|
||||
#define TI998_SRAM_TAG "sram8"
|
||||
#define TI998_DRAM_TAG "dram8"
|
||||
#define TI998_MAPPER_TAG "mapper"
|
||||
#define TI998_MAINBOARD_TAG "mainboard8"
|
||||
#define TI998_SPEECHSYN_TAG "speech"
|
||||
#define TI998_SPEECHSYN_TAG "speech"
|
||||
#define TI998_SOUNDCHIP_TAG "soundchip"
|
||||
#define TI998_TMS9901_TAG "tms9901"
|
||||
#define TI998_VDP_TAG "vdp"
|
||||
#define TI998_HEXBUS_TAG "hexbus"
|
||||
|
||||
#define TI998_ROM0_REG "rom0_region"
|
||||
#define TI998_ROM1_REG "rom1_region"
|
||||
|
@ -91,8 +91,8 @@ namespace bus { namespace ti99 { namespace internal {
|
||||
*/
|
||||
datamux_device::datamux_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||
: device_t(mconfig, TI99_DATAMUX, tag, owner, clock),
|
||||
m_video(*owner, TI_VDP_TAG),
|
||||
m_sound(*owner, TI_SOUNDCHIP_TAG),
|
||||
m_video(*owner, TI99_VDP_TAG),
|
||||
m_sound(*owner, TI99_SOUNDCHIP_TAG),
|
||||
m_ioport(*owner, TI99_IOPORT_TAG),
|
||||
m_gromport(*owner, TI99_GROMPORT_TAG),
|
||||
m_ram16b(*owner, TI99_EXPRAM_TAG),
|
||||
|
@ -3,7 +3,7 @@
|
||||
/****************************************************************************
|
||||
|
||||
TI-99/4(A) databus multiplexer circuit
|
||||
See datamux.c for documentation
|
||||
See datamux.cpp for documentation
|
||||
|
||||
Michael Zapf
|
||||
|
||||
@ -16,7 +16,6 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#include "machine/tmc0430.h"
|
||||
#include "bus/ti99/gromport/gromport.h"
|
||||
#include "bus/ti99/internal/ioport.h"
|
||||
@ -24,6 +23,16 @@
|
||||
#include "video/tms9928a.h"
|
||||
#include "machine/ram.h"
|
||||
|
||||
#define TI99_DATAMUX_TAG "datamux_16_8"
|
||||
#define TI99_GROM0_TAG "console_grom_0"
|
||||
#define TI99_GROM1_TAG "console_grom_1"
|
||||
#define TI99_GROM2_TAG "console_grom_2"
|
||||
#define TI99_PADRAM_TAG "scratchpad"
|
||||
#define TI99_EXPRAM_TAG "internal_32k_mod"
|
||||
#define TI99_CONSOLEROM "console_rom"
|
||||
#define TI99_SOUNDCHIP_TAG "soundchip"
|
||||
#define TI99_VDP_TAG "vdp"
|
||||
|
||||
namespace bus { namespace ti99 { namespace internal {
|
||||
|
||||
/*
|
||||
|
@ -11,7 +11,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#define TI99_EVPC_CONN_TAG "evpc_conn"
|
||||
|
||||
namespace bus { namespace ti99 { namespace internal {
|
||||
|
||||
|
@ -15,7 +15,6 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#include "bus/ti99/peb/peribox.h"
|
||||
#include "video/v9938.h"
|
||||
#include "cpu/tms9900/tms9995.h"
|
||||
|
@ -9,7 +9,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#define TI99_IOPORT_TAG "ioport"
|
||||
|
||||
namespace bus { namespace ti99 { namespace internal {
|
||||
|
||||
|
@ -31,6 +31,8 @@ enum
|
||||
HANDSET
|
||||
};
|
||||
|
||||
#define TI_JOYPORT_TAG "joyport"
|
||||
|
||||
class joyport_device;
|
||||
|
||||
/********************************************************************
|
||||
|
@ -50,6 +50,7 @@
|
||||
#define VERBOSE ( LOG_GENERAL | LOG_WARN )
|
||||
|
||||
#include "logmacro.h"
|
||||
#define EVPC_SCREEN_TAG "screen"
|
||||
|
||||
DEFINE_DEVICE_TYPE_NS(TI99_EVPC, bus::ti99::peb, snug_enhanced_video_device, "ti99_evpc", "SNUG Enhanced Video Processor Card")
|
||||
|
||||
@ -57,6 +58,7 @@ namespace bus { namespace ti99 { namespace peb {
|
||||
|
||||
#define NOVRAM_SIZE 256
|
||||
#define EVPC_CRU_BASE 0x1400
|
||||
#define SOUNDCHIP_TAG "soundchip"
|
||||
|
||||
snug_enhanced_video_device::snug_enhanced_video_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock):
|
||||
device_t(mconfig, TI99_EVPC, tag, owner, clock),
|
||||
@ -72,8 +74,8 @@ snug_enhanced_video_device::snug_enhanced_video_device(const machine_config &mco
|
||||
m_intlevel(0),
|
||||
m_dsrrom(nullptr),
|
||||
m_novram(nullptr),
|
||||
m_video(*this, TI_VDP_TAG),
|
||||
m_sound(*this, TI_SOUNDCHIP_TAG),
|
||||
m_video(*this, TIGEN_V9938_TAG),
|
||||
m_sound(*this, SOUNDCHIP_TAG),
|
||||
m_colorbus(*this, COLORBUS_TAG),
|
||||
m_console_conn(*this, ":" TI99_EVPC_CONN_TAG)
|
||||
{
|
||||
@ -496,8 +498,8 @@ void snug_enhanced_video_device::device_add_mconfig(machine_config& config)
|
||||
V9938(config, m_video, XTAL(21'477'272)); // typical 9938 clock, not verified
|
||||
|
||||
m_video->int_cb().set(FUNC(snug_enhanced_video_device::video_interrupt_in));
|
||||
m_video->set_screen(TI_SCREEN_TAG);
|
||||
screen_device& screen(SCREEN(config, TI_SCREEN_TAG, SCREEN_TYPE_RASTER));
|
||||
m_video->set_screen(EVPC_SCREEN_TAG);
|
||||
screen_device& screen(SCREEN(config, EVPC_SCREEN_TAG, SCREEN_TYPE_RASTER));
|
||||
screen.set_raw(XTAL(21'477'272),
|
||||
v99x8_device::HTOTAL,
|
||||
0,
|
||||
@ -505,11 +507,11 @@ void snug_enhanced_video_device::device_add_mconfig(machine_config& config)
|
||||
v99x8_device::VTOTAL_NTSC * 2,
|
||||
v99x8_device::VERTICAL_ADJUST * 2,
|
||||
v99x8_device::VVISIBLE_NTSC * 2 - 1 - v99x8_device::VERTICAL_ADJUST * 2);
|
||||
screen.set_screen_update(TI_VDP_TAG, FUNC(v99x8_device::screen_update));
|
||||
screen.set_screen_update(TIGEN_V9938_TAG, FUNC(v99x8_device::screen_update));
|
||||
|
||||
// Sound hardware
|
||||
SPEAKER(config, "sound_out").front_center();
|
||||
sn94624_device& soundgen(SN94624(config, TI_SOUNDCHIP_TAG, 3579545/8));
|
||||
sn94624_device& soundgen(SN94624(config, SOUNDCHIP_TAG, 3579545/8));
|
||||
soundgen.ready_cb().set(FUNC(snug_enhanced_video_device::ready_line));
|
||||
soundgen.add_route(ALL_OUTPUTS, "sound_out", 0.75);
|
||||
|
||||
|
@ -21,7 +21,6 @@
|
||||
#include "machine/timer.h"
|
||||
#include "video/v9938.h"
|
||||
#include "sound/sn76496.h"
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#include "bus/ti99/colorbus/colorbus.h"
|
||||
#include "bus/ti99/internal/evpcconn.h"
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
/****************************************************************************
|
||||
|
||||
Peripheral expansion box
|
||||
See peribox.c for documentation
|
||||
See peribox.cpp for documentation
|
||||
|
||||
Michael Zapf
|
||||
|
||||
@ -16,9 +16,11 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#include "bus/ti99/internal/ioport.h"
|
||||
|
||||
#define TI_PERIBOX_TAG "peb"
|
||||
#define TI99_DSRROM "dsrrom"
|
||||
|
||||
namespace bus { namespace ti99 { namespace peb {
|
||||
|
||||
class peribox_slot_device;
|
||||
|
@ -1,47 +0,0 @@
|
||||
// license:LGPL-2.1+
|
||||
// copyright-holders:Michael Zapf
|
||||
/****************************************************************************
|
||||
|
||||
Common definitions for TI family
|
||||
Should be included in each component.
|
||||
|
||||
Michael Zapf
|
||||
|
||||
*****************************************************************************/
|
||||
|
||||
#ifndef MAME_BUS_TI99_TI99DEFS_H
|
||||
#define MAME_BUS_TI99_TI99DEFS_H
|
||||
|
||||
#pragma once
|
||||
|
||||
// TI-99/4(A)
|
||||
#define TI99_GROMPORT_TAG "gromport"
|
||||
#define TI99_GROM0_TAG "console_grom_0"
|
||||
#define TI99_GROM1_TAG "console_grom_1"
|
||||
#define TI99_GROM2_TAG "console_grom_2"
|
||||
#define TI99_IOPORT_TAG "ioport"
|
||||
#define TI99_EVPC_CONN_TAG "evpc_conn"
|
||||
#define TI99_DATAMUX_TAG "datamux_16_8"
|
||||
#define TI99_PADRAM_TAG "scratchpad"
|
||||
#define TI99_EXPRAM_TAG "internal_32k_mod"
|
||||
#define TI99_DSRROM "dsrrom"
|
||||
#define TI99_CONSOLEROM "console_rom"
|
||||
#define TI99_CONSOLEGROM "cons_grom"
|
||||
|
||||
// Various systems (ti99, geneve)
|
||||
#define TI_SOUNDCHIP_TAG "soundchip"
|
||||
#define TI_TMS9901_TAG "tms9901"
|
||||
#define TI_PERIBOX_TAG "peb"
|
||||
#define TI_JOYPORT_TAG "joyport"
|
||||
#define TI_VDP_TAG "vdp"
|
||||
#define TI_SCREEN_TAG "screen"
|
||||
#define TI_HEXBUS_TAG "hexbus"
|
||||
#define TI_CASSETTE "cassette"
|
||||
#define TI992_VDC_TAG "vdc"
|
||||
|
||||
#define TI_VDPFREQ XTAL(10'738'635)
|
||||
|
||||
// v9938
|
||||
#define COLORBUS_TAG "colorbus"
|
||||
|
||||
#endif // MAME_BUS_TI99_TI99DEFS_H
|
@ -197,11 +197,11 @@
|
||||
#define LOG_READ (1U<<6)
|
||||
#define LOG_READG (1U<<7)
|
||||
#define LOG_WRITE (1U<<8)
|
||||
#define LOG_SETTING (1U<<9)
|
||||
#define LOG_CONFIG (1U<<9)
|
||||
#define LOG_PFM (1U<<10)
|
||||
|
||||
// Minimum log should be settings and warnings
|
||||
#define VERBOSE ( LOG_GENERAL | LOG_SETTING | LOG_WARN )
|
||||
#define VERBOSE ( LOG_GENERAL | LOG_CONFIG | LOG_WARN )
|
||||
|
||||
#include "logmacro.h"
|
||||
|
||||
@ -209,6 +209,9 @@
|
||||
#define GENEVE_SRAMX_TAG "sramexp"
|
||||
#define GENEVE_DRAM_TAG "dram"
|
||||
#define GENEVE_CLOCK_TAG "mm58274c"
|
||||
#define GENEVE_SOUNDCHIP_TAG "soundchip"
|
||||
#define GENEVE_TMS9901_TAG "tms9901"
|
||||
#define GENEVE_SCREEN_TAG "screen"
|
||||
|
||||
enum
|
||||
{
|
||||
@ -233,9 +236,9 @@ public:
|
||||
geneve_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_cpu(*this, "maincpu"),
|
||||
m_tms9901(*this, TI_TMS9901_TAG),
|
||||
m_sound(*this, TI_SOUNDCHIP_TAG),
|
||||
m_video(*this, TI_VDP_TAG),
|
||||
m_tms9901(*this, GENEVE_TMS9901_TAG),
|
||||
m_sound(*this, GENEVE_SOUNDCHIP_TAG),
|
||||
m_video(*this, TIGEN_V9938_TAG),
|
||||
m_rtc(*this, GENEVE_CLOCK_TAG),
|
||||
m_dram(*this, GENEVE_DRAM_TAG),
|
||||
m_sram(*this, GENEVE_SRAM_TAG),
|
||||
@ -443,12 +446,12 @@ INPUT_CHANGED_MEMBER( geneve_state::setgm_changed )
|
||||
{
|
||||
case 1:
|
||||
// Turbo switch. May be changed at any time.
|
||||
LOGMASKED(LOG_SETTING, "Setting turbo flag to %d\n", value);
|
||||
LOGMASKED(LOG_CONFIG, "Setting turbo flag to %d\n", value);
|
||||
m_genmod_decoder->set_turbo(value!=0);
|
||||
break;
|
||||
case 2:
|
||||
// TIMode switch. Causes reset when changed.
|
||||
LOGMASKED(LOG_SETTING, "Setting timode flag to %d\n", value);
|
||||
LOGMASKED(LOG_CONFIG, "Setting timode flag to %d\n", value);
|
||||
m_genmod_decoder->set_timode(value!=0);
|
||||
machine().schedule_hard_reset();
|
||||
break;
|
||||
@ -1083,7 +1086,7 @@ void geneve_state::machine_reset()
|
||||
// Configuring the VRAM size
|
||||
uint32_t videoram = (ioport("VRAM")->read()!=0)? 0x30000 : 0x20000;
|
||||
m_video->set_vram_size(videoram);
|
||||
LOGMASKED(LOG_SETTING, "Video RAM set to %d KiB\n", videoram / 1024);
|
||||
LOGMASKED(LOG_CONFIG, "Video RAM set to %d KiB\n", videoram / 1024);
|
||||
|
||||
// Check which boot EPROM we are using (or PFM)
|
||||
m_eprom = memregion("maincpu")->base();
|
||||
@ -1147,11 +1150,11 @@ void geneve_state::geneve_common(machine_config &config)
|
||||
m_cpu->clkout_cb().set(FUNC(geneve_state::clock_out));
|
||||
|
||||
// Video hardware
|
||||
v99x8_device& video(V9938(config, TI_VDP_TAG, XTAL(21'477'272))); // typical 9938 clock, not verified
|
||||
v99x8_device& video(V9938(config, TIGEN_V9938_TAG, XTAL(21'477'272))); // typical 9938 clock, not verified
|
||||
video.set_vram_size(0x20000);
|
||||
video.int_cb().set(FUNC(geneve_state::int2_from_v9938));
|
||||
video.set_screen(TI_SCREEN_TAG);
|
||||
screen_device& screen(SCREEN(config, TI_SCREEN_TAG, SCREEN_TYPE_RASTER));
|
||||
video.set_screen(GENEVE_SCREEN_TAG);
|
||||
screen_device& screen(SCREEN(config, GENEVE_SCREEN_TAG, SCREEN_TYPE_RASTER));
|
||||
screen.set_raw(XTAL(21'477'272), \
|
||||
v99x8_device::HTOTAL, \
|
||||
0, \
|
||||
@ -1159,7 +1162,7 @@ void geneve_state::geneve_common(machine_config &config)
|
||||
v99x8_device::VTOTAL_NTSC * 2, \
|
||||
v99x8_device::VERTICAL_ADJUST * 2, \
|
||||
v99x8_device::VVISIBLE_NTSC * 2 - 1 - v99x8_device::VERTICAL_ADJUST * 2);
|
||||
screen.set_screen_update(TI_VDP_TAG, FUNC(v99x8_device::screen_update));
|
||||
screen.set_screen_update(TIGEN_V9938_TAG, FUNC(v99x8_device::screen_update));
|
||||
|
||||
// Main board components
|
||||
TMS9901(config, m_tms9901, 0);
|
||||
|
@ -163,17 +163,16 @@
|
||||
*/
|
||||
|
||||
#include "emu.h"
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#include "cpu/tms9900/tms9995.h"
|
||||
#include "bus/ti99/internal/992board.h"
|
||||
#include "machine/ram.h"
|
||||
#include "imagedev/cassette.h"
|
||||
#include "bus/hexbus/hexbus.h"
|
||||
|
||||
#define TI992_SCREEN_TAG "screen"
|
||||
#define TI992_ROM "rom_region"
|
||||
#define TI992_RAM_TAG "ram_region"
|
||||
#define TI992_IO_TAG "io"
|
||||
#define TI992_RAM_TAG "ram_region"
|
||||
#define TI992_ROM "rom_region"
|
||||
#define TI992_SCREEN_TAG "screen"
|
||||
|
||||
#define LOG_WARN (1U<<1) // Warnings
|
||||
#define LOG_CRU (1U<<2) // CRU activities
|
||||
@ -192,7 +191,7 @@ public:
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_videoctrl(*this, TI992_VDC_TAG),
|
||||
m_io992(*this, TI992_IO_TAG),
|
||||
m_cassette(*this, TI_CASSETTE),
|
||||
m_cassette(*this, TI992_CASSETTE),
|
||||
m_ram(*this, TI992_RAM_TAG),
|
||||
m_otherbank(false),
|
||||
m_rom(nullptr),
|
||||
@ -470,7 +469,7 @@ void ti99_2_state::ti99_2(machine_config& config)
|
||||
CASSETTE(config, "cassette", 0);
|
||||
|
||||
// Hexbus
|
||||
HEXBUS(config, TI_HEXBUS_TAG, 0, hexbus_options, nullptr);
|
||||
HEXBUS(config, TI992_HEXBUS_TAG, 0, hexbus_options, nullptr);
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -116,7 +116,6 @@
|
||||
*****************************************************************************/
|
||||
|
||||
#include "emu.h"
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#include "bus/ti99/joyport/joyport.h"
|
||||
#include "bus/ti99/peb/peribox.h"
|
||||
#include "cpu/tms9900/tms9900.h"
|
||||
@ -125,8 +124,9 @@
|
||||
#include "machine/tms9901.h"
|
||||
#include "speaker.h"
|
||||
|
||||
#define TI99_SGCPU_TAG "sgcpu"
|
||||
#define TI99_AMSRAM_TAG "amsram1meg"
|
||||
#define SGCPU_AMSRAM_TAG "amsram1meg"
|
||||
#define SGCPU_PADRAM_TAG "scratchpad"
|
||||
#define SGCPU_TMS9901_TAG "tms9901"
|
||||
|
||||
// Debugging
|
||||
#define LOG_WARN (1U<<1) // Warnings
|
||||
@ -147,12 +147,12 @@ public:
|
||||
ti99_4p_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_cpu(*this, "maincpu"),
|
||||
m_tms9901(*this, TI_TMS9901_TAG),
|
||||
m_tms9901(*this, SGCPU_TMS9901_TAG),
|
||||
m_cassette(*this, "cassette"),
|
||||
m_peribox(*this, TI_PERIBOX_TAG),
|
||||
m_joyport(*this, TI_JOYPORT_TAG),
|
||||
m_scratchpad(*this, TI99_PADRAM_TAG),
|
||||
m_amsram(*this, TI99_AMSRAM_TAG),
|
||||
m_scratchpad(*this, SGCPU_PADRAM_TAG),
|
||||
m_amsram(*this, SGCPU_AMSRAM_TAG),
|
||||
m_keyboard(*this, "COL%u", 0U),
|
||||
m_alpha(*this, "ALPHA")
|
||||
{ }
|
||||
@ -1055,10 +1055,10 @@ void ti99_4p_state::ti99_4p_60hz(machine_config& config)
|
||||
m_peribox->lcp_cb().set(FUNC(ti99_4p_state::video_interrupt_in));
|
||||
|
||||
// Scratch pad RAM 1024 bytes (4 times the size of the TI-99/4A)
|
||||
RAM(config, TI99_PADRAM_TAG).set_default_size("1K").set_default_value(0);
|
||||
RAM(config, SGCPU_PADRAM_TAG).set_default_size("1K").set_default_value(0);
|
||||
|
||||
// AMS RAM 1 MiB
|
||||
RAM(config, TI99_AMSRAM_TAG).set_default_size("1M").set_default_value(0);
|
||||
RAM(config, SGCPU_AMSRAM_TAG).set_default_size("1M").set_default_value(0);
|
||||
|
||||
// Cassette drives
|
||||
SPEAKER(config, "cass_out").front_center();
|
||||
|
@ -2,7 +2,7 @@
|
||||
// copyright-holders:Michael Zapf
|
||||
/****************************************************************************
|
||||
|
||||
MESS Driver for TI-99/4 and TI-99/4A Home Computers.
|
||||
MAME Driver for TI-99/4 and TI-99/4A Home Computers.
|
||||
TI99/4 info:
|
||||
|
||||
Similar to TI99/4a, except for the following:
|
||||
@ -15,7 +15,7 @@
|
||||
* early TI99/4 prototypes were designed for a tms9985, not a tms9900.
|
||||
|
||||
Emulation architecture:
|
||||
(also see datamux.c, peribox.c)
|
||||
(also see datamux.cpp, peribox.cpp)
|
||||
|
||||
+---- video (upper 8 bits of databus)
|
||||
|
|
||||
@ -44,7 +44,6 @@
|
||||
#include "machine/tms9901.h"
|
||||
#include "imagedev/cassette.h"
|
||||
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
#include "bus/ti99/internal/datamux.h"
|
||||
#include "bus/ti99/gromport/gromport.h"
|
||||
#include "bus/ti99/internal/evpcconn.h"
|
||||
@ -56,6 +55,10 @@
|
||||
#include "softlist.h"
|
||||
#include "speaker.h"
|
||||
|
||||
#define TI99_CONSOLEGROM "cons_grom"
|
||||
#define TI99_TMS9901_TAG "tms9901"
|
||||
#define TI99_SCREEN_TAG "screen"
|
||||
|
||||
// Debugging
|
||||
#define LOG_WARN (1U<<1) // Warnings
|
||||
#define LOG_CONFIG (1U<<2) // Configuration
|
||||
@ -86,12 +89,12 @@ public:
|
||||
m_int2(0),
|
||||
m_int12(0),
|
||||
m_cpu(*this, "maincpu"),
|
||||
m_tms9901(*this, TI_TMS9901_TAG),
|
||||
m_tms9901(*this, TI99_TMS9901_TAG),
|
||||
m_gromport(*this, TI99_GROMPORT_TAG),
|
||||
m_ioport(*this, TI99_IOPORT_TAG),
|
||||
m_joyport(*this, TI_JOYPORT_TAG),
|
||||
m_datamux(*this, TI99_DATAMUX_TAG),
|
||||
m_video(*this, TI_VDP_TAG),
|
||||
m_video(*this, TI99_VDP_TAG),
|
||||
m_cassette1(*this, "cassette1"),
|
||||
m_cassette2(*this, "cassette2"),
|
||||
m_keyboard(*this, "COL%u", 0U),
|
||||
@ -948,7 +951,7 @@ void ti99_4x_state::ti99_4(machine_config& config)
|
||||
|
||||
// Sound hardware (not in EVPC variant)
|
||||
SPEAKER(config, "sound_out").front_center();
|
||||
sn94624_device& soundgen(SN94624(config, TI_SOUNDCHIP_TAG, 3579545/8));
|
||||
sn94624_device& soundgen(SN94624(config, TI99_SOUNDCHIP_TAG, 3579545/8));
|
||||
soundgen.ready_cb().set(FUNC(ti99_4x_state::console_ready_sound));
|
||||
soundgen.add_route(ALL_OUTPUTS, "sound_out", 0.75);
|
||||
|
||||
@ -967,9 +970,9 @@ void ti99_4x_state::ti99_4_60hz(machine_config &config)
|
||||
m_video->set_vram_size(0x4000);
|
||||
m_video->int_callback().set(FUNC(ti99_4x_state::video_interrupt_in));
|
||||
m_video->gromclk_callback().set(FUNC(ti99_4x_state::gromclk_in));
|
||||
m_video->set_screen(TI_SCREEN_TAG);
|
||||
m_video->set_screen(TI99_SCREEN_TAG);
|
||||
|
||||
SCREEN(config, TI_SCREEN_TAG, SCREEN_TYPE_RASTER);
|
||||
SCREEN(config, TI99_SCREEN_TAG, SCREEN_TYPE_RASTER);
|
||||
}
|
||||
|
||||
/*
|
||||
@ -982,9 +985,9 @@ void ti99_4x_state::ti99_4_50hz(machine_config &config)
|
||||
m_video->set_vram_size(0x4000);
|
||||
m_video->int_callback().set(FUNC(ti99_4x_state::video_interrupt_in));
|
||||
m_video->gromclk_callback().set(FUNC(ti99_4x_state::gromclk_in));
|
||||
m_video->set_screen(TI_SCREEN_TAG);
|
||||
m_video->set_screen(TI99_SCREEN_TAG);
|
||||
|
||||
SCREEN(config, TI_SCREEN_TAG, SCREEN_TYPE_RASTER);
|
||||
SCREEN(config, TI99_SCREEN_TAG, SCREEN_TYPE_RASTER);
|
||||
}
|
||||
|
||||
/**********************************************************************
|
||||
@ -1009,7 +1012,7 @@ void ti99_4x_state::ti99_4a(machine_config& config)
|
||||
|
||||
// Sound hardware (not in EVPC variant)
|
||||
SPEAKER(config, "sound_out").front_center();
|
||||
sn94624_device& soundgen(SN94624(config, TI_SOUNDCHIP_TAG, 3579545/8));
|
||||
sn94624_device& soundgen(SN94624(config, TI99_SOUNDCHIP_TAG, 3579545/8));
|
||||
soundgen.ready_cb().set(FUNC(ti99_4x_state::console_ready_sound));
|
||||
soundgen.add_route(ALL_OUTPUTS, "sound_out", 0.75);
|
||||
|
||||
@ -1027,9 +1030,9 @@ void ti99_4x_state::ti99_4a_60hz(machine_config &config)
|
||||
m_video->set_vram_size(0x4000);
|
||||
m_video->int_callback().set(FUNC(ti99_4x_state::video_interrupt_in));
|
||||
m_video->gromclk_callback().set(FUNC(ti99_4x_state::gromclk_in));
|
||||
m_video->set_screen(TI_SCREEN_TAG);
|
||||
m_video->set_screen(TI99_SCREEN_TAG);
|
||||
|
||||
SCREEN(config, TI_SCREEN_TAG, SCREEN_TYPE_RASTER);
|
||||
SCREEN(config, TI99_SCREEN_TAG, SCREEN_TYPE_RASTER);
|
||||
}
|
||||
|
||||
/*
|
||||
@ -1042,9 +1045,9 @@ void ti99_4x_state::ti99_4a_50hz(machine_config &config)
|
||||
m_video->set_vram_size(0x4000);
|
||||
m_video->int_callback().set(FUNC(ti99_4x_state::video_interrupt_in));
|
||||
m_video->gromclk_callback().set(FUNC(ti99_4x_state::gromclk_in));
|
||||
m_video->set_screen(TI_SCREEN_TAG);
|
||||
m_video->set_screen(TI99_SCREEN_TAG);
|
||||
|
||||
SCREEN(config, TI_SCREEN_TAG, SCREEN_TYPE_RASTER);
|
||||
SCREEN(config, TI99_SCREEN_TAG, SCREEN_TYPE_RASTER);
|
||||
}
|
||||
|
||||
/************************************************************************
|
||||
@ -1069,9 +1072,9 @@ void ti99_4x_state::ti99_4qi_60hz(machine_config &config)
|
||||
m_video->set_vram_size(0x4000);
|
||||
m_video->int_callback().set(FUNC(ti99_4x_state::video_interrupt_in));
|
||||
m_video->gromclk_callback().set(FUNC(ti99_4x_state::gromclk_in));
|
||||
m_video->set_screen(TI_SCREEN_TAG);
|
||||
m_video->set_screen(TI99_SCREEN_TAG);
|
||||
|
||||
SCREEN(config, TI_SCREEN_TAG, SCREEN_TYPE_RASTER);
|
||||
SCREEN(config, TI99_SCREEN_TAG, SCREEN_TYPE_RASTER);
|
||||
}
|
||||
|
||||
/************************************************************************
|
||||
|
@ -164,8 +164,6 @@ Known Issues (MZ, 2019-05-10)
|
||||
#include "emu.h"
|
||||
#include "cpu/tms9900/tms9995.h"
|
||||
|
||||
#include "bus/ti99/ti99defs.h"
|
||||
|
||||
#include "sound/sn76496.h"
|
||||
#include "machine/tms9901.h"
|
||||
#include "machine/tmc0430.h"
|
||||
@ -214,7 +212,7 @@ public:
|
||||
ti99_8_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_cpu(*this, "maincpu"),
|
||||
m_tms9901(*this, TI_TMS9901_TAG),
|
||||
m_tms9901(*this, TI998_TMS9901_TAG),
|
||||
m_gromport(*this, TI99_GROMPORT_TAG),
|
||||
m_ioport(*this, TI99_IOPORT_TAG),
|
||||
m_mainboard(*this, TI998_MAINBOARD_TAG),
|
||||
@ -734,11 +732,11 @@ void ti99_8_state::ti99_8(machine_config& config)
|
||||
m_ioport->ready_cb().set(TI998_MAINBOARD_TAG, FUNC(mainboard8_device::pbox_ready));
|
||||
|
||||
// Hexbus
|
||||
HEXBUS(config, TI_HEXBUS_TAG, 0, hexbus_options, nullptr);
|
||||
HEXBUS(config, TI998_HEXBUS_TAG, 0, hexbus_options, nullptr);
|
||||
|
||||
// Sound hardware
|
||||
SPEAKER(config, "sound_out").front_center();
|
||||
sn76496_device& soundgen(SN76496(config, TI_SOUNDCHIP_TAG, 3579545));
|
||||
sn76496_device& soundgen(SN76496(config, TI998_SOUNDCHIP_TAG, 3579545));
|
||||
soundgen.ready_cb().set(TI998_MAINBOARD_TAG, FUNC(mainboard8_device::sound_ready));
|
||||
soundgen.add_route(ALL_OUTPUTS, "sound_out", 0.75);
|
||||
|
||||
@ -795,7 +793,7 @@ void ti99_8_state::ti99_8_60hz(machine_config &config)
|
||||
{
|
||||
ti99_8(config);
|
||||
// Video hardware
|
||||
tms9118_device &video(TMS9118(config, TI_VDP_TAG, XTAL(10'738'635)));
|
||||
tms9118_device &video(TMS9118(config, TI998_VDP_TAG, XTAL(10'738'635)));
|
||||
video.set_vram_size(0x4000);
|
||||
video.int_callback().set(FUNC(ti99_8_state::video_interrupt));
|
||||
video.set_screen("screen");
|
||||
@ -810,7 +808,7 @@ void ti99_8_state::ti99_8_50hz(machine_config &config)
|
||||
{
|
||||
ti99_8(config);
|
||||
// Video hardware
|
||||
tms9129_device &video(TMS9129(config, TI_VDP_TAG, XTAL(10'738'635)));
|
||||
tms9129_device &video(TMS9129(config, TI998_VDP_TAG, XTAL(10'738'635)));
|
||||
video.set_vram_size(0x4000);
|
||||
video.int_callback().set(FUNC(ti99_8_state::video_interrupt));
|
||||
video.set_screen("screen");
|
||||
|
Loading…
Reference in New Issue
Block a user