This commit is contained in:
Angelo Salese 2015-04-01 00:12:28 +02:00
commit 93274abd7a
16 changed files with 593 additions and 322 deletions

View File

@ -293,15 +293,6 @@ ifdef TARGETOS
PARAMS += --targetos=$(TARGETOS)
endif
ifndef USE_QT
ifneq ($(TARGETOS),macosx)
USE_QT := 1
else
USE_QT := 0
endif
endif
PARAMS += --USE_QT=$(USE_QT)
ifdef DONT_USE_NETWORK
PARAMS += --DONT_USE_NETWORK='$(DONT_USE_NETWORK)'
endif
@ -314,6 +305,14 @@ ifdef USE_DISPATCH_GL
PARAMS += --USE_DISPATCH_GL='$(USE_DISPATCH_GL)'
endif
ifdef NO_USE_MIDI
PARAMS += --NO_USE_MIDI='$(NO_USE_MIDI)'
endif
ifdef USE_QTDEBUG
PARAMS += --USE_QTDEBUG='$(USE_QTDEBUG)'
endif
ifdef MESA_INSTALL_ROOT
PARAMS += --MESA_INSTALL_ROOT='$(MESA_INSTALL_ROOT)'
endif
@ -326,10 +325,6 @@ ifdef NO_USE_XINPUT
PARAMS += --NO_USE_XINPUT='$(NO_USE_XINPUT)'
endif
ifdef NO_USE_MIDI
PARAMS += --NO_USE_MIDI='$(NO_USE_MIDI)'
endif
ifdef SDL_LIBVER
PARAMS += --SDL_LIBVER='$(SDL_LIBVER)'
endif
@ -710,16 +705,27 @@ GEN_FOLDERS := \
LAYOUTS=$(wildcard $(SRC)/emu/layout/*.lay) $(wildcard $(SRC)/$(TARGET)/layout/*.lay)
ifeq ($(USE_QT),0)
MOC_FILES=
else
MOC_FILES=$(wildcard $(SRC)/osd/modules/debugger/qt/*.h)
ifneq ($(USE_QTDEBUG),1)
ifeq ($(TARGETOS),macosx)
MOC_FILES=
endif
ifeq ($(TARGETOS),solaris)
MOC_FILES=
endif
ifeq ($(TARGETOS),haiku)
MOC_FILES=
endif
ifeq ($(TARGETOS),emscripten)
MOC_FILES=
endif
ifeq ($(TARGETOS),os2)
MOC_FILES=
endif
endif
ifeq ($(OS),windows)
MOC = moc
ifneq ($(OSD),sdl)
MOC_FILES=
endif
else
MOCTST = $(shell which moc-qt4 2>/dev/null)
ifeq '$(MOCTST)' ''
@ -734,7 +740,6 @@ MOC = $(MOCTST)
endif
endif
endif
ifneq (,$(wildcard src/osd/$(OSD)/$(OSD).mak))
include src/osd/$(OSD)/$(OSD).mak

View File

@ -182,20 +182,6 @@ newoption {
}
}
newoption {
trigger = "USE_QT",
description = "Use of QT.",
allowed = {
{ "0", "Disabled" },
{ "1", "Enabled" },
}
}
newoption {
trigger = "DONT_USE_NETWORK",
description = "Disable network access",
}
local os_version = str_to_version(_OPTIONS["os_version"])
USE_BGFX = 1
@ -206,11 +192,6 @@ if(_OPTIONS["USE_BGFX"]~=nil) then
USE_BGFX = tonumber(_OPTIONS["USE_BGFX"])
end
USE_QT = 1
if(_OPTIONS["USE_QT"]~=nil) then
USE_QT = tonumber(_OPTIONS["USE_QT"])
end
GEN_DIR = MAME_BUILD_DIR .. "generated/"
if (_OPTIONS["target"] == nil) then return false end

251
scripts/src/osd/modules.lua Normal file
View File

@ -0,0 +1,251 @@
function osdmodulesbuild()
removeflags {
"SingleOutputDir",
}
options {
"ForceCPP",
}
files {
MAME_DIR .. "src/osd/modules/lib/osdobj_common.c",
MAME_DIR .. "src/osd/modules/debugger/none.c",
MAME_DIR .. "src/osd/modules/debugger/debugint.c",
MAME_DIR .. "src/osd/modules/debugger/debugwin.c",
MAME_DIR .. "src/osd/modules/debugger/debugqt.c",
MAME_DIR .. "src/osd/modules/font/font_sdl.c",
MAME_DIR .. "src/osd/modules/font/font_windows.c",
MAME_DIR .. "src/osd/modules/font/font_osx.c",
MAME_DIR .. "src/osd/modules/font/font_none.c",
MAME_DIR .. "src/osd/modules/netdev/taptun.c",
MAME_DIR .. "src/osd/modules/netdev/pcap.c",
MAME_DIR .. "src/osd/modules/netdev/none.c",
MAME_DIR .. "src/osd/modules/midi/portmidi.c",
MAME_DIR .. "src/osd/modules/midi/none.c",
MAME_DIR .. "src/osd/modules/sound/js_sound.c",
MAME_DIR .. "src/osd/modules/sound/direct_sound.c",
MAME_DIR .. "src/osd/modules/sound/sdl_sound.c",
MAME_DIR .. "src/osd/modules/sound/none.c",
}
if _OPTIONS["targetos"]=="windows" then
includedirs {
MAME_DIR .. "3rdparty/winpcap/Include",
}
end
if _OPTIONS["NO_OPENGL"]=="1" then
defines {
"USE_OPENGL=0",
}
else
files {
MAME_DIR .. "src/osd/modules/render/drawogl.c",
MAME_DIR .. "src/osd/modules/opengl/gl_shader_tool.c",
MAME_DIR .. "src/osd/modules/opengl/gl_shader_mgr.c",
}
defines {
"USE_OPENGL=1",
}
if _OPTIONS["USE_DISPATCH_GL"]=="1" then
defines {
"USE_DISPATCH_GL=1",
}
end
end
if USE_BGFX == 1 then
files {
MAME_DIR .. "src/osd/modules/render/drawbgfx.c",
}
defines {
"USE_BGFX"
}
includedirs {
MAME_DIR .. "3rdparty/bgfx/include",
MAME_DIR .. "3rdparty/bx/include",
}
end
if _OPTIONS["NO_USE_MIDI"]=="1" then
defines {
"NO_USE_MIDI",
}
end
if _OPTIONS["USE_QTDEBUG"]=="1" then
files {
MAME_DIR .. "src/osd/modules/debugger/qt/debuggerview.c",
MAME_DIR .. "src/osd/modules/debugger/qt/windowqt.c",
MAME_DIR .. "src/osd/modules/debugger/qt/logwindow.c",
MAME_DIR .. "src/osd/modules/debugger/qt/dasmwindow.c",
MAME_DIR .. "src/osd/modules/debugger/qt/mainwindow.c",
MAME_DIR .. "src/osd/modules/debugger/qt/memorywindow.c",
MAME_DIR .. "src/osd/modules/debugger/qt/breakpointswindow.c",
MAME_DIR .. "src/osd/modules/debugger/qt/deviceswindow.c",
MAME_DIR .. "src/osd/modules/debugger/qt/deviceinformationwindow.c",
GEN_DIR .. "osd/modules/debugger/qt/debuggerview.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/windowqt.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/logwindow.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/dasmwindow.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/mainwindow.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/memorywindow.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/breakpointswindow.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/deviceswindow.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/deviceinformationwindow.moc.c",
}
defines {
"USE_QTDEBUG=1",
}
if _OPTIONS["targetos"]=="windows" then
configuration { "mingw*" }
buildoptions {
"-I$(shell qmake -query QT_INSTALL_HEADERS)/QtCore",
"-I$(shell qmake -query QT_INSTALL_HEADERS)/QtGui",
"-I$(shell qmake -query QT_INSTALL_HEADERS)",
}
configuration { }
elseif _OPTIONS["targetos"]=="macosx" then
-- TODO: search path for Qt on OSX platform
else
buildoptions {
string.gsub(os.outputof("pkg-config --cflags QtGui"), '[\r\n]+', ' '),
}
end
else
defines {
"USE_QTDEBUG=0",
}
end
end
function osdmodulestargetconf()
if _OPTIONS["NO_OPENGL"]~="1" then
if _OPTIONS["targetos"]=="macosx" then
links {
"OpenGL.framework",
}
elseif _OPTIONS["USE_DISPATCH_GL"]~="1" then
if _OPTIONS["targetos"]=="windows" then
links {
"opengl32",
}
else
links {
"GL",
}
end
end
end
if _OPTIONS["NO_USE_MIDI"]~="1" then
if _OPTIONS["targetos"]=="linux" then
linkoptions {
string.gsub(os.outputof("pkg-config --libs alsa"), '[\r\n]+', ' '),
}
elseif _OPTIONS["targetos"]=="macosx" then
links {
"CoreAudio.framework",
"CoreMIDI.framework",
}
end
end
if _OPTIONS["USE_QTDEBUG"]=="1" then
if _OPTIONS["targetos"]=="windows" then
linkoptions {
"-L$(shell qmake -query QT_INSTALL_LIBS)",
}
links {
"qtmain",
"QtGui4",
"QtCore4",
}
elseif _OPTIONS["targetos"]=="macosx" then
-- TODO: Qt libs for OSX platform
else
linkoptions {
string.gsub(os.outputof("pkg-config --libs QtGui"), '[\r\n]+', ' '),
}
end
end
end
newoption {
trigger = "DONT_USE_NETWORK",
description = "Disable network access",
}
newoption {
trigger = "NO_OPENGL",
description = "Disable use of OpenGL",
allowed = {
{ "0", "Enable OpenGL" },
{ "1", "Disable OpenGL" },
},
}
if not _OPTIONS["NO_OPENGL"] then
if _OPTIONS["targetos"]=="os2" then
_OPTIONS["NO_OPENGL"] = "1"
else
_OPTIONS["NO_OPENGL"] = "0"
end
end
newoption {
trigger = "USE_DISPATCH_GL",
description = "Use GL-dispatching",
allowed = {
{ "0", "Link to OpenGL library" },
{ "1", "Use GL-dispatching" },
},
}
if not _OPTIONS["USE_DISPATCH_GL"] then
if USE_BGFX == 1 then
_OPTIONS["USE_DISPATCH_GL"] = "0"
else
_OPTIONS["USE_DISPATCH_GL"] = "1"
end
end
newoption {
trigger = "NO_USE_MIDI",
description = "Disable MIDI I/O",
allowed = {
{ "0", "Enable MIDI" },
{ "1", "Disable MIDI" },
},
}
if not _OPTIONS["NO_USE_MIDI"] then
if _OPTIONS["targetos"]=="freebsd" or _OPTIONS["targetos"]=="openbsd" or _OPTIONS["targetos"]=="netbsd" or _OPTIONS["targetos"]=="solaris" or _OPTIONS["targetos"]=="haiku" or _OPTIONS["targetos"] == "emscripten" or _OPTIONS["targetos"] == "os2" then
_OPTIONS["NO_USE_MIDI"] = "1"
else
_OPTIONS["NO_USE_MIDI"] = "0"
end
end
newoption {
trigger = "USE_QTDEBUG",
description = "Use QT debugger",
allowed = {
{ "0", "Don't use Qt debugger" },
{ "1", "Use Qt debugger" },
},
}
if not _OPTIONS["USE_QTDEBUG"] then
if _OPTIONS["targetos"]=="windows" or _OPTIONS["targetos"]=="macosx" or _OPTIONS["targetos"]=="solaris" or _OPTIONS["targetos"]=="haiku" or _OPTIONS["targetos"] == "emscripten" or _OPTIONS["targetos"] == "os2" then
_OPTIONS["USE_QTDEBUG"] = "0"
else
_OPTIONS["USE_QTDEBUG"] = "1"
end
end

View File

@ -1,4 +1,9 @@
dofile("modules.lua")
function maintargetosdoptions(_target)
osdmodulestargetconf()
if _OPTIONS["USE_DISPATCH_GL"]~="1" and _OPTIONS["MESA_INSTALL_ROOT"] then
libdirs {
path.join(_OPTIONS["MESA_INSTALL_ROOT"],"lib"),
@ -32,22 +37,12 @@ function maintargetosdoptions(_target)
"SDL_ttf",
}
end
if _OPTIONS["NO_OPENGL"]~="1" and _OPTIONS["USE_DISPATCH_GL"]~="1" then
links {
"GL"
}
end
linkoptions {
string.gsub(os.outputof("pkg-config --libs fontconfig"), '[\r\n]+', ' '),
}
end
if _OPTIONS["targetos"]=="windows" then
if _OPTIONS["NO_OPENGL"]~="1" and _OPTIONS["USE_DISPATCH_GL"]~="1" then
links {
"opengl32"
}
end
configuration { "mingw*" }
linkoptions{
"-municode",
@ -65,39 +60,6 @@ function maintargetosdoptions(_target)
"SDL2",
}
configuration {}
if (USE_QT == 1) then
linkoptions{
"-L$(shell qmake -query QT_INSTALL_LIBS)",
}
links {
"qtmain",
"QtGui4",
"QtCore4",
}
end
elseif _OPTIONS["targetos"]=="linux" then
if USE_QT == 1 then
linkoptions {
"$(shell pkg-config --libs QtGui)",
}
links {
"QtGui",
"QtCore",
}
end
if _OPTIONS["NO_USE_MIDI"]~="1" then
linkoptions {
string.gsub(os.outputof("pkg-config --libs alsa"), '[\r\n]+', ' '),
}
end
elseif _OPTIONS["targetos"]=="macosx" then
if _OPTIONS["NO_USE_MIDI"]~="1" then
links {
"CoreAudio.framework",
"CoreMIDI.framework",
}
end
elseif _OPTIONS["targetos"]=="haiku" then
links {
"network",
@ -121,43 +83,9 @@ function sdlconfigcmd()
end
newoption {
trigger = "NO_OPENGL",
description = "Disable use of OpenGL",
allowed = {
{ "0", "Enable OpenGL" },
{ "1", "Disable OpenGL" },
},
}
if not _OPTIONS["NO_OPENGL"] then
if _OPTIONS["targetos"]=="os2" then
_OPTIONS["NO_OPENGL"] = "1"
else
_OPTIONS["NO_OPENGL"] = "0"
end
end
newoption {
trigger = "USE_DISPATCH_GL",
description = "Use GL-dispatching (takes precedence over MESA_INSTALL_ROOT)",
allowed = {
{ "0", "Link to OpenGL library" },
{ "1", "Use GL-dispatching" },
},
}
if not _OPTIONS["USE_DISPATCH_GL"] then
if USE_BGFX == 1 then
_OPTIONS["USE_DISPATCH_GL"] = "0"
else
_OPTIONS["USE_DISPATCH_GL"] = "1"
end
end
newoption {
trigger = "MESA_INSTALL_ROOT",
description = "link against specific GL-Library - also adds rpath to executable",
description = "link against specific GL-Library - also adds rpath to executable (overridden by USE_DISPATCH_GL)",
}
newoption {
@ -190,23 +118,6 @@ if not _OPTIONS["NO_USE_XINPUT"] then
_OPTIONS["NO_USE_XINPUT"] = "1"
end
newoption {
trigger = "NO_USE_MIDI",
description = "Disable MIDI I/O",
allowed = {
{ "0", "Enable MIDI" },
{ "1", "Disable MIDI" },
},
}
if not _OPTIONS["NO_USE_MIDI"] then
if _OPTIONS["targetos"]=="freebsd" or _OPTIONS["targetos"]=="openbsd" or _OPTIONS["targetos"]=="netbsd" or _OPTIONS["targetos"]=="solaris" or _OPTIONS["targetos"]=="haiku" or _OPTIONS["targetos"] == "emscripten" or _OPTIONS["targetos"] == "os2" then
_OPTIONS["NO_USE_MIDI"] = "1"
else
_OPTIONS["NO_USE_MIDI"] = "0"
end
end
newoption {
trigger = "SDL_LIBVER",
description = "Choose SDL version",
@ -295,24 +206,10 @@ elseif _OPTIONS["targetos"]=="os2" then
SYNC_IMPLEMENTATION = "os2"
end
if _OPTIONS["NO_X11"]~="1" then
libdirs {
"/usr/X11/lib",
"/usr/X11R6/lib",
"/usr/openwin/lib",
}
if _OPTIONS["SDL_LIBVER"]=="sdl" then
links {
"X11",
}
end
end
if BASE_TARGETOS=="unix" then
if _OPTIONS["targetos"]=="macosx" then
links {
"Cocoa.framework",
"OpenGL.framework",
}
if _OPTIONS["MACOSX_USE_LIBSDL"]~="1" then
linkoptions {
@ -333,6 +230,21 @@ if BASE_TARGETOS=="unix" then
}
end
else
if _OPTIONS["NO_X11"]=="1" then
_OPTIONS["USE_QTDEBUG"] = "0"
USE_BGFX = 0
else
libdirs {
"/usr/X11/lib",
"/usr/X11R6/lib",
"/usr/openwin/lib",
}
if _OPTIONS["SDL_LIBVER"]=="sdl" then
links {
"X11",
}
end
end
linkoptions {
string.gsub(os.outputof(sdlconfigcmd() .. " --libs"), '[\r\n]+', ' '),
}
@ -374,16 +286,9 @@ project ("osd_" .. _OPTIONS["osd"])
uuid (os.uuid("osd_" .. _OPTIONS["osd"]))
kind "StaticLib"
removeflags {
"SingleOutputDir",
}
options {
"ForceCPP",
}
dofile("sdl_cfg.lua")
osdmodulesbuild()
includedirs {
MAME_DIR .. "src/emu",
MAME_DIR .. "src/osd",
@ -391,9 +296,6 @@ project ("osd_" .. _OPTIONS["osd"])
MAME_DIR .. "src/lib/util",
MAME_DIR .. "src/osd/modules/render",
MAME_DIR .. "3rdparty",
MAME_DIR .. "3rdparty/winpcap/Include",
MAME_DIR .. "3rdparty/bgfx/include",
MAME_DIR .. "3rdparty/bx/include",
MAME_DIR .. "src/osd/sdl",
}
@ -439,69 +341,14 @@ project ("osd_" .. _OPTIONS["osd"])
MAME_DIR .. "src/osd/sdl/window.c",
MAME_DIR .. "src/osd/sdl/output.c",
MAME_DIR .. "src/osd/sdl/watchdog.c",
MAME_DIR .. "src/osd/modules/lib/osdobj_common.c",
MAME_DIR .. "src/osd/modules/render/drawsdl.c",
MAME_DIR .. "src/osd/modules/debugger/none.c",
MAME_DIR .. "src/osd/modules/debugger/debugint.c",
MAME_DIR .. "src/osd/modules/debugger/debugwin.c",
MAME_DIR .. "src/osd/modules/debugger/debugqt.c",
MAME_DIR .. "src/osd/modules/font/font_sdl.c",
MAME_DIR .. "src/osd/modules/font/font_windows.c",
MAME_DIR .. "src/osd/modules/font/font_osx.c",
MAME_DIR .. "src/osd/modules/font/font_none.c",
MAME_DIR .. "src/osd/modules/netdev/taptun.c",
MAME_DIR .. "src/osd/modules/netdev/pcap.c",
MAME_DIR .. "src/osd/modules/netdev/none.c",
MAME_DIR .. "src/osd/modules/midi/portmidi.c",
MAME_DIR .. "src/osd/modules/midi/none.c",
MAME_DIR .. "src/osd/modules/sound/js_sound.c",
MAME_DIR .. "src/osd/modules/sound/direct_sound.c",
MAME_DIR .. "src/osd/modules/sound/sdl_sound.c",
MAME_DIR .. "src/osd/modules/sound/none.c",
}
if _OPTIONS["NO_OPENGL"]~="1" then
files {
MAME_DIR .. "src/osd/modules/render/drawogl.c",
MAME_DIR .. "src/osd/modules/opengl/gl_shader_tool.c",
MAME_DIR .. "src/osd/modules/opengl/gl_shader_mgr.c",
}
end
if _OPTIONS["SDL_LIBVER"]=="sdl2" then
files {
MAME_DIR .. "src/osd/modules/render/draw13.c",
}
end
if USE_QT == 1 then
files {
MAME_DIR .. "src/osd/modules/debugger/qt/debuggerview.c",
MAME_DIR .. "src/osd/modules/debugger/qt/windowqt.c",
MAME_DIR .. "src/osd/modules/debugger/qt/logwindow.c",
MAME_DIR .. "src/osd/modules/debugger/qt/dasmwindow.c",
MAME_DIR .. "src/osd/modules/debugger/qt/mainwindow.c",
MAME_DIR .. "src/osd/modules/debugger/qt/memorywindow.c",
MAME_DIR .. "src/osd/modules/debugger/qt/breakpointswindow.c",
MAME_DIR .. "src/osd/modules/debugger/qt/deviceswindow.c",
MAME_DIR .. "src/osd/modules/debugger/qt/deviceinformationwindow.c",
GEN_DIR .. "osd/modules/debugger/qt/debuggerview.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/windowqt.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/logwindow.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/dasmwindow.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/mainwindow.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/memorywindow.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/breakpointswindow.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/deviceswindow.moc.c",
GEN_DIR .. "osd/modules/debugger/qt/deviceinformationwindow.moc.c",
}
end
if USE_BGFX == 1 then
files {
MAME_DIR .. "src/osd/modules/render/drawbgfx.c",
}
end
project ("ocore_" .. _OPTIONS["osd"])
uuid (os.uuid("ocore_" .. _OPTIONS["osd"]))

View File

@ -8,23 +8,10 @@ if SDL_NETWORK~="" and not _OPTIONS["DONT_USE_NETWORK"] then
}
end
if _OPTIONS["NO_OPENGL"]=="1" then
defines {
"USE_OPENGL=0",
if _OPTIONS["NO_OPENGL"]~="1" and _OPTIONS["USE_DISPATCH_GL"]~="1" and _OPTIONS["MESA_INSTALL_ROOT"] then
includedirs {
path.join(_OPTIONS["MESA_INSTALL_ROOT"],"include"),
}
else
defines {
"USE_OPENGL=1",
}
if _OPTIONS["USE_DISPATCH_GL"]=="1" then
defines {
"USE_DISPATCH_GL=1",
}
elseif _OPTIONS["MESA_INSTALL_ROOT"] then
includedirs {
path.join(_OPTIONS["MESA_INSTALL_ROOT"],"include"),
}
end
end
@ -54,11 +41,7 @@ else
}
end
if _OPTIONS["NO_USE_MIDI"]=="1" then
defines {
"NO_USE_MIDI",
}
elseif _OPTIONS["targetos"]=="linux" then
if _OPTIONS["NO_USE_MIDI"]~="1" and _OPTIONS["targetos"]=="linux" then
buildoptions {
string.gsub(os.outputof("pkg-config --cflags alsa"), '[\r\n]+', ' '),
}
@ -79,12 +62,6 @@ else
}
end
if USE_BGFX == 1 then
defines {
"USE_BGFX"
}
end
defines {
"OSD_SDL",
"SYNC_IMPLEMENTATION=" .. SYNC_IMPLEMENTATION,
@ -124,16 +101,9 @@ if _OPTIONS["targetos"]=="windows" then
defines {
"UNICODE",
"_UNICODE",
"USE_QTDEBUG=" .. USE_QT,
"main=utf8_main",
}
configuration { "mingw*" }
buildoptions {
"-I$(shell qmake -query QT_INSTALL_HEADERS)/QtCore",
"-I$(shell qmake -query QT_INSTALL_HEADERS)/QtGui",
"-I$(shell qmake -query QT_INSTALL_HEADERS)",
}
configuration { "vs*" }
includedirs {
path.join(_OPTIONS["SDL_INSTALL_ROOT"],"include")
@ -141,9 +111,6 @@ if _OPTIONS["targetos"]=="windows" then
configuration { }
elseif _OPTIONS["targetos"]=="linux" then
defines {
"USE_QTDEBUG=" .. USE_QT,
}
buildoptions {
'$(shell pkg-config --cflags QtGui)',
}
@ -151,7 +118,6 @@ elseif _OPTIONS["targetos"]=="macosx" then
defines {
"SDLMAME_MACOSX",
"SDLMAME_DARWIN",
"USE_QTDEBUG=0",
}
elseif _OPTIONS["targetos"]=="freebsd" then
buildoptions {

View File

@ -1,4 +1,9 @@
dofile("modules.lua")
function maintargetosdoptions(_target)
osdmodulestargetconf()
linkoptions {
"-municode",
}
@ -21,15 +26,8 @@ project ("osd_" .. _OPTIONS["osd"])
uuid (os.uuid("osd_" .. _OPTIONS["osd"]))
kind "StaticLib"
removeflags {
"SingleOutputDir",
}
options {
"ForceCPP",
}
dofile("windows_cfg.lua")
osdmodulesbuild()
defines {
"DIRECTINPUT_VERSION=0x0800",
@ -43,9 +41,6 @@ project ("osd_" .. _OPTIONS["osd"])
MAME_DIR .. "src/lib/util",
MAME_DIR .. "src/osd/modules/render",
MAME_DIR .. "3rdparty",
MAME_DIR .. "3rdparty/winpcap/Include",
MAME_DIR .. "3rdparty/bgfx/include",
MAME_DIR .. "3rdparty/bx/include",
}
includedirs {
@ -65,10 +60,6 @@ project ("osd_" .. _OPTIONS["osd"])
MAME_DIR .. "src/osd/windows/window.c",
MAME_DIR .. "src/osd/windows/winmenu.c",
MAME_DIR .. "src/osd/windows/winmain.c",
MAME_DIR .. "src/osd/modules/debugger/none.c",
MAME_DIR .. "src/osd/modules/debugger/debugint.c",
MAME_DIR .. "src/osd/modules/debugger/debugwin.c",
MAME_DIR .. "src/osd/modules/debugger/debugqt.c",
MAME_DIR .. "src/osd/modules/debugger/win/consolewininfo.c",
MAME_DIR .. "src/osd/modules/debugger/win/debugbaseinfo.c",
MAME_DIR .. "src/osd/modules/debugger/win/debugviewinfo.c",
@ -82,31 +73,8 @@ project ("osd_" .. _OPTIONS["osd"])
MAME_DIR .. "src/osd/modules/debugger/win/memorywininfo.c",
MAME_DIR .. "src/osd/modules/debugger/win/pointswininfo.c",
MAME_DIR .. "src/osd/modules/debugger/win/uimetrics.c",
MAME_DIR .. "src/osd/modules/render/drawogl.c",
MAME_DIR .. "src/osd/modules/opengl/gl_shader_tool.c",
MAME_DIR .. "src/osd/modules/opengl/gl_shader_mgr.c",
MAME_DIR .. "src/osd/modules/lib/osdobj_common.c",
MAME_DIR .. "src/osd/modules/font/font_sdl.c",
MAME_DIR .. "src/osd/modules/font/font_windows.c",
MAME_DIR .. "src/osd/modules/font/font_osx.c",
MAME_DIR .. "src/osd/modules/font/font_none.c",
MAME_DIR .. "src/osd/modules/netdev/taptun.c",
MAME_DIR .. "src/osd/modules/netdev/pcap.c",
MAME_DIR .. "src/osd/modules/netdev/none.c",
MAME_DIR .. "src/osd/modules/midi/portmidi.c",
MAME_DIR .. "src/osd/modules/midi/none.c",
MAME_DIR .. "src/osd/modules/sound/js_sound.c",
MAME_DIR .. "src/osd/modules/sound/direct_sound.c",
MAME_DIR .. "src/osd/modules/sound/sdl_sound.c",
MAME_DIR .. "src/osd/modules/sound/none.c",
}
if USE_BGFX == 1 then
files {
MAME_DIR .. "src/osd/modules/render/drawbgfx.c",
}
end
project ("ocore_" .. _OPTIONS["osd"])
uuid (os.uuid("ocore_" .. _OPTIONS["osd"]))

View File

@ -3,10 +3,6 @@ defines {
"_UNICODE",
"OSD_WINDOWS",
"USE_SDL=0",
"USE_QTDEBUG=0",
"USE_OPENGL=1",
"USE_DISPATCH_GL=1",
"DIRECTINPUT_VERSION=0x0800",
"main=utf8_main",
"_WIN32_WINNT=0x0501",
}

View File

@ -115,6 +115,7 @@ static ADDRESS_MAP_START( hexion_map, AS_PROGRAM, 8, hexion_state )
AM_RANGE(0xa000, 0xbfff) AM_RAM
AM_RANGE(0xc000, 0xdffe) AM_READWRITE(hexion_bankedram_r, hexion_bankedram_w)
AM_RANGE(0xdfff, 0xdfff) AM_WRITE(hexion_bankctrl_w)
AM_RANGE(0xe000, 0xe000) AM_NOP
AM_RANGE(0xe800, 0xe87f) AM_DEVREADWRITE("k051649", k051649_device, k051649_waveform_r, k051649_waveform_w)
AM_RANGE(0xe880, 0xe889) AM_DEVWRITE("k051649", k051649_device, k051649_frequency_w)
AM_RANGE(0xe88a, 0xe88e) AM_DEVWRITE("k051649", k051649_device, k051649_volume_w)
@ -134,7 +135,32 @@ static ADDRESS_MAP_START( hexion_map, AS_PROGRAM, 8, hexion_state )
AM_RANGE(0xf540, 0xf540) AM_READ(watchdog_reset_r)
ADDRESS_MAP_END
static ADDRESS_MAP_START( hexionb_map, AS_PROGRAM, 8, hexion_state )
AM_RANGE(0x0000, 0x7fff) AM_ROM
AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1")
AM_RANGE(0xa000, 0xbfff) AM_RAM
AM_RANGE(0xc000, 0xdffe) AM_READWRITE(hexion_bankedram_r, hexion_bankedram_w)
AM_RANGE(0xdfff, 0xdfff) AM_WRITE(hexion_bankctrl_w)
AM_RANGE(0xe000, 0xe000) AM_NOP
AM_RANGE(0xe800, 0xe87f) AM_NOP // all the code to use the k051649 is still present
AM_RANGE(0xe880, 0xe889) AM_NOP // but the bootleg has an additional M6295 @ 0xf5c0 instead
AM_RANGE(0xe88a, 0xe88e) AM_NOP
AM_RANGE(0xe88f, 0xe88f) AM_NOP
AM_RANGE(0xe8e0, 0xe8ff) AM_NOP
AM_RANGE(0xf000, 0xf00f) AM_DEVREADWRITE("k053252", k053252_device, read, write)
AM_RANGE(0xf200, 0xf200) AM_DEVWRITE("oki", okim6295_device, write)
AM_RANGE(0xf400, 0xf400) AM_READ_PORT("DSW1")
AM_RANGE(0xf401, 0xf401) AM_READ_PORT("DSW2")
AM_RANGE(0xf402, 0xf402) AM_READ_PORT("P1")
AM_RANGE(0xf403, 0xf403) AM_READ_PORT("P2")
AM_RANGE(0xf440, 0xf440) AM_READ_PORT("DSW3")
AM_RANGE(0xf441, 0xf441) AM_READ_PORT("SYSTEM")
AM_RANGE(0xf480, 0xf480) AM_WRITE(hexion_bankswitch_w)
AM_RANGE(0xf4c0, 0xf4c0) AM_WRITE(coincntr_w)
AM_RANGE(0xf500, 0xf500) AM_WRITE(hexion_gfxrom_select_w)
AM_RANGE(0xf540, 0xf540) AM_READ(watchdog_reset_r)
AM_RANGE(0xf5c0, 0xf5c0) AM_DEVWRITE("oki2", okim6295_device, write)
ADDRESS_MAP_END
static INPUT_PORTS_START( hexion )
PORT_START("DSW1")
@ -240,6 +266,15 @@ static MACHINE_CONFIG_START( hexion, hexion_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
MACHINE_CONFIG_END
static MACHINE_CONFIG_DERIVED( hexionb, hexion )
MCFG_CPU_MODIFY("maincpu")
MCFG_CPU_PROGRAM_MAP(hexionb_map)
MCFG_DEVICE_REMOVE("k051649")
MCFG_OKIM6295_ADD("oki2", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
MACHINE_CONFIG_END
/***************************************************************************
@ -266,5 +301,27 @@ ROM_START( hexion )
ROM_LOAD( "122a02.13b", 0x0200, 0x0100, CRC(5734305c) SHA1(c72e59acf79a4db1a5a9d827eef899c0675336f2) )
ROM_END
ROM_START( hexionb )
ROM_REGION( 0x34800, "maincpu", 0 ) /* ROMs + space for additional RAM */
ROM_LOAD( "hexionb.u2", 0x00000, 0x20000, CRC(93edc5d4) SHA1(d14c5be85a67eebddda9103bdf19de8c3c05d3af) )
ROM_RELOAD( 0x10000, 0x20000 ) /* banked at 8000-9fff */
ROM_REGION( 0x80000, "gfx1", 0 ) /* addressable by the main CPU */
ROM_LOAD( "hexionb.u30", 0x00000, 0x40000, CRC(22ae55e3) SHA1(41bdc990f69416b639542e2186a3610c16389063) )
ROM_LOAD( "hexionb.u29", 0x40000, 0x40000, CRC(438f4388) SHA1(9e23805c9642a237daeaf106187d1e1e0692434d) )
ROM_REGION( 0x40000, "oki", 0 ) /* OKIM6295 samples */
ROM_LOAD( "hexionb.u16", 0x0000, 0x40000, CRC(bcc831bf) SHA1(c3382065dd0069a4dc0bde2d9931ec85b0bffc73) )
ROM_REGION( 0x40000, "oki2", 0 ) /* OKIM6295 samples */
ROM_LOAD( "hexionb.u18", 0x0000, 0x40000, CRC(c179d315) SHA1(b39d5ec8a90b7ae06763191b8324f32fe1d0ca9b) )
ROM_REGION( 0x0300, "proms", 0 )
ROM_LOAD( "122a04.10b", 0x0000, 0x0100, CRC(506eb8c6) SHA1(3bff7cf286942d8bdbc3998245c3de20981fbecb) )
ROM_LOAD( "122a03.11b", 0x0100, 0x0100, CRC(590c4f64) SHA1(db4b34f8c5fdfea034a94d65873f6fb842f123e9) )
ROM_LOAD( "122a02.13b", 0x0200, 0x0100, CRC(5734305c) SHA1(c72e59acf79a4db1a5a9d827eef899c0675336f2) )
ROM_END
GAME( 1992, hexion, 0, hexion, hexion, driver_device, 0, ROT0, "Konami", "Hexion (Japan ver JAB)", 0 )
GAME( 1992, hexionb,hexion, hexionb,hexion, driver_device, 0, ROT0, "bootleg (Impeuropex Corp.)", "Hexion (Asia ver AAA, bootleg)", 0 ) // we're missing an original Asia AAA
GAME( 1992, hexion, 0, hexion, hexion, driver_device, 0, ROT0, "Konami", "Hexion (Japan ver JAB)", 0 )

View File

@ -6456,6 +6456,7 @@ chqflag // GX717 (c) 1988
chqflagj // GX717 (c) 1988 (Japan)
ultraman // GX910 (c) 1991 Banpresto/Bandai
hexion // GX122 (c) 1992
hexionb // bootleg
lethalen // GX191 (c) 1992
lethalenub // GX191 (c) 1992
lethalenua // GX191 (c) 1992

View File

@ -1344,32 +1344,96 @@ MACHINE_CONFIG_END
* TMS1470NLHL MP1133 (die labeled TMS1400 MP1133)
* 9digit 7seg VFD display + 8 LEDs(4 green, 4 yellow), no sound
x
This is an astrological calculator, and also supports 4-function
calculations. Refer to the official manual on how to use this device.
***************************************************************************/
void hh_tms1k_state::astro_display()
{
// declare 7segs
for (int y = 0; y < 9; y++)
m_display_segmask[y] = 0xff;
display_matrix(8, 10, m_o, m_r);
}
WRITE16_MEMBER(hh_tms1k_state::astro_write_r)
{
// R0-R7: input mux
m_inp_mux = data & 0xff;
// R0-R9: select digit/leds
m_r = data;
astro_display();
}
WRITE16_MEMBER(hh_tms1k_state::astro_write_o)
{
// O0-O7: digit segments/leds
m_o = data;
astro_display();
}
READ8_MEMBER(hh_tms1k_state::astro_read_k)
{
return 0;
return read_inputs(8);
}
static INPUT_PORTS_START( astro )
PORT_START("IN.0") // R0
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_0) PORT_CODE(KEYCODE_0_PAD) PORT_NAME("0")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD) PORT_NAME("5")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_SLASH_PAD) PORT_NAME(UTF8_DIVIDE"/Sun")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START("IN.1") // R1
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD) PORT_NAME("1")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD) PORT_NAME("6")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_ASTERISK) PORT_NAME(UTF8_MULTIPLY"/Mercury")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START("IN.2") // R2
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD) PORT_NAME("2")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_7_PAD) PORT_NAME("7")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_MINUS_PAD) PORT_NAME("-/Venus")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START("IN.3") // R3
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD) PORT_NAME("3")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_8_PAD) PORT_NAME("8")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_PLUS_PAD) PORT_NAME("+/Mars")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START("IN.4") // R4
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD) PORT_NAME("4")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD) PORT_NAME("9")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_ENTER) PORT_CODE(KEYCODE_ENTER_PAD) PORT_NAME("=/Astro")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START("IN.5") // R5
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_Z) PORT_NAME("B1")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_X) PORT_NAME("B2")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_STOP) PORT_CODE(KEYCODE_DEL_PAD) PORT_NAME(".")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START("IN.6") // R6
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_DEL) PORT_NAME("C")
PORT_BIT( 0x0e, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START("IN.7") // R7
PORT_BIT( 0x07, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_CONFNAME( 0x08, 0x08, "Mode" )
PORT_CONFSETTING( 0x00, "Calculator" )
PORT_CONFSETTING( 0x08, "Astro" )
INPUT_PORTS_END
static MACHINE_CONFIG_START( astro, hh_tms1k_state )
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", TMS1470, 400000) // approximation - RC osc. R=4.7K, C=33pf, but unknown RC curve
MCFG_CPU_ADD("maincpu", TMS1470, 450000) // approximation - RC osc. R=4.7K, C=33pf, but unknown RC curve
MCFG_TMS1XXX_READ_K_CB(READ8(hh_tms1k_state, astro_read_k))
MCFG_TMS1XXX_WRITE_R_CB(WRITE16(hh_tms1k_state, astro_write_r))
MCFG_TMS1XXX_WRITE_O_CB(WRITE16(hh_tms1k_state, astro_write_o))
@ -1399,7 +1463,6 @@ MACHINE_CONFIG_END
Press the R key to start, followed by a set of unique numbers and E.
Refer to the official manual for more information.
***************************************************************************/
WRITE16_MEMBER(hh_tms1k_state::comp4_write_r)
@ -2593,7 +2656,7 @@ CONS( 1979, elecdet, 0, 0, elecdet, elecdet, driver_device, 0, "Ide
CONS( 1979, starwbc, 0, 0, starwbc, starwbc, driver_device, 0, "Kenner", "Star Wars - Electronic Battle Command", GAME_SUPPORTS_SAVE )
CONS( 1979, starwbcp, starwbc, 0, starwbc, starwbc, driver_device, 0, "Kenner", "Star Wars - Electronic Battle Command (prototype)", GAME_SUPPORTS_SAVE )
COMP( 1979, astro, 0, 0, astro, astro, driver_device, 0, "Kosmos", "Astro", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW | GAME_NOT_WORKING )
COMP( 1979, astro, 0, 0, astro, astro, driver_device, 0, "Kosmos", "Astro", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW )
CONS( 1977, comp4, 0, 0, comp4, comp4, driver_device, 0, "Milton Bradley", "Comp IV", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW )
CONS( 1978, simon, 0, 0, simon, simon, driver_device, 0, "Milton Bradley", "Simon (Rev. A)", GAME_SUPPORTS_SAVE )

View File

@ -43,6 +43,10 @@ public:
DECLARE_WRITE16_MEMBER(ti1270_write_r);
DECLARE_READ8_MEMBER(ti1270_read_k);
DECLARE_WRITE16_MEMBER(ti1000_write_o);
DECLARE_WRITE16_MEMBER(ti1000_write_r);
DECLARE_READ8_MEMBER(ti1000_read_k);
DECLARE_WRITE16_MEMBER(wizatron_write_o);
DECLARE_WRITE16_MEMBER(wizatron_write_r);
DECLARE_READ8_MEMBER(wizatron_read_k);
@ -395,6 +399,89 @@ MACHINE_CONFIG_END
/***************************************************************************
TI-1000
* TMS1990 MCU labeled TMC1991NL, die labeled 1991-91A
* 8-digit 7seg LED display
***************************************************************************/
WRITE16_MEMBER(ticalc1x_state::ti1000_write_r)
{
// R0-R7: select digit (right-to-left)
UINT8 o = BITSWAP8(m_o,7,4,3,2,1,0,6,5);
display_matrix_seg(8, 8, o, data, 0xff);
}
WRITE16_MEMBER(ticalc1x_state::ti1000_write_o)
{
// O0-O3,O5(?): input mux
// O0-O7: digit segments
m_inp_mux = (data & 0xf) | (data >> 1 & 0x10);
m_o = data;
}
READ8_MEMBER(ticalc1x_state::ti1000_read_k)
{
return read_inputs(5);
}
static INPUT_PORTS_START( ti1000 )
PORT_START("IN.0") // O0
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD) PORT_NAME("1")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD) PORT_NAME("2")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD) PORT_NAME("3")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_PLUS_PAD) PORT_NAME("+")
PORT_START("IN.1") // O1
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD) PORT_NAME("4")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD) PORT_NAME("5")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD) PORT_NAME("6")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_MINUS_PAD) PORT_NAME("-")
PORT_START("IN.2") // O2
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_7_PAD) PORT_NAME("7")
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_8_PAD) PORT_NAME("8")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD) PORT_NAME("9")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_ASTERISK) PORT_NAME(UTF8_MULTIPLY)
// note: even though power buttons are on the matrix, they are not CPU-controlled
PORT_START("IN.3") // O3 or O4?
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_PGDN) PORT_NAME("Off") PORT_CHANGED_MEMBER(DEVICE_SELF, ticalc1x_state, power_button, (void *)false)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_MINUS) PORT_NAME("+/-")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_SLASH) PORT_NAME("%")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_SLASH_PAD) PORT_NAME(UTF8_DIVIDE)
PORT_START("IN.4") // O5
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_PGUP) PORT_CODE(KEYCODE_DEL) PORT_NAME("On/C") PORT_CHANGED_MEMBER(DEVICE_SELF, ticalc1x_state, power_button, (void *)true)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_0) PORT_CODE(KEYCODE_0_PAD) PORT_NAME("0")
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_STOP) PORT_CODE(KEYCODE_DEL_PAD) PORT_NAME(".")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_ENTER) PORT_CODE(KEYCODE_ENTER_PAD) PORT_NAME("=")
INPUT_PORTS_END
static MACHINE_CONFIG_START( ti1000, ticalc1x_state )
/* basic machine hardware */
MCFG_CPU_ADD("maincpu", TMS1990, 250000) // guessed
MCFG_TMS1XXX_READ_K_CB(READ8(ticalc1x_state, ti1000_read_k))
MCFG_TMS1XXX_WRITE_O_CB(WRITE16(ticalc1x_state, ti1000_write_o))
MCFG_TMS1XXX_WRITE_R_CB(WRITE16(ticalc1x_state, ti1000_write_r))
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_tms1k_state, display_decay_tick, attotime::from_msec(1))
MCFG_DEFAULT_LAYOUT(layout_ti1270)
/* no video! */
/* no sound! */
MACHINE_CONFIG_END
/***************************************************************************
TI WIZ-A-TRON
@ -573,7 +660,7 @@ WRITE16_MEMBER(ticalc1x_state::lilprof78_write_r)
WRITE16_MEMBER(ticalc1x_state::lilprof78_write_o)
{
// O0-O3,O5: input mux
// O0-O3,O5(?): input mux
// O0-O6: digit segments A-G
// O7: 6th digit
m_inp_mux = (data & 0xf) | (data >> 1 & 0x10);
@ -656,7 +743,8 @@ WRITE16_MEMBER(ticalc1x_state::ti30_write_r)
m_display_segmask[0] = 0xe2;
// R0-R8: select digit
display_matrix_seg(8, 9, BITSWAP8(m_o,7,5,2,1,4,0,6,3), data, 0xff);
UINT8 o = BITSWAP8(m_o,7,5,2,1,4,0,6,3);
display_matrix_seg(8, 9, o, data, 0xff);
}
WRITE16_MEMBER(ticalc1x_state::ti30_write_o)
@ -919,6 +1007,21 @@ ROM_START( ti1270 )
ROM_END
ROM_START( ti1000 )
ROM_REGION( 0x0400, "maincpu", 0 )
ROM_LOAD( "tmc1991nl", 0x0000, 0x0400, CRC(2da5381d) SHA1(b5dc14553db2068ed48e130e5ec9109930d8cda9) )
ROM_REGION( 782, "maincpu:ipla", 0 )
ROM_LOAD( "tms0970_ti1000_ipla.pla", 0, 782, CRC(05306ef8) SHA1(60a0a3c49ce330bce0c27f15f81d61461d0432ce) )
ROM_REGION( 860, "maincpu:mpla", 0 )
ROM_LOAD( "tms0970_ti1000_mpla.pla", 0, 860, CRC(7f50ab2e) SHA1(bff3be9af0e322986f6e545b567c97d70e135c93) )
ROM_REGION( 352, "maincpu:opla", 0 )
ROM_LOAD( "tms0970_ti1000_opla.pla", 0, 352, CRC(1d82061a) SHA1(90e4a4b0fb3b4ae5965da90479b7fed737ad8831) )
ROM_REGION( 157, "maincpu:spla", 0 )
ROM_LOAD( "tms0970_ti1000_spla.pla", 0, 157, CRC(234ca3a8) SHA1(76844dd87cb380a07c8fcbef143038087e98f138) )
ROM_END
ROM_START( wizatron )
ROM_REGION( 0x0400, "maincpu", 0 )
ROM_LOAD( "za0379", 0x0000, 0x0400, CRC(5a6af094) SHA1(b1f27e1f13f4db3b052dd50fb08dbf9c4d8db26e) )
@ -1014,6 +1117,7 @@ COMP( 1974, tisr16, 0, 0, tisr16, tisr16, driver_device, 0, "Tex
COMP( 1975, tisr16ii, 0, 0, tisr16ii, tisr16ii, driver_device, 0, "Texas Instruments", "SR-16 II", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW )
COMP( 1976, ti1270, 0, 0, ti1270, ti1270, driver_device, 0, "Texas Instruments", "TI-1270", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW )
COMP( 1977, ti1000, 0, 0, ti1000, ti1000, driver_device, 0, "Texas Instruments", "TI-1000", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW )
COMP( 1977, wizatron, 0, 0, wizatron, wizatron, driver_device, 0, "Texas Instruments", "Wiz-A-Tron", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW )
COMP( 1976, lilprof, 0, 0, lilprof, lilprof, driver_device, 0, "Texas Instruments", "Little Professor (1976 version)", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW )
COMP( 1978, lilprof78, lilprof, 0, lilprof78, lilprof78, driver_device, 0, "Texas Instruments", "Little Professor (1978 version)", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW )

View File

@ -101,6 +101,7 @@ public:
DECLARE_WRITE16_MEMBER(starwbc_write_o);
DECLARE_READ8_MEMBER(starwbc_read_k);
void astro_display();
DECLARE_WRITE16_MEMBER(astro_write_r);
DECLARE_WRITE16_MEMBER(astro_write_o);
DECLARE_READ8_MEMBER(astro_read_k);

View File

@ -5,15 +5,60 @@
<element name="static_black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element>
<element name="text_sun"><text string="SUN"><color red="0.66" green="0.66" blue="0.7" /></text></element>
<element name="text_mercury"><text string="MERCURY"><color red="0.66" green="0.66" blue="0.7" /></text></element>
<element name="text_venus"><text string="VENUS"><color red="0.66" green="0.66" blue="0.7" /></text></element>
<element name="text_mars"><text string="MARS"><color red="0.66" green="0.66" blue="0.7" /></text></element>
<element name="led_g" defstate="0">
<disk state="1"><color red="0.25" green="1.0" blue="0.25" /></disk>
<disk state="0"><color red="0.05" green="0.2" blue="0.05" /></disk>
</element>
<element name="led_y" defstate="0">
<disk state="1"><color red="1.0" green="1.0" blue="0.25" /></disk>
<disk state="0"><color red="0.2" green="0.2" blue="0.05" /></disk>
</element>
<element name="digit" defstate="0">
<led7seg><color red="0.2" green="1.0" blue="0.85" /></led7seg>
</element>
<!-- build screen -->
<view name="Internal Layout">
<bounds left="0" right="47" top="0" bottom="53" />
<bounds left="0" right="90" top="0" bottom="32" />
<bezel element="static_black">
<bounds left="0" right="47" top="0" bottom="53" />
<bounds left="0" right="90" top="0" bottom="32" />
</bezel>
<bezel name="digit0" element="digit"><bounds x="0" y="0" width="10" height="15" /></bezel>
<bezel name="digit1" element="digit"><bounds x="10" y="0" width="10" height="15" /></bezel>
<bezel name="digit2" element="digit"><bounds x="20" y="0" width="10" height="15" /></bezel>
<bezel name="digit3" element="digit"><bounds x="30" y="0" width="10" height="15" /></bezel>
<bezel name="digit4" element="digit"><bounds x="40" y="0" width="10" height="15" /></bezel>
<bezel name="digit5" element="digit"><bounds x="50" y="0" width="10" height="15" /></bezel>
<bezel name="digit6" element="digit"><bounds x="60" y="0" width="10" height="15" /></bezel>
<bezel name="digit7" element="digit"><bounds x="70" y="0" width="10" height="15" /></bezel>
<bezel name="digit8" element="digit"><bounds x="80" y="0" width="10" height="15" /></bezel>
<bezel element="text_sun"><bounds x="10" y="22" width="10" height="3" /></bezel>
<bezel element="text_mercury"><bounds x="30" y="22" width="10" height="3" /></bezel>
<bezel element="text_venus"><bounds x="50" y="22" width="10" height="3" /></bezel>
<bezel element="text_mars"><bounds x="70" y="22" width="10" height="3" /></bezel>
<bezel name="lamp90" element="led_g"><bounds x="10" y="27" width="4" height="4" /></bezel>
<bezel name="lamp91" element="led_y"><bounds x="15" y="27" width="4" height="4" /></bezel>
<bezel name="lamp92" element="led_g"><bounds x="30" y="27" width="4" height="4" /></bezel>
<bezel name="lamp93" element="led_y"><bounds x="35" y="27" width="4" height="4" /></bezel>
<bezel name="lamp94" element="led_g"><bounds x="50" y="27" width="4" height="4" /></bezel>
<bezel name="lamp95" element="led_y"><bounds x="55" y="27" width="4" height="4" /></bezel>
<bezel name="lamp96" element="led_g"><bounds x="70" y="27" width="4" height="4" /></bezel>
<bezel name="lamp97" element="led_y"><bounds x="75" y="27" width="4" height="4" /></bezel>
</view>
</mamelayout>

View File

@ -1084,6 +1084,7 @@ lantutor
tisr16 // 1974 SR-16
tisr16ii
ti1270
ti1000
ti30 // 1976 TI-30
tiprog
tibusan1

View File

@ -30,12 +30,6 @@
#define SDL13_COMBINE_RESIZE (0)
#endif
#if defined(NO_DEBUGGER)
#define SDLMAME_HAS_DEBUGGER (0)
#else
#define SDLMAME_HAS_DEBUGGER (1)
#endif
//============================================================
// Defines
//============================================================

View File

@ -397,7 +397,6 @@ static void defines_verbose(void)
MACRO_VERBOSE(LSB_FIRST);
MACRO_VERBOSE(PTR64);
MACRO_VERBOSE(MAME_DEBUG);
MACRO_VERBOSE(NO_DEBUGBER);
MACRO_VERBOSE(BIGENDIAN);
MACRO_VERBOSE(CPP_COMPILE);
MACRO_VERBOSE(SYNC_IMPLEMENTATION);
@ -599,14 +598,6 @@ void sdl_osd_interface::init(running_machine &machine)
defines_verbose();
if (!SDLMAME_HAS_DEBUGGER)
if (machine.debug_flags & DEBUG_FLAG_OSD_ENABLED)
{
osd_printf_error("sdlmame: -debug not supported on X11-less builds\n\n");
osd_exit();
exit(-1);
}
osd_common_t::init_subsystems();
if (options().oslog())