trunk/scripts/src/osd/modules.lua
| r0 | r245365 | |
| 1 | function osdmodulesbuild() |
| 2 | |
| 3 | removeflags { |
| 4 | "SingleOutputDir", |
| 5 | } |
| 6 | |
| 7 | options { |
| 8 | "ForceCPP", |
| 9 | } |
| 10 | |
| 11 | files { |
| 12 | MAME_DIR .. "src/osd/modules/lib/osdobj_common.c", |
| 13 | MAME_DIR .. "src/osd/modules/debugger/none.c", |
| 14 | MAME_DIR .. "src/osd/modules/debugger/debugint.c", |
| 15 | MAME_DIR .. "src/osd/modules/debugger/debugwin.c", |
| 16 | MAME_DIR .. "src/osd/modules/debugger/debugqt.c", |
| 17 | MAME_DIR .. "src/osd/modules/font/font_sdl.c", |
| 18 | MAME_DIR .. "src/osd/modules/font/font_windows.c", |
| 19 | MAME_DIR .. "src/osd/modules/font/font_osx.c", |
| 20 | MAME_DIR .. "src/osd/modules/font/font_none.c", |
| 21 | MAME_DIR .. "src/osd/modules/netdev/taptun.c", |
| 22 | MAME_DIR .. "src/osd/modules/netdev/pcap.c", |
| 23 | MAME_DIR .. "src/osd/modules/netdev/none.c", |
| 24 | MAME_DIR .. "src/osd/modules/midi/portmidi.c", |
| 25 | MAME_DIR .. "src/osd/modules/midi/none.c", |
| 26 | MAME_DIR .. "src/osd/modules/sound/js_sound.c", |
| 27 | MAME_DIR .. "src/osd/modules/sound/direct_sound.c", |
| 28 | MAME_DIR .. "src/osd/modules/sound/sdl_sound.c", |
| 29 | MAME_DIR .. "src/osd/modules/sound/none.c", |
| 30 | } |
| 31 | |
| 32 | if _OPTIONS["targetos"]=="windows" then |
| 33 | includedirs { |
| 34 | MAME_DIR .. "3rdparty/winpcap/Include", |
| 35 | } |
| 36 | end |
| 37 | |
| 38 | if _OPTIONS["NO_OPENGL"]=="1" then |
| 39 | defines { |
| 40 | "USE_OPENGL=0", |
| 41 | } |
| 42 | else |
| 43 | files { |
| 44 | MAME_DIR .. "src/osd/modules/render/drawogl.c", |
| 45 | MAME_DIR .. "src/osd/modules/opengl/gl_shader_tool.c", |
| 46 | MAME_DIR .. "src/osd/modules/opengl/gl_shader_mgr.c", |
| 47 | } |
| 48 | defines { |
| 49 | "USE_OPENGL=1", |
| 50 | } |
| 51 | if _OPTIONS["USE_DISPATCH_GL"]=="1" then |
| 52 | defines { |
| 53 | "USE_DISPATCH_GL=1", |
| 54 | } |
| 55 | end |
| 56 | end |
| 57 | |
| 58 | if USE_BGFX == 1 then |
| 59 | files { |
| 60 | MAME_DIR .. "src/osd/modules/render/drawbgfx.c", |
| 61 | } |
| 62 | defines { |
| 63 | "USE_BGFX" |
| 64 | } |
| 65 | includedirs { |
| 66 | MAME_DIR .. "3rdparty/bgfx/include", |
| 67 | MAME_DIR .. "3rdparty/bx/include", |
| 68 | } |
| 69 | end |
| 70 | |
| 71 | if _OPTIONS["NO_USE_MIDI"]=="1" then |
| 72 | defines { |
| 73 | "NO_USE_MIDI", |
| 74 | } |
| 75 | end |
| 76 | |
| 77 | if _OPTIONS["USE_QTDEBUG"]=="1" then |
| 78 | files { |
| 79 | MAME_DIR .. "src/osd/modules/debugger/qt/debuggerview.c", |
| 80 | MAME_DIR .. "src/osd/modules/debugger/qt/windowqt.c", |
| 81 | MAME_DIR .. "src/osd/modules/debugger/qt/logwindow.c", |
| 82 | MAME_DIR .. "src/osd/modules/debugger/qt/dasmwindow.c", |
| 83 | MAME_DIR .. "src/osd/modules/debugger/qt/mainwindow.c", |
| 84 | MAME_DIR .. "src/osd/modules/debugger/qt/memorywindow.c", |
| 85 | MAME_DIR .. "src/osd/modules/debugger/qt/breakpointswindow.c", |
| 86 | MAME_DIR .. "src/osd/modules/debugger/qt/deviceswindow.c", |
| 87 | MAME_DIR .. "src/osd/modules/debugger/qt/deviceinformationwindow.c", |
| 88 | GEN_DIR .. "osd/modules/debugger/qt/debuggerview.moc.c", |
| 89 | GEN_DIR .. "osd/modules/debugger/qt/windowqt.moc.c", |
| 90 | GEN_DIR .. "osd/modules/debugger/qt/logwindow.moc.c", |
| 91 | GEN_DIR .. "osd/modules/debugger/qt/dasmwindow.moc.c", |
| 92 | GEN_DIR .. "osd/modules/debugger/qt/mainwindow.moc.c", |
| 93 | GEN_DIR .. "osd/modules/debugger/qt/memorywindow.moc.c", |
| 94 | GEN_DIR .. "osd/modules/debugger/qt/breakpointswindow.moc.c", |
| 95 | GEN_DIR .. "osd/modules/debugger/qt/deviceswindow.moc.c", |
| 96 | GEN_DIR .. "osd/modules/debugger/qt/deviceinformationwindow.moc.c", |
| 97 | } |
| 98 | defines { |
| 99 | "USE_QTDEBUG=1", |
| 100 | } |
| 101 | if _OPTIONS["targetos"]=="windows" then |
| 102 | configuration { "mingw*" } |
| 103 | buildoptions { |
| 104 | "-I$(shell qmake -query QT_INSTALL_HEADERS)/QtCore", |
| 105 | "-I$(shell qmake -query QT_INSTALL_HEADERS)/QtGui", |
| 106 | "-I$(shell qmake -query QT_INSTALL_HEADERS)", |
| 107 | } |
| 108 | configuration { } |
| 109 | elseif _OPTIONS["targetos"]=="macosx" then |
| 110 | -- TODO: search path for Qt on OSX platform |
| 111 | else |
| 112 | buildoptions { |
| 113 | string.gsub(os.outputof("pkg-config --cflags QtGui"), '[\r\n]+', ' '), |
| 114 | } |
| 115 | end |
| 116 | else |
| 117 | defines { |
| 118 | "USE_QTDEBUG=0", |
| 119 | } |
| 120 | end |
| 121 | |
| 122 | end |
| 123 | |
| 124 | |
| 125 | function osdmodulestargetconf() |
| 126 | |
| 127 | if _OPTIONS["NO_OPENGL"]~="1" then |
| 128 | if _OPTIONS["targetos"]=="macosx" then |
| 129 | links { |
| 130 | "OpenGL.framework", |
| 131 | } |
| 132 | elseif _OPTIONS["USE_DISPATCH_GL"]~="1" then |
| 133 | if _OPTIONS["targetos"]=="windows" then |
| 134 | links { |
| 135 | "opengl32", |
| 136 | } |
| 137 | else |
| 138 | links { |
| 139 | "GL", |
| 140 | } |
| 141 | end |
| 142 | end |
| 143 | end |
| 144 | |
| 145 | if _OPTIONS["NO_USE_MIDI"]~="1" then |
| 146 | if _OPTIONS["targetos"]=="linux" then |
| 147 | linkoptions { |
| 148 | string.gsub(os.outputof("pkg-config --libs alsa"), '[\r\n]+', ' '), |
| 149 | } |
| 150 | elseif _OPTIONS["targetos"]=="macosx" then |
| 151 | links { |
| 152 | "CoreAudio.framework", |
| 153 | "CoreMIDI.framework", |
| 154 | } |
| 155 | end |
| 156 | end |
| 157 | |
| 158 | if _OPTIONS["USE_QTDEBUG"]=="1" then |
| 159 | if _OPTIONS["targetos"]=="windows" then |
| 160 | linkoptions { |
| 161 | "-L$(shell qmake -query QT_INSTALL_LIBS)", |
| 162 | } |
| 163 | links { |
| 164 | "qtmain", |
| 165 | "QtGui4", |
| 166 | "QtCore4", |
| 167 | } |
| 168 | elseif _OPTIONS["targetos"]=="macosx" then |
| 169 | -- TODO: Qt libs for OSX platform |
| 170 | else |
| 171 | linkoptions { |
| 172 | string.gsub(os.outputof("pkg-config --libs QtGui"), '[\r\n]+', ' '), |
| 173 | } |
| 174 | end |
| 175 | end |
| 176 | |
| 177 | end |
| 178 | |
| 179 | |
| 180 | newoption { |
| 181 | trigger = "DONT_USE_NETWORK", |
| 182 | description = "Disable network access", |
| 183 | } |
| 184 | |
| 185 | newoption { |
| 186 | trigger = "NO_OPENGL", |
| 187 | description = "Disable use of OpenGL", |
| 188 | allowed = { |
| 189 | { "0", "Enable OpenGL" }, |
| 190 | { "1", "Disable OpenGL" }, |
| 191 | }, |
| 192 | } |
| 193 | |
| 194 | if not _OPTIONS["NO_OPENGL"] then |
| 195 | if _OPTIONS["targetos"]=="os2" then |
| 196 | _OPTIONS["NO_OPENGL"] = "1" |
| 197 | else |
| 198 | _OPTIONS["NO_OPENGL"] = "0" |
| 199 | end |
| 200 | end |
| 201 | |
| 202 | newoption { |
| 203 | trigger = "USE_DISPATCH_GL", |
| 204 | description = "Use GL-dispatching", |
| 205 | allowed = { |
| 206 | { "0", "Link to OpenGL library" }, |
| 207 | { "1", "Use GL-dispatching" }, |
| 208 | }, |
| 209 | } |
| 210 | |
| 211 | if not _OPTIONS["USE_DISPATCH_GL"] then |
| 212 | if USE_BGFX == 1 then |
| 213 | _OPTIONS["USE_DISPATCH_GL"] = "0" |
| 214 | else |
| 215 | _OPTIONS["USE_DISPATCH_GL"] = "1" |
| 216 | end |
| 217 | end |
| 218 | |
| 219 | newoption { |
| 220 | trigger = "NO_USE_MIDI", |
| 221 | description = "Disable MIDI I/O", |
| 222 | allowed = { |
| 223 | { "0", "Enable MIDI" }, |
| 224 | { "1", "Disable MIDI" }, |
| 225 | }, |
| 226 | } |
| 227 | |
| 228 | if not _OPTIONS["NO_USE_MIDI"] then |
| 229 | 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 |
| 230 | _OPTIONS["NO_USE_MIDI"] = "1" |
| 231 | else |
| 232 | _OPTIONS["NO_USE_MIDI"] = "0" |
| 233 | end |
| 234 | end |
| 235 | |
| 236 | newoption { |
| 237 | trigger = "USE_QTDEBUG", |
| 238 | description = "Use QT debugger", |
| 239 | allowed = { |
| 240 | { "0", "Don't use Qt debugger" }, |
| 241 | { "1", "Use Qt debugger" }, |
| 242 | }, |
| 243 | } |
| 244 | |
| 245 | if not _OPTIONS["USE_QTDEBUG"] then |
| 246 | 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 |
| 247 | _OPTIONS["USE_QTDEBUG"] = "0" |
| 248 | else |
| 249 | _OPTIONS["USE_QTDEBUG"] = "1" |
| 250 | end |
| 251 | end |
trunk/scripts/src/osd/sdl.lua
| r245364 | r245365 | |
| 1 | dofile("modules.lua") |
| 2 | |
| 3 | |
| 1 | 4 | function maintargetosdoptions(_target) |
| 5 | osdmodulestargetconf() |
| 6 | |
| 2 | 7 | if _OPTIONS["USE_DISPATCH_GL"]~="1" and _OPTIONS["MESA_INSTALL_ROOT"] then |
| 3 | 8 | libdirs { |
| 4 | 9 | path.join(_OPTIONS["MESA_INSTALL_ROOT"],"lib"), |
| r245364 | r245365 | |
| 32 | 37 | "SDL_ttf", |
| 33 | 38 | } |
| 34 | 39 | end |
| 35 | | if _OPTIONS["NO_OPENGL"]~="1" and _OPTIONS["USE_DISPATCH_GL"]~="1" then |
| 36 | | links { |
| 37 | | "GL" |
| 38 | | } |
| 39 | | end |
| 40 | 40 | linkoptions { |
| 41 | 41 | string.gsub(os.outputof("pkg-config --libs fontconfig"), '[\r\n]+', ' '), |
| 42 | 42 | } |
| 43 | 43 | end |
| 44 | 44 | |
| 45 | 45 | if _OPTIONS["targetos"]=="windows" then |
| 46 | | if _OPTIONS["NO_OPENGL"]~="1" and _OPTIONS["USE_DISPATCH_GL"]~="1" then |
| 47 | | links { |
| 48 | | "opengl32" |
| 49 | | } |
| 50 | | end |
| 51 | 46 | configuration { "mingw*" } |
| 52 | 47 | linkoptions{ |
| 53 | 48 | "-municode", |
| r245364 | r245365 | |
| 65 | 60 | "SDL2", |
| 66 | 61 | } |
| 67 | 62 | configuration {} |
| 68 | | |
| 69 | | if (USE_QT == 1) then |
| 70 | | linkoptions{ |
| 71 | | "-L$(shell qmake -query QT_INSTALL_LIBS)", |
| 72 | | } |
| 73 | | links { |
| 74 | | "qtmain", |
| 75 | | "QtGui4", |
| 76 | | "QtCore4", |
| 77 | | } |
| 78 | | end |
| 79 | | elseif _OPTIONS["targetos"]=="linux" then |
| 80 | | if USE_QT == 1 then |
| 81 | | linkoptions { |
| 82 | | "$(shell pkg-config --libs QtGui)", |
| 83 | | } |
| 84 | | links { |
| 85 | | "QtGui", |
| 86 | | "QtCore", |
| 87 | | } |
| 88 | | end |
| 89 | | if _OPTIONS["NO_USE_MIDI"]~="1" then |
| 90 | | linkoptions { |
| 91 | | string.gsub(os.outputof("pkg-config --libs alsa"), '[\r\n]+', ' '), |
| 92 | | } |
| 93 | | end |
| 94 | | elseif _OPTIONS["targetos"]=="macosx" then |
| 95 | | if _OPTIONS["NO_USE_MIDI"]~="1" then |
| 96 | | links { |
| 97 | | "CoreAudio.framework", |
| 98 | | "CoreMIDI.framework", |
| 99 | | } |
| 100 | | end |
| 101 | 63 | elseif _OPTIONS["targetos"]=="haiku" then |
| 102 | 64 | links { |
| 103 | 65 | "network", |
| r245364 | r245365 | |
| 122 | 84 | |
| 123 | 85 | |
| 124 | 86 | newoption { |
| 125 | | trigger = "NO_OPENGL", |
| 126 | | description = "Disable use of OpenGL", |
| 127 | | allowed = { |
| 128 | | { "0", "Enable OpenGL" }, |
| 129 | | { "1", "Disable OpenGL" }, |
| 130 | | }, |
| 131 | | } |
| 132 | | |
| 133 | | if not _OPTIONS["NO_OPENGL"] then |
| 134 | | if _OPTIONS["targetos"]=="os2" then |
| 135 | | _OPTIONS["NO_OPENGL"] = "1" |
| 136 | | else |
| 137 | | _OPTIONS["NO_OPENGL"] = "0" |
| 138 | | end |
| 139 | | end |
| 140 | | |
| 141 | | newoption { |
| 142 | | trigger = "USE_DISPATCH_GL", |
| 143 | | description = "Use GL-dispatching (takes precedence over MESA_INSTALL_ROOT)", |
| 144 | | allowed = { |
| 145 | | { "0", "Link to OpenGL library" }, |
| 146 | | { "1", "Use GL-dispatching" }, |
| 147 | | }, |
| 148 | | } |
| 149 | | |
| 150 | | if not _OPTIONS["USE_DISPATCH_GL"] then |
| 151 | | if USE_BGFX == 1 then |
| 152 | | _OPTIONS["USE_DISPATCH_GL"] = "0" |
| 153 | | else |
| 154 | | _OPTIONS["USE_DISPATCH_GL"] = "1" |
| 155 | | end |
| 156 | | end |
| 157 | | |
| 158 | | newoption { |
| 159 | 87 | trigger = "MESA_INSTALL_ROOT", |
| 160 | | description = "link against specific GL-Library - also adds rpath to executable", |
| 88 | description = "link against specific GL-Library - also adds rpath to executable (overridden by USE_DISPATCH_GL)", |
| 161 | 89 | } |
| 162 | 90 | |
| 163 | 91 | newoption { |
| r245364 | r245365 | |
| 191 | 119 | end |
| 192 | 120 | |
| 193 | 121 | newoption { |
| 194 | | trigger = "NO_USE_MIDI", |
| 195 | | description = "Disable MIDI I/O", |
| 196 | | allowed = { |
| 197 | | { "0", "Enable MIDI" }, |
| 198 | | { "1", "Disable MIDI" }, |
| 199 | | }, |
| 200 | | } |
| 201 | | |
| 202 | | if not _OPTIONS["NO_USE_MIDI"] then |
| 203 | | 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 |
| 204 | | _OPTIONS["NO_USE_MIDI"] = "1" |
| 205 | | else |
| 206 | | _OPTIONS["NO_USE_MIDI"] = "0" |
| 207 | | end |
| 208 | | end |
| 209 | | |
| 210 | | newoption { |
| 211 | 122 | trigger = "SDL_LIBVER", |
| 212 | 123 | description = "Choose SDL version", |
| 213 | 124 | allowed = { |
| r245364 | r245365 | |
| 295 | 206 | SYNC_IMPLEMENTATION = "os2" |
| 296 | 207 | end |
| 297 | 208 | |
| 298 | | if _OPTIONS["NO_X11"]~="1" then |
| 299 | | libdirs { |
| 300 | | "/usr/X11/lib", |
| 301 | | "/usr/X11R6/lib", |
| 302 | | "/usr/openwin/lib", |
| 303 | | } |
| 304 | | if _OPTIONS["SDL_LIBVER"]=="sdl" then |
| 305 | | links { |
| 306 | | "X11", |
| 307 | | } |
| 308 | | end |
| 309 | | end |
| 310 | | |
| 311 | 209 | if BASE_TARGETOS=="unix" then |
| 312 | 210 | if _OPTIONS["targetos"]=="macosx" then |
| 313 | 211 | links { |
| 314 | 212 | "Cocoa.framework", |
| 315 | | "OpenGL.framework", |
| 316 | 213 | } |
| 317 | 214 | if _OPTIONS["MACOSX_USE_LIBSDL"]~="1" then |
| 318 | 215 | linkoptions { |
| r245364 | r245365 | |
| 333 | 230 | } |
| 334 | 231 | end |
| 335 | 232 | else |
| 233 | if _OPTIONS["NO_X11"]=="1" then |
| 234 | _OPTIONS["USE_QTDEBUG"] = "0" |
| 235 | USE_BGFX = 0 |
| 236 | else |
| 237 | libdirs { |
| 238 | "/usr/X11/lib", |
| 239 | "/usr/X11R6/lib", |
| 240 | "/usr/openwin/lib", |
| 241 | } |
| 242 | if _OPTIONS["SDL_LIBVER"]=="sdl" then |
| 243 | links { |
| 244 | "X11", |
| 245 | } |
| 246 | end |
| 247 | end |
| 336 | 248 | linkoptions { |
| 337 | 249 | string.gsub(os.outputof(sdlconfigcmd() .. " --libs"), '[\r\n]+', ' '), |
| 338 | 250 | } |
| r245364 | r245365 | |
| 374 | 286 | uuid (os.uuid("osd_" .. _OPTIONS["osd"])) |
| 375 | 287 | kind "StaticLib" |
| 376 | 288 | |
| 377 | | removeflags { |
| 378 | | "SingleOutputDir", |
| 379 | | } |
| 380 | | |
| 381 | | options { |
| 382 | | "ForceCPP", |
| 383 | | } |
| 384 | | |
| 385 | 289 | dofile("sdl_cfg.lua") |
| 386 | | |
| 290 | osdmodulesbuild() |
| 291 | |
| 387 | 292 | includedirs { |
| 388 | 293 | MAME_DIR .. "src/emu", |
| 389 | 294 | MAME_DIR .. "src/osd", |
| r245364 | r245365 | |
| 391 | 296 | MAME_DIR .. "src/lib/util", |
| 392 | 297 | MAME_DIR .. "src/osd/modules/render", |
| 393 | 298 | MAME_DIR .. "3rdparty", |
| 394 | | MAME_DIR .. "3rdparty/winpcap/Include", |
| 395 | | MAME_DIR .. "3rdparty/bgfx/include", |
| 396 | | MAME_DIR .. "3rdparty/bx/include", |
| 397 | 299 | MAME_DIR .. "src/osd/sdl", |
| 398 | 300 | } |
| 399 | 301 | |
| r245364 | r245365 | |
| 439 | 341 | MAME_DIR .. "src/osd/sdl/window.c", |
| 440 | 342 | MAME_DIR .. "src/osd/sdl/output.c", |
| 441 | 343 | MAME_DIR .. "src/osd/sdl/watchdog.c", |
| 442 | | MAME_DIR .. "src/osd/modules/lib/osdobj_common.c", |
| 443 | 344 | MAME_DIR .. "src/osd/modules/render/drawsdl.c", |
| 444 | | MAME_DIR .. "src/osd/modules/debugger/none.c", |
| 445 | | MAME_DIR .. "src/osd/modules/debugger/debugint.c", |
| 446 | | MAME_DIR .. "src/osd/modules/debugger/debugwin.c", |
| 447 | | MAME_DIR .. "src/osd/modules/debugger/debugqt.c", |
| 448 | | MAME_DIR .. "src/osd/modules/font/font_sdl.c", |
| 449 | | MAME_DIR .. "src/osd/modules/font/font_windows.c", |
| 450 | | MAME_DIR .. "src/osd/modules/font/font_osx.c", |
| 451 | | MAME_DIR .. "src/osd/modules/font/font_none.c", |
| 452 | | MAME_DIR .. "src/osd/modules/netdev/taptun.c", |
| 453 | | MAME_DIR .. "src/osd/modules/netdev/pcap.c", |
| 454 | | MAME_DIR .. "src/osd/modules/netdev/none.c", |
| 455 | | MAME_DIR .. "src/osd/modules/midi/portmidi.c", |
| 456 | | MAME_DIR .. "src/osd/modules/midi/none.c", |
| 457 | | MAME_DIR .. "src/osd/modules/sound/js_sound.c", |
| 458 | | MAME_DIR .. "src/osd/modules/sound/direct_sound.c", |
| 459 | | MAME_DIR .. "src/osd/modules/sound/sdl_sound.c", |
| 460 | | MAME_DIR .. "src/osd/modules/sound/none.c", |
| 461 | 345 | } |
| 462 | | if _OPTIONS["NO_OPENGL"]~="1" then |
| 463 | | files { |
| 464 | | MAME_DIR .. "src/osd/modules/render/drawogl.c", |
| 465 | | MAME_DIR .. "src/osd/modules/opengl/gl_shader_tool.c", |
| 466 | | MAME_DIR .. "src/osd/modules/opengl/gl_shader_mgr.c", |
| 467 | | } |
| 468 | | end |
| 469 | 346 | if _OPTIONS["SDL_LIBVER"]=="sdl2" then |
| 470 | 347 | files { |
| 471 | 348 | MAME_DIR .. "src/osd/modules/render/draw13.c", |
| 472 | 349 | } |
| 473 | 350 | end |
| 474 | 351 | |
| 475 | | if USE_QT == 1 then |
| 476 | | files { |
| 477 | | MAME_DIR .. "src/osd/modules/debugger/qt/debuggerview.c", |
| 478 | | MAME_DIR .. "src/osd/modules/debugger/qt/windowqt.c", |
| 479 | | MAME_DIR .. "src/osd/modules/debugger/qt/logwindow.c", |
| 480 | | MAME_DIR .. "src/osd/modules/debugger/qt/dasmwindow.c", |
| 481 | | MAME_DIR .. "src/osd/modules/debugger/qt/mainwindow.c", |
| 482 | | MAME_DIR .. "src/osd/modules/debugger/qt/memorywindow.c", |
| 483 | | MAME_DIR .. "src/osd/modules/debugger/qt/breakpointswindow.c", |
| 484 | | MAME_DIR .. "src/osd/modules/debugger/qt/deviceswindow.c", |
| 485 | | MAME_DIR .. "src/osd/modules/debugger/qt/deviceinformationwindow.c", |
| 486 | 352 | |
| 487 | | GEN_DIR .. "osd/modules/debugger/qt/debuggerview.moc.c", |
| 488 | | GEN_DIR .. "osd/modules/debugger/qt/windowqt.moc.c", |
| 489 | | GEN_DIR .. "osd/modules/debugger/qt/logwindow.moc.c", |
| 490 | | GEN_DIR .. "osd/modules/debugger/qt/dasmwindow.moc.c", |
| 491 | | GEN_DIR .. "osd/modules/debugger/qt/mainwindow.moc.c", |
| 492 | | GEN_DIR .. "osd/modules/debugger/qt/memorywindow.moc.c", |
| 493 | | GEN_DIR .. "osd/modules/debugger/qt/breakpointswindow.moc.c", |
| 494 | | GEN_DIR .. "osd/modules/debugger/qt/deviceswindow.moc.c", |
| 495 | | GEN_DIR .. "osd/modules/debugger/qt/deviceinformationwindow.moc.c", |
| 496 | | } |
| 497 | | end |
| 498 | | |
| 499 | | if USE_BGFX == 1 then |
| 500 | | files { |
| 501 | | MAME_DIR .. "src/osd/modules/render/drawbgfx.c", |
| 502 | | } |
| 503 | | end |
| 504 | | |
| 505 | | |
| 506 | 353 | project ("ocore_" .. _OPTIONS["osd"]) |
| 507 | 354 | uuid (os.uuid("ocore_" .. _OPTIONS["osd"])) |
| 508 | 355 | kind "StaticLib" |
trunk/scripts/src/osd/windows.lua
| r245364 | r245365 | |
| 1 | dofile("modules.lua") |
| 2 | |
| 3 | |
| 1 | 4 | function maintargetosdoptions(_target) |
| 5 | osdmodulestargetconf() |
| 6 | |
| 2 | 7 | linkoptions { |
| 3 | 8 | "-municode", |
| 4 | 9 | } |
| r245364 | r245365 | |
| 21 | 26 | uuid (os.uuid("osd_" .. _OPTIONS["osd"])) |
| 22 | 27 | kind "StaticLib" |
| 23 | 28 | |
| 24 | | removeflags { |
| 25 | | "SingleOutputDir", |
| 26 | | } |
| 27 | | |
| 28 | | options { |
| 29 | | "ForceCPP", |
| 30 | | } |
| 31 | | |
| 32 | 29 | dofile("windows_cfg.lua") |
| 30 | osdmodulesbuild() |
| 33 | 31 | |
| 34 | 32 | defines { |
| 35 | 33 | "DIRECTINPUT_VERSION=0x0800", |
| r245364 | r245365 | |
| 43 | 41 | MAME_DIR .. "src/lib/util", |
| 44 | 42 | MAME_DIR .. "src/osd/modules/render", |
| 45 | 43 | MAME_DIR .. "3rdparty", |
| 46 | | MAME_DIR .. "3rdparty/winpcap/Include", |
| 47 | | MAME_DIR .. "3rdparty/bgfx/include", |
| 48 | | MAME_DIR .. "3rdparty/bx/include", |
| 49 | 44 | } |
| 50 | 45 | |
| 51 | 46 | includedirs { |
| r245364 | r245365 | |
| 65 | 60 | MAME_DIR .. "src/osd/windows/window.c", |
| 66 | 61 | MAME_DIR .. "src/osd/windows/winmenu.c", |
| 67 | 62 | MAME_DIR .. "src/osd/windows/winmain.c", |
| 68 | | MAME_DIR .. "src/osd/modules/debugger/none.c", |
| 69 | | MAME_DIR .. "src/osd/modules/debugger/debugint.c", |
| 70 | | MAME_DIR .. "src/osd/modules/debugger/debugwin.c", |
| 71 | | MAME_DIR .. "src/osd/modules/debugger/debugqt.c", |
| 72 | 63 | MAME_DIR .. "src/osd/modules/debugger/win/consolewininfo.c", |
| 73 | 64 | MAME_DIR .. "src/osd/modules/debugger/win/debugbaseinfo.c", |
| 74 | 65 | MAME_DIR .. "src/osd/modules/debugger/win/debugviewinfo.c", |
| r245364 | r245365 | |
| 82 | 73 | MAME_DIR .. "src/osd/modules/debugger/win/memorywininfo.c", |
| 83 | 74 | MAME_DIR .. "src/osd/modules/debugger/win/pointswininfo.c", |
| 84 | 75 | MAME_DIR .. "src/osd/modules/debugger/win/uimetrics.c", |
| 85 | | MAME_DIR .. "src/osd/modules/render/drawogl.c", |
| 86 | | MAME_DIR .. "src/osd/modules/opengl/gl_shader_tool.c", |
| 87 | | MAME_DIR .. "src/osd/modules/opengl/gl_shader_mgr.c", |
| 88 | | MAME_DIR .. "src/osd/modules/lib/osdobj_common.c", |
| 89 | | MAME_DIR .. "src/osd/modules/font/font_sdl.c", |
| 90 | | MAME_DIR .. "src/osd/modules/font/font_windows.c", |
| 91 | | MAME_DIR .. "src/osd/modules/font/font_osx.c", |
| 92 | | MAME_DIR .. "src/osd/modules/font/font_none.c", |
| 93 | | MAME_DIR .. "src/osd/modules/netdev/taptun.c", |
| 94 | | MAME_DIR .. "src/osd/modules/netdev/pcap.c", |
| 95 | | MAME_DIR .. "src/osd/modules/netdev/none.c", |
| 96 | | MAME_DIR .. "src/osd/modules/midi/portmidi.c", |
| 97 | | MAME_DIR .. "src/osd/modules/midi/none.c", |
| 98 | | MAME_DIR .. "src/osd/modules/sound/js_sound.c", |
| 99 | | MAME_DIR .. "src/osd/modules/sound/direct_sound.c", |
| 100 | | MAME_DIR .. "src/osd/modules/sound/sdl_sound.c", |
| 101 | | MAME_DIR .. "src/osd/modules/sound/none.c", |
| 102 | 76 | } |
| 103 | 77 | |
| 104 | | if USE_BGFX == 1 then |
| 105 | | files { |
| 106 | | MAME_DIR .. "src/osd/modules/render/drawbgfx.c", |
| 107 | | } |
| 108 | | end |
| 109 | 78 | |
| 110 | | |
| 111 | 79 | project ("ocore_" .. _OPTIONS["osd"]) |
| 112 | 80 | uuid (os.uuid("ocore_" .. _OPTIONS["osd"])) |
| 113 | 81 | kind "StaticLib" |
trunk/src/mame/drivers/hexion.c
| r245364 | r245365 | |
| 115 | 115 | AM_RANGE(0xa000, 0xbfff) AM_RAM |
| 116 | 116 | AM_RANGE(0xc000, 0xdffe) AM_READWRITE(hexion_bankedram_r, hexion_bankedram_w) |
| 117 | 117 | AM_RANGE(0xdfff, 0xdfff) AM_WRITE(hexion_bankctrl_w) |
| 118 | AM_RANGE(0xe000, 0xe000) AM_NOP |
| 118 | 119 | AM_RANGE(0xe800, 0xe87f) AM_DEVREADWRITE("k051649", k051649_device, k051649_waveform_r, k051649_waveform_w) |
| 119 | 120 | AM_RANGE(0xe880, 0xe889) AM_DEVWRITE("k051649", k051649_device, k051649_frequency_w) |
| 120 | 121 | AM_RANGE(0xe88a, 0xe88e) AM_DEVWRITE("k051649", k051649_device, k051649_volume_w) |
| r245364 | r245365 | |
| 134 | 135 | AM_RANGE(0xf540, 0xf540) AM_READ(watchdog_reset_r) |
| 135 | 136 | ADDRESS_MAP_END |
| 136 | 137 | |
| 138 | static ADDRESS_MAP_START( hexionb_map, AS_PROGRAM, 8, hexion_state ) |
| 139 | AM_RANGE(0x0000, 0x7fff) AM_ROM |
| 140 | AM_RANGE(0x8000, 0x9fff) AM_ROMBANK("bank1") |
| 141 | AM_RANGE(0xa000, 0xbfff) AM_RAM |
| 142 | AM_RANGE(0xc000, 0xdffe) AM_READWRITE(hexion_bankedram_r, hexion_bankedram_w) |
| 143 | AM_RANGE(0xdfff, 0xdfff) AM_WRITE(hexion_bankctrl_w) |
| 144 | AM_RANGE(0xe000, 0xe000) AM_NOP |
| 145 | AM_RANGE(0xe800, 0xe87f) AM_NOP // all the code to use the k051649 is still present |
| 146 | AM_RANGE(0xe880, 0xe889) AM_NOP // but the bootleg has an additional M6295 @ 0xf5c0 instead |
| 147 | AM_RANGE(0xe88a, 0xe88e) AM_NOP |
| 148 | AM_RANGE(0xe88f, 0xe88f) AM_NOP |
| 149 | AM_RANGE(0xe8e0, 0xe8ff) AM_NOP |
| 150 | AM_RANGE(0xf000, 0xf00f) AM_DEVREADWRITE("k053252", k053252_device, read, write) |
| 151 | AM_RANGE(0xf200, 0xf200) AM_DEVWRITE("oki", okim6295_device, write) |
| 152 | AM_RANGE(0xf400, 0xf400) AM_READ_PORT("DSW1") |
| 153 | AM_RANGE(0xf401, 0xf401) AM_READ_PORT("DSW2") |
| 154 | AM_RANGE(0xf402, 0xf402) AM_READ_PORT("P1") |
| 155 | AM_RANGE(0xf403, 0xf403) AM_READ_PORT("P2") |
| 156 | AM_RANGE(0xf440, 0xf440) AM_READ_PORT("DSW3") |
| 157 | AM_RANGE(0xf441, 0xf441) AM_READ_PORT("SYSTEM") |
| 158 | AM_RANGE(0xf480, 0xf480) AM_WRITE(hexion_bankswitch_w) |
| 159 | AM_RANGE(0xf4c0, 0xf4c0) AM_WRITE(coincntr_w) |
| 160 | AM_RANGE(0xf500, 0xf500) AM_WRITE(hexion_gfxrom_select_w) |
| 161 | AM_RANGE(0xf540, 0xf540) AM_READ(watchdog_reset_r) |
| 162 | AM_RANGE(0xf5c0, 0xf5c0) AM_DEVWRITE("oki2", okim6295_device, write) |
| 163 | ADDRESS_MAP_END |
| 137 | 164 | |
| 138 | | |
| 139 | 165 | static INPUT_PORTS_START( hexion ) |
| 140 | 166 | PORT_START("DSW1") |
| 141 | 167 | KONAMI_COINAGE_LOC(DEF_STR( Free_Play ), DEF_STR( Free_Play ), SW1) |
| r245364 | r245365 | |
| 240 | 266 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5) |
| 241 | 267 | MACHINE_CONFIG_END |
| 242 | 268 | |
| 269 | static MACHINE_CONFIG_DERIVED( hexionb, hexion ) |
| 270 | MCFG_CPU_MODIFY("maincpu") |
| 271 | MCFG_CPU_PROGRAM_MAP(hexionb_map) |
| 243 | 272 | |
| 273 | MCFG_DEVICE_REMOVE("k051649") |
| 244 | 274 | |
| 275 | MCFG_OKIM6295_ADD("oki2", 1056000, OKIM6295_PIN7_HIGH) // clock frequency & pin 7 not verified |
| 276 | MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5) |
| 277 | MACHINE_CONFIG_END |
| 278 | |
| 279 | |
| 245 | 280 | /*************************************************************************** |
| 246 | 281 | |
| 247 | 282 | Game driver(s) |
| r245364 | r245365 | |
| 266 | 301 | ROM_LOAD( "122a02.13b", 0x0200, 0x0100, CRC(5734305c) SHA1(c72e59acf79a4db1a5a9d827eef899c0675336f2) ) |
| 267 | 302 | ROM_END |
| 268 | 303 | |
| 304 | ROM_START( hexionb ) |
| 305 | ROM_REGION( 0x34800, "maincpu", 0 ) /* ROMs + space for additional RAM */ |
| 306 | ROM_LOAD( "hexionb.u2", 0x00000, 0x20000, CRC(93edc5d4) SHA1(d14c5be85a67eebddda9103bdf19de8c3c05d3af) ) |
| 307 | ROM_RELOAD( 0x10000, 0x20000 ) /* banked at 8000-9fff */ |
| 269 | 308 | |
| 270 | | GAME( 1992, hexion, 0, hexion, hexion, driver_device, 0, ROT0, "Konami", "Hexion (Japan ver JAB)", 0 ) |
| 309 | ROM_REGION( 0x80000, "gfx1", 0 ) /* addressable by the main CPU */ |
| 310 | ROM_LOAD( "hexionb.u30", 0x00000, 0x40000, CRC(22ae55e3) SHA1(41bdc990f69416b639542e2186a3610c16389063) ) |
| 311 | ROM_LOAD( "hexionb.u29", 0x40000, 0x40000, CRC(438f4388) SHA1(9e23805c9642a237daeaf106187d1e1e0692434d) ) |
| 312 | |
| 313 | ROM_REGION( 0x40000, "oki", 0 ) /* OKIM6295 samples */ |
| 314 | ROM_LOAD( "hexionb.u16", 0x0000, 0x40000, CRC(bcc831bf) SHA1(c3382065dd0069a4dc0bde2d9931ec85b0bffc73) ) |
| 315 | |
| 316 | ROM_REGION( 0x40000, "oki2", 0 ) /* OKIM6295 samples */ |
| 317 | ROM_LOAD( "hexionb.u18", 0x0000, 0x40000, CRC(c179d315) SHA1(b39d5ec8a90b7ae06763191b8324f32fe1d0ca9b) ) |
| 318 | |
| 319 | ROM_REGION( 0x0300, "proms", 0 ) |
| 320 | ROM_LOAD( "122a04.10b", 0x0000, 0x0100, CRC(506eb8c6) SHA1(3bff7cf286942d8bdbc3998245c3de20981fbecb) ) |
| 321 | ROM_LOAD( "122a03.11b", 0x0100, 0x0100, CRC(590c4f64) SHA1(db4b34f8c5fdfea034a94d65873f6fb842f123e9) ) |
| 322 | ROM_LOAD( "122a02.13b", 0x0200, 0x0100, CRC(5734305c) SHA1(c72e59acf79a4db1a5a9d827eef899c0675336f2) ) |
| 323 | ROM_END |
| 324 | |
| 325 | GAME( 1992, hexion, 0, hexion, hexion, driver_device, 0, ROT0, "Konami", "Hexion (Japan ver JAB)", 0 ) |
| 326 | 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 |
| 327 | |
trunk/src/mess/drivers/hh_tms1k.c
| r245364 | r245365 | |
| 1344 | 1344 | * TMS1470NLHL MP1133 (die labeled TMS1400 MP1133) |
| 1345 | 1345 | * 9digit 7seg VFD display + 8 LEDs(4 green, 4 yellow), no sound |
| 1346 | 1346 | |
| 1347 | | x |
| 1347 | This is an astrological calculator, and also supports 4-function |
| 1348 | calculations. Refer to the official manual on how to use this device. |
| 1348 | 1349 | |
| 1349 | 1350 | ***************************************************************************/ |
| 1350 | 1351 | |
| 1352 | void hh_tms1k_state::astro_display() |
| 1353 | { |
| 1354 | // declare 7segs |
| 1355 | for (int y = 0; y < 9; y++) |
| 1356 | m_display_segmask[y] = 0xff; |
| 1357 | |
| 1358 | display_matrix(8, 10, m_o, m_r); |
| 1359 | } |
| 1360 | |
| 1351 | 1361 | WRITE16_MEMBER(hh_tms1k_state::astro_write_r) |
| 1352 | 1362 | { |
| 1363 | // R0-R7: input mux |
| 1364 | m_inp_mux = data & 0xff; |
| 1365 | |
| 1366 | // R0-R9: select digit/leds |
| 1367 | m_r = data; |
| 1368 | astro_display(); |
| 1353 | 1369 | } |
| 1354 | 1370 | |
| 1355 | 1371 | WRITE16_MEMBER(hh_tms1k_state::astro_write_o) |
| 1356 | 1372 | { |
| 1373 | // O0-O7: digit segments/leds |
| 1374 | m_o = data; |
| 1375 | astro_display(); |
| 1357 | 1376 | } |
| 1358 | 1377 | |
| 1359 | 1378 | READ8_MEMBER(hh_tms1k_state::astro_read_k) |
| 1360 | 1379 | { |
| 1361 | | return 0; |
| 1380 | return read_inputs(8); |
| 1362 | 1381 | } |
| 1363 | 1382 | |
| 1364 | 1383 | |
| 1365 | 1384 | static INPUT_PORTS_START( astro ) |
| 1385 | PORT_START("IN.0") // R0 |
| 1386 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_0) PORT_CODE(KEYCODE_0_PAD) PORT_NAME("0") |
| 1387 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD) PORT_NAME("5") |
| 1388 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_SLASH_PAD) PORT_NAME(UTF8_DIVIDE"/Sun") |
| 1389 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 1390 | |
| 1391 | PORT_START("IN.1") // R1 |
| 1392 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD) PORT_NAME("1") |
| 1393 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD) PORT_NAME("6") |
| 1394 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_ASTERISK) PORT_NAME(UTF8_MULTIPLY"/Mercury") |
| 1395 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 1396 | |
| 1397 | PORT_START("IN.2") // R2 |
| 1398 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD) PORT_NAME("2") |
| 1399 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_7_PAD) PORT_NAME("7") |
| 1400 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_MINUS_PAD) PORT_NAME("-/Venus") |
| 1401 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 1402 | |
| 1403 | PORT_START("IN.3") // R3 |
| 1404 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD) PORT_NAME("3") |
| 1405 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_8_PAD) PORT_NAME("8") |
| 1406 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_PLUS_PAD) PORT_NAME("+/Mars") |
| 1407 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 1408 | |
| 1409 | PORT_START("IN.4") // R4 |
| 1410 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD) PORT_NAME("4") |
| 1411 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD) PORT_NAME("9") |
| 1412 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_ENTER) PORT_CODE(KEYCODE_ENTER_PAD) PORT_NAME("=/Astro") |
| 1413 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 1414 | |
| 1415 | PORT_START("IN.5") // R5 |
| 1416 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_Z) PORT_NAME("B1") |
| 1417 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_X) PORT_NAME("B2") |
| 1418 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_STOP) PORT_CODE(KEYCODE_DEL_PAD) PORT_NAME(".") |
| 1419 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 1420 | |
| 1421 | PORT_START("IN.6") // R6 |
| 1422 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_DEL) PORT_NAME("C") |
| 1423 | PORT_BIT( 0x0e, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 1424 | |
| 1425 | PORT_START("IN.7") // R7 |
| 1426 | PORT_BIT( 0x07, IP_ACTIVE_HIGH, IPT_UNUSED ) |
| 1427 | PORT_CONFNAME( 0x08, 0x08, "Mode" ) |
| 1428 | PORT_CONFSETTING( 0x00, "Calculator" ) |
| 1429 | PORT_CONFSETTING( 0x08, "Astro" ) |
| 1366 | 1430 | INPUT_PORTS_END |
| 1367 | 1431 | |
| 1368 | 1432 | |
| 1369 | 1433 | static MACHINE_CONFIG_START( astro, hh_tms1k_state ) |
| 1370 | 1434 | |
| 1371 | 1435 | /* basic machine hardware */ |
| 1372 | | MCFG_CPU_ADD("maincpu", TMS1470, 400000) // approximation - RC osc. R=4.7K, C=33pf, but unknown RC curve |
| 1436 | MCFG_CPU_ADD("maincpu", TMS1470, 450000) // approximation - RC osc. R=4.7K, C=33pf, but unknown RC curve |
| 1373 | 1437 | MCFG_TMS1XXX_READ_K_CB(READ8(hh_tms1k_state, astro_read_k)) |
| 1374 | 1438 | MCFG_TMS1XXX_WRITE_R_CB(WRITE16(hh_tms1k_state, astro_write_r)) |
| 1375 | 1439 | MCFG_TMS1XXX_WRITE_O_CB(WRITE16(hh_tms1k_state, astro_write_o)) |
| r245364 | r245365 | |
| 1399 | 1463 | Press the R key to start, followed by a set of unique numbers and E. |
| 1400 | 1464 | Refer to the official manual for more information. |
| 1401 | 1465 | |
| 1402 | | |
| 1403 | 1466 | ***************************************************************************/ |
| 1404 | 1467 | |
| 1405 | 1468 | WRITE16_MEMBER(hh_tms1k_state::comp4_write_r) |
| r245364 | r245365 | |
| 2593 | 2656 | CONS( 1979, starwbc, 0, 0, starwbc, starwbc, driver_device, 0, "Kenner", "Star Wars - Electronic Battle Command", GAME_SUPPORTS_SAVE ) |
| 2594 | 2657 | CONS( 1979, starwbcp, starwbc, 0, starwbc, starwbc, driver_device, 0, "Kenner", "Star Wars - Electronic Battle Command (prototype)", GAME_SUPPORTS_SAVE ) |
| 2595 | 2658 | |
| 2596 | | COMP( 1979, astro, 0, 0, astro, astro, driver_device, 0, "Kosmos", "Astro", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW | GAME_NOT_WORKING ) |
| 2659 | COMP( 1979, astro, 0, 0, astro, astro, driver_device, 0, "Kosmos", "Astro", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW ) |
| 2597 | 2660 | |
| 2598 | 2661 | CONS( 1977, comp4, 0, 0, comp4, comp4, driver_device, 0, "Milton Bradley", "Comp IV", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW ) |
| 2599 | 2662 | CONS( 1978, simon, 0, 0, simon, simon, driver_device, 0, "Milton Bradley", "Simon (Rev. A)", GAME_SUPPORTS_SAVE ) |
trunk/src/mess/drivers/ticalc1x.c
| r245364 | r245365 | |
| 43 | 43 | DECLARE_WRITE16_MEMBER(ti1270_write_r); |
| 44 | 44 | DECLARE_READ8_MEMBER(ti1270_read_k); |
| 45 | 45 | |
| 46 | DECLARE_WRITE16_MEMBER(ti1000_write_o); |
| 47 | DECLARE_WRITE16_MEMBER(ti1000_write_r); |
| 48 | DECLARE_READ8_MEMBER(ti1000_read_k); |
| 49 | |
| 46 | 50 | DECLARE_WRITE16_MEMBER(wizatron_write_o); |
| 47 | 51 | DECLARE_WRITE16_MEMBER(wizatron_write_r); |
| 48 | 52 | DECLARE_READ8_MEMBER(wizatron_read_k); |
| r245364 | r245365 | |
| 397 | 401 | |
| 398 | 402 | /*************************************************************************** |
| 399 | 403 | |
| 404 | TI-1000 |
| 405 | * TMS1990 MCU labeled TMC1991NL, die labeled 1991-91A |
| 406 | * 8-digit 7seg LED display |
| 407 | |
| 408 | ***************************************************************************/ |
| 409 | |
| 410 | WRITE16_MEMBER(ticalc1x_state::ti1000_write_r) |
| 411 | { |
| 412 | // R0-R7: select digit (right-to-left) |
| 413 | UINT8 o = BITSWAP8(m_o,7,4,3,2,1,0,6,5); |
| 414 | display_matrix_seg(8, 8, o, data, 0xff); |
| 415 | } |
| 416 | |
| 417 | WRITE16_MEMBER(ticalc1x_state::ti1000_write_o) |
| 418 | { |
| 419 | // O0-O3,O5(?): input mux |
| 420 | // O0-O7: digit segments |
| 421 | m_inp_mux = (data & 0xf) | (data >> 1 & 0x10); |
| 422 | m_o = data; |
| 423 | } |
| 424 | |
| 425 | READ8_MEMBER(ticalc1x_state::ti1000_read_k) |
| 426 | { |
| 427 | return read_inputs(5); |
| 428 | } |
| 429 | |
| 430 | |
| 431 | static INPUT_PORTS_START( ti1000 ) |
| 432 | PORT_START("IN.0") // O0 |
| 433 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_1) PORT_CODE(KEYCODE_1_PAD) PORT_NAME("1") |
| 434 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_2) PORT_CODE(KEYCODE_2_PAD) PORT_NAME("2") |
| 435 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_3) PORT_CODE(KEYCODE_3_PAD) PORT_NAME("3") |
| 436 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_PLUS_PAD) PORT_NAME("+") |
| 437 | |
| 438 | PORT_START("IN.1") // O1 |
| 439 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_4) PORT_CODE(KEYCODE_4_PAD) PORT_NAME("4") |
| 440 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_5) PORT_CODE(KEYCODE_5_PAD) PORT_NAME("5") |
| 441 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_6) PORT_CODE(KEYCODE_6_PAD) PORT_NAME("6") |
| 442 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_MINUS_PAD) PORT_NAME("-") |
| 443 | |
| 444 | PORT_START("IN.2") // O2 |
| 445 | PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_7) PORT_CODE(KEYCODE_7_PAD) PORT_NAME("7") |
| 446 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_8) PORT_CODE(KEYCODE_8_PAD) PORT_NAME("8") |
| 447 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_9) PORT_CODE(KEYCODE_9_PAD) PORT_NAME("9") |
| 448 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_ASTERISK) PORT_NAME(UTF8_MULTIPLY) |
| 449 | |
| 450 | // note: even though power buttons are on the matrix, they are not CPU-controlled |
| 451 | PORT_START("IN.3") // O3 or O4? |
| 452 | 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) |
| 453 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_MINUS) PORT_NAME("+/-") |
| 454 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_SLASH) PORT_NAME("%") |
| 455 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_SLASH_PAD) PORT_NAME(UTF8_DIVIDE) |
| 456 | |
| 457 | PORT_START("IN.4") // O5 |
| 458 | 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) |
| 459 | PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_0) PORT_CODE(KEYCODE_0_PAD) PORT_NAME("0") |
| 460 | PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_STOP) PORT_CODE(KEYCODE_DEL_PAD) PORT_NAME(".") |
| 461 | PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_KEYBOARD ) PORT_CODE(KEYCODE_ENTER) PORT_CODE(KEYCODE_ENTER_PAD) PORT_NAME("=") |
| 462 | INPUT_PORTS_END |
| 463 | |
| 464 | |
| 465 | static MACHINE_CONFIG_START( ti1000, ticalc1x_state ) |
| 466 | |
| 467 | /* basic machine hardware */ |
| 468 | MCFG_CPU_ADD("maincpu", TMS1990, 250000) // guessed |
| 469 | MCFG_TMS1XXX_READ_K_CB(READ8(ticalc1x_state, ti1000_read_k)) |
| 470 | MCFG_TMS1XXX_WRITE_O_CB(WRITE16(ticalc1x_state, ti1000_write_o)) |
| 471 | MCFG_TMS1XXX_WRITE_R_CB(WRITE16(ticalc1x_state, ti1000_write_r)) |
| 472 | |
| 473 | MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_tms1k_state, display_decay_tick, attotime::from_msec(1)) |
| 474 | MCFG_DEFAULT_LAYOUT(layout_ti1270) |
| 475 | |
| 476 | /* no video! */ |
| 477 | |
| 478 | /* no sound! */ |
| 479 | MACHINE_CONFIG_END |
| 480 | |
| 481 | |
| 482 | |
| 483 | |
| 484 | |
| 485 | /*************************************************************************** |
| 486 | |
| 400 | 487 | TI WIZ-A-TRON |
| 401 | 488 | * TMS0970 MCU labeled TMC0907NL ZA0379, DP0907BS. die labeled 0970F-07B |
| 402 | 489 | * 9-digit 7seg LED display(one custom digit) |
| r245364 | r245365 | |
| 573 | 660 | |
| 574 | 661 | WRITE16_MEMBER(ticalc1x_state::lilprof78_write_o) |
| 575 | 662 | { |
| 576 | | // O0-O3,O5: input mux |
| 663 | // O0-O3,O5(?): input mux |
| 577 | 664 | // O0-O6: digit segments A-G |
| 578 | 665 | // O7: 6th digit |
| 579 | 666 | m_inp_mux = (data & 0xf) | (data >> 1 & 0x10); |
| r245364 | r245365 | |
| 656 | 743 | m_display_segmask[0] = 0xe2; |
| 657 | 744 | |
| 658 | 745 | // R0-R8: select digit |
| 659 | | display_matrix_seg(8, 9, BITSWAP8(m_o,7,5,2,1,4,0,6,3), data, 0xff); |
| 746 | UINT8 o = BITSWAP8(m_o,7,5,2,1,4,0,6,3); |
| 747 | display_matrix_seg(8, 9, o, data, 0xff); |
| 660 | 748 | } |
| 661 | 749 | |
| 662 | 750 | WRITE16_MEMBER(ticalc1x_state::ti30_write_o) |
| r245364 | r245365 | |
| 919 | 1007 | ROM_END |
| 920 | 1008 | |
| 921 | 1009 | |
| 1010 | ROM_START( ti1000 ) |
| 1011 | ROM_REGION( 0x0400, "maincpu", 0 ) |
| 1012 | ROM_LOAD( "tmc1991nl", 0x0000, 0x0400, CRC(2da5381d) SHA1(b5dc14553db2068ed48e130e5ec9109930d8cda9) ) |
| 1013 | |
| 1014 | ROM_REGION( 782, "maincpu:ipla", 0 ) |
| 1015 | ROM_LOAD( "tms0970_ti1000_ipla.pla", 0, 782, CRC(05306ef8) SHA1(60a0a3c49ce330bce0c27f15f81d61461d0432ce) ) |
| 1016 | ROM_REGION( 860, "maincpu:mpla", 0 ) |
| 1017 | ROM_LOAD( "tms0970_ti1000_mpla.pla", 0, 860, CRC(7f50ab2e) SHA1(bff3be9af0e322986f6e545b567c97d70e135c93) ) |
| 1018 | ROM_REGION( 352, "maincpu:opla", 0 ) |
| 1019 | ROM_LOAD( "tms0970_ti1000_opla.pla", 0, 352, CRC(1d82061a) SHA1(90e4a4b0fb3b4ae5965da90479b7fed737ad8831) ) |
| 1020 | ROM_REGION( 157, "maincpu:spla", 0 ) |
| 1021 | ROM_LOAD( "tms0970_ti1000_spla.pla", 0, 157, CRC(234ca3a8) SHA1(76844dd87cb380a07c8fcbef143038087e98f138) ) |
| 1022 | ROM_END |
| 1023 | |
| 1024 | |
| 922 | 1025 | ROM_START( wizatron ) |
| 923 | 1026 | ROM_REGION( 0x0400, "maincpu", 0 ) |
| 924 | 1027 | ROM_LOAD( "za0379", 0x0000, 0x0400, CRC(5a6af094) SHA1(b1f27e1f13f4db3b052dd50fb08dbf9c4d8db26e) ) |
| r245364 | r245365 | |
| 1014 | 1117 | COMP( 1975, tisr16ii, 0, 0, tisr16ii, tisr16ii, driver_device, 0, "Texas Instruments", "SR-16 II", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW ) |
| 1015 | 1118 | |
| 1016 | 1119 | COMP( 1976, ti1270, 0, 0, ti1270, ti1270, driver_device, 0, "Texas Instruments", "TI-1270", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW ) |
| 1120 | COMP( 1977, ti1000, 0, 0, ti1000, ti1000, driver_device, 0, "Texas Instruments", "TI-1000", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW ) |
| 1017 | 1121 | COMP( 1977, wizatron, 0, 0, wizatron, wizatron, driver_device, 0, "Texas Instruments", "Wiz-A-Tron", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW ) |
| 1018 | 1122 | COMP( 1976, lilprof, 0, 0, lilprof, lilprof, driver_device, 0, "Texas Instruments", "Little Professor (1976 version)", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW ) |
| 1019 | 1123 | COMP( 1978, lilprof78, lilprof, 0, lilprof78, lilprof78, driver_device, 0, "Texas Instruments", "Little Professor (1978 version)", GAME_SUPPORTS_SAVE | GAME_NO_SOUND_HW ) |
trunk/src/mess/layout/astro.lay
| r245364 | r245365 | |
| 5 | 5 | |
| 6 | 6 | <element name="static_black"><rect><color red="0.0" green="0.0" blue="0.0" /></rect></element> |
| 7 | 7 | |
| 8 | <element name="text_sun"><text string="SUN"><color red="0.66" green="0.66" blue="0.7" /></text></element> |
| 9 | <element name="text_mercury"><text string="MERCURY"><color red="0.66" green="0.66" blue="0.7" /></text></element> |
| 10 | <element name="text_venus"><text string="VENUS"><color red="0.66" green="0.66" blue="0.7" /></text></element> |
| 11 | <element name="text_mars"><text string="MARS"><color red="0.66" green="0.66" blue="0.7" /></text></element> |
| 8 | 12 | |
| 13 | <element name="led_g" defstate="0"> |
| 14 | <disk state="1"><color red="0.25" green="1.0" blue="0.25" /></disk> |
| 15 | <disk state="0"><color red="0.05" green="0.2" blue="0.05" /></disk> |
| 16 | </element> |
| 17 | <element name="led_y" defstate="0"> |
| 18 | <disk state="1"><color red="1.0" green="1.0" blue="0.25" /></disk> |
| 19 | <disk state="0"><color red="0.2" green="0.2" blue="0.05" /></disk> |
| 20 | </element> |
| 21 | |
| 22 | <element name="digit" defstate="0"> |
| 23 | <led7seg><color red="0.2" green="1.0" blue="0.85" /></led7seg> |
| 24 | </element> |
| 25 | |
| 26 | |
| 9 | 27 | <!-- build screen --> |
| 10 | 28 | |
| 11 | 29 | <view name="Internal Layout"> |
| 12 | | <bounds left="0" right="47" top="0" bottom="53" /> |
| 30 | <bounds left="0" right="90" top="0" bottom="32" /> |
| 13 | 31 | <bezel element="static_black"> |
| 14 | | <bounds left="0" right="47" top="0" bottom="53" /> |
| 32 | <bounds left="0" right="90" top="0" bottom="32" /> |
| 15 | 33 | </bezel> |
| 16 | 34 | |
| 35 | <bezel name="digit0" element="digit"><bounds x="0" y="0" width="10" height="15" /></bezel> |
| 36 | <bezel name="digit1" element="digit"><bounds x="10" y="0" width="10" height="15" /></bezel> |
| 37 | <bezel name="digit2" element="digit"><bounds x="20" y="0" width="10" height="15" /></bezel> |
| 38 | <bezel name="digit3" element="digit"><bounds x="30" y="0" width="10" height="15" /></bezel> |
| 39 | <bezel name="digit4" element="digit"><bounds x="40" y="0" width="10" height="15" /></bezel> |
| 40 | <bezel name="digit5" element="digit"><bounds x="50" y="0" width="10" height="15" /></bezel> |
| 41 | <bezel name="digit6" element="digit"><bounds x="60" y="0" width="10" height="15" /></bezel> |
| 42 | <bezel name="digit7" element="digit"><bounds x="70" y="0" width="10" height="15" /></bezel> |
| 43 | <bezel name="digit8" element="digit"><bounds x="80" y="0" width="10" height="15" /></bezel> |
| 17 | 44 | |
| 45 | <bezel element="text_sun"><bounds x="10" y="22" width="10" height="3" /></bezel> |
| 46 | <bezel element="text_mercury"><bounds x="30" y="22" width="10" height="3" /></bezel> |
| 47 | <bezel element="text_venus"><bounds x="50" y="22" width="10" height="3" /></bezel> |
| 48 | <bezel element="text_mars"><bounds x="70" y="22" width="10" height="3" /></bezel> |
| 49 | |
| 50 | <bezel name="lamp90" element="led_g"><bounds x="10" y="27" width="4" height="4" /></bezel> |
| 51 | <bezel name="lamp91" element="led_y"><bounds x="15" y="27" width="4" height="4" /></bezel> |
| 52 | |
| 53 | <bezel name="lamp92" element="led_g"><bounds x="30" y="27" width="4" height="4" /></bezel> |
| 54 | <bezel name="lamp93" element="led_y"><bounds x="35" y="27" width="4" height="4" /></bezel> |
| 55 | |
| 56 | <bezel name="lamp94" element="led_g"><bounds x="50" y="27" width="4" height="4" /></bezel> |
| 57 | <bezel name="lamp95" element="led_y"><bounds x="55" y="27" width="4" height="4" /></bezel> |
| 58 | |
| 59 | <bezel name="lamp96" element="led_g"><bounds x="70" y="27" width="4" height="4" /></bezel> |
| 60 | <bezel name="lamp97" element="led_y"><bounds x="75" y="27" width="4" height="4" /></bezel> |
| 61 | |
| 62 | |
| 18 | 63 | </view> |
| 19 | 64 | </mamelayout> |