mirror of
https://github.com/holub/mame
synced 2025-10-04 16:34:53 +03:00
srcclean (nw)
This commit is contained in:
parent
30ae22c2e2
commit
0ed2d2684e
0
hash/a800.xml
Executable file → Normal file
0
hash/a800.xml
Executable file → Normal file
0
hash/a800_flop.xml
Executable file → Normal file
0
hash/a800_flop.xml
Executable file → Normal file
@ -721,7 +721,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="ec0061">
|
||||
<description>J-Pop Mix Volume 27 (Japan) (EC0061-JPM)</description>
|
||||
<year>2001</year>
|
||||
@ -743,7 +743,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="ec0063">
|
||||
<description>J-Pop Mix Volume 29 (Japan) (EC0063-JPM)</description>
|
||||
<year>2001</year>
|
||||
@ -767,7 +767,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="ec0066">
|
||||
<description>J-Pop Mix Volume 31 (Japan) (EC0066-JPM)</description>
|
||||
<year>2001</year>
|
||||
@ -778,7 +778,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="ec0067">
|
||||
<description>J-Pop Mix Volume 32 (Japan) (EC0067-JPM)</description>
|
||||
<year>2001</year>
|
||||
@ -811,7 +811,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="ec0070">
|
||||
<description>J-Pop Mix Volume 34 (Japan) (EC0070-JPM)</description>
|
||||
<year>2001</year>
|
||||
@ -866,7 +866,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="ec0075">
|
||||
<description>J-Pop Mix Volume 38 (Japan) (EC0075-JPM)</description>
|
||||
<year>2001</year>
|
||||
@ -876,7 +876,7 @@
|
||||
<rom name="ec0075-jpm.u1" size="0x100000" crc="cbb8e615" sha1="5fbbfbf4278ce7e289d859e389808b155bb16e4a" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
</software>
|
||||
|
||||
<software name="ec0076">
|
||||
<description>J-Pop Mix Volume 39 (Japan) (EC0076-JPM)</description>
|
||||
@ -888,7 +888,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="ec0077">
|
||||
<description>Artist Selection Volume 15 - unknown artist (Japan) (EC0077-ATS)</description>
|
||||
<year>2001</year>
|
||||
@ -898,8 +898,8 @@
|
||||
<rom name="ec0077-ats.u1" size="0x100000" crc="368b0daf" sha1="8274a06ca2e3dbcd5176ac1b916be4a5a0df12ef" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
</software>
|
||||
|
||||
<software name="ec0078">
|
||||
<description>J-Pop Mix Volume 40 (Japan) (EC0078-JPM)</description>
|
||||
<year>2001</year>
|
||||
|
@ -8,7 +8,7 @@
|
||||
Japanese cart listing (by A code) (A-x on cartridge)
|
||||
|
||||
These are for use with e-pitch / e-kara (e-pitch internal ROM is the same as e-kara Japan, just button layout is changed)
|
||||
|
||||
|
||||
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10109392860
|
||||
|
||||
A-1 Pichi Pichi Pitch vol.1 / ぴちぴちピッチvol.1
|
||||
@ -33,7 +33,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="a4" supported="no">
|
||||
<description>A-4 Pichi Pichi Pitch Pure Chapter 1 (Japan)</description>
|
||||
<year>2004</year>
|
||||
@ -44,7 +44,7 @@
|
||||
<rom name="ekaraa4.bin" size="0x200000" crc="03dcc45a" sha1="ae884128c09b4fc7521f0010bbe9624419a3d0b8" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
</software>
|
||||
|
||||
<software name="a5">
|
||||
<description>A-5 Pichi Pichi Pitch Karaoke Party (Japan)</description>
|
||||
@ -67,6 +67,6 @@
|
||||
<rom name="ekaraa7.bin" size="0x200000" crc="5b59900e" sha1="fdb8148211f00d0119b9ad082bf8fd348d509800" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
</software>
|
||||
|
||||
</softwarelist>
|
||||
|
@ -9,7 +9,7 @@
|
||||
A secondary 4-digit naming scheme BHxxxx (no extension) appears on a sticker on the cartridge PCB only
|
||||
|
||||
For e-kara only
|
||||
|
||||
|
||||
These are probably all just titled 'Best Hit Collection'
|
||||
|
||||
BH-01 (unknown)
|
||||
@ -33,7 +33,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="bh03">
|
||||
<description>BH-03 Best Hit Collection (Japan)</description>
|
||||
<year>2005</year>
|
||||
@ -43,7 +43,7 @@
|
||||
<rom name="bh03.bin" size="0x100000" crc="d17cafd4" sha1="b74fd0f77a726547d4001d4177a5ccd2ea35536a" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
</software>
|
||||
|
||||
<software name="bh05">
|
||||
<description>BH-05 Best Hit Collection (Japan)</description>
|
||||
@ -65,6 +65,6 @@
|
||||
<rom name="bh06.bin" size="0x100000" crc="6e264ecb" sha1="6c3e4253565242c0c6dcdab7698f5b1e28544b2e" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
</software>
|
||||
|
||||
</softwarelist>
|
||||
|
@ -18,7 +18,7 @@
|
||||
|
||||
*D-1 DC0001-BHT BHT (Best Artists?) Volume 8 (most other BHT carts are in G series, or P series)
|
||||
*D-2 DC0002-BAT BAT Volume 6
|
||||
*D-3 DC0003-BHT BHT (Best Artists?) Volume 9
|
||||
*D-3 DC0003-BHT BHT (Best Artists?) Volume 9
|
||||
D-4 DC0004-TPJ TV Pop Volume 8
|
||||
*D-5 DC0005-TPJ TV Pop Volume 9
|
||||
D-6 DC0006-BHT BHT (Best Artists?) Volume 10
|
||||
|
@ -110,7 +110,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="gc0008a" cloneof="gc0008">
|
||||
<description>MIN Volume 1 (Japan) (GC0008-MIN) (set 2)</description>
|
||||
<year>2001</year>
|
||||
@ -120,7 +120,7 @@
|
||||
<rom name="gc0008-min(alt).u1" size="0x200000" crc="b34d1721" sha1="3621f02423f55c43d1b16855c01189719ddbcb6e" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
</software>
|
||||
|
||||
<!-- Notes from Sean
|
||||
|
||||
@ -133,7 +133,7 @@
|
||||
e-Kara units, Popira, Taiko de Popira and DDR all of them have pin 4 of the cart connector going to VCC and pin 32 going to ground. So none of them can communicate with the SEEPROM in G10
|
||||
|
||||
Popira 2 however can make use of these pins -->
|
||||
|
||||
|
||||
<software name="gc0010">
|
||||
<description>BAT Volume 4 (Japan) (GC0010-BAT)</description>
|
||||
<year>2002</year>
|
||||
@ -183,7 +183,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="gc0017">
|
||||
<description>TV Pop Volume 6 (Japan) (GC0017-TPJ)</description>
|
||||
<year>2002</year>
|
||||
@ -194,6 +194,6 @@
|
||||
<rom name="gc0017-tpj.u1" size="0x100000" crc="2c7d00a2" sha1="5976b9f3a95afb3b23f1d1d996de0b7aa41ee25c" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
</software>
|
||||
|
||||
</softwarelist>
|
||||
|
@ -54,7 +54,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="mc0006">
|
||||
<description>KSM Mini Volume 2 (Japan) (MC0006-KSM)</description>
|
||||
<year>2003</year>
|
||||
@ -64,7 +64,7 @@
|
||||
<rom name="mc0006-ksm.u1" size="0x080000" crc="6d3c8c02" sha1="568a0e156a2189156149578277b6d615fe4e157f" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
</software>
|
||||
|
||||
<software name="mc0012">
|
||||
<description>Artist Mini Volume 7 (untranslated artist) (Japan) (MC0012-ATM)</description>
|
||||
@ -87,7 +87,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="mc0014">
|
||||
<description>Artist Mini Volume 8 (BoA) (Japan) (MC0014-ATM)</description>
|
||||
<year>2003</year>
|
||||
@ -97,6 +97,6 @@
|
||||
<rom name="mc0014-atm.u1" size="0x080000" crc="170e02af" sha1="02b38146db7d74727f7dccf6dcc3d004979210a1" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
</software>
|
||||
|
||||
</softwarelist>
|
||||
|
@ -50,7 +50,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="pc0003">
|
||||
<description>ENB Volume 1 (Japan) (PC0003-ENB)</description>
|
||||
<year>2001</year>
|
||||
|
@ -44,7 +44,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="sp03">
|
||||
<description>SP-03 Super Cartridge (Japan)</description>
|
||||
<year>2004</year>
|
||||
@ -55,8 +55,8 @@
|
||||
<rom name="sp03.u1" size="0x200000" crc="cd7dbbaf" sha1="cc62c10f8f83015e4c472bc41e9a1fd7ac497655" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
</software>
|
||||
|
||||
<software name="sp04">
|
||||
<description>SP-04 Super Cartridge (Japan)</description>
|
||||
<year>2004</year>
|
||||
@ -67,6 +67,6 @@
|
||||
<rom name="sp04.u1" size="0x200000" crc="77818ddb" sha1="708980b1ae30864bd3395ef663de1c57ecbc113c" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
</software>
|
||||
|
||||
</softwarelist>
|
||||
|
@ -27,9 +27,9 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<!-- this one has some songs programmed into it (TODO, list them here for reference) -->
|
||||
|
||||
|
||||
<software name="ekaraweb12a">
|
||||
<description>e-kara Web cartridge 12M (used, with 7 Songs) (Japan)</description>
|
||||
<year>2003</year>
|
||||
@ -39,6 +39,6 @@
|
||||
<rom name="ekaraweb3.bin" size="0x100000" crc="a6a095b9" sha1="709d7edb5799b97127502408bec698663b902462" offset="0" />
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
</software>
|
||||
|
||||
</softwarelist>
|
||||
|
@ -546,7 +546,7 @@ C1066 - ??
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="famous7">
|
||||
<description>Famous 7</description>
|
||||
<year>1993</year>
|
||||
|
24
hash/ibm5150.xml
Executable file → Normal file
24
hash/ibm5150.xml
Executable file → Normal file
@ -3592,7 +3592,7 @@ Known PC Booter Games Not Dumped, Or Dumped and Lost when Demonlord's Site went
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="strecalc">
|
||||
<description>StretchCalc</description>
|
||||
<year>1983</year>
|
||||
@ -7132,7 +7132,7 @@ has been replaced with an all-zero block. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="brdtale">
|
||||
<description>The Bard's Tale - Tales of the Unknown (5.25")</description>
|
||||
<year>1987</year>
|
||||
@ -7409,7 +7409,7 @@ has been replaced with an all-zero block. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="budokan">
|
||||
<description>Budokan - The Martial Spirit</description>
|
||||
<year>1989</year>
|
||||
@ -7420,7 +7420,7 @@ has been replaced with an all-zero block. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="budokana" cloneof="budokan">
|
||||
<description>Budokan - The Martial Spirit (Big Games release)</description>
|
||||
<year>1989</year>
|
||||
@ -8171,7 +8171,7 @@ has been replaced with an all-zero block. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="gunboata" cloneof="gunboat">
|
||||
<description>Gunboat: River Combat Simulation (Hit Squad release)</description>
|
||||
<year>1990</year>
|
||||
@ -8357,7 +8357,7 @@ has been replaced with an all-zero block. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="shogun">
|
||||
<description>James Clavell's Shogun (set 1)</description>
|
||||
<year>1987</year>
|
||||
@ -9271,7 +9271,7 @@ has been replaced with an all-zero block. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="monopoly">
|
||||
<description>Monopoly v2.00 (Shareware)</description>
|
||||
<year>1989</year>
|
||||
@ -9298,7 +9298,7 @@ has been replaced with an all-zero block. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="montypyt35" cloneof="montypyt">
|
||||
<description>Monty Python's Flying Circus (3.5")</description>
|
||||
<year>1990</year>
|
||||
@ -10279,7 +10279,7 @@ has been replaced with an all-zero block. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="bartvssma" cloneof="bartvssm">
|
||||
<description>The Simpsons - Bart vs. the Space Mutants (Hit-Squad release)</description>
|
||||
<year>1991</year>
|
||||
@ -11038,7 +11038,7 @@ has been replaced with an all-zero block. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="xenon">
|
||||
<description>Xenon (5.25")</description>
|
||||
<year>1988</year>
|
||||
@ -11056,7 +11056,7 @@ has been replaced with an all-zero block. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="xenon35" cloneof="xenon">
|
||||
<description>Xenon (16 Blitz Plus release) (3.5")</description>
|
||||
<year>1990</year>
|
||||
@ -11123,7 +11123,7 @@ has been replaced with an all-zero block. -->
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="zoola" cloneof="zool">
|
||||
<description>Zool (Big Games release)</description>
|
||||
<year>1993</year>
|
||||
|
@ -10747,7 +10747,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="micromc2">
|
||||
<description>Micro Machines 2: Turbo Tournament</description>
|
||||
<year>1995</year>
|
||||
@ -11301,7 +11301,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="monkeyit" cloneof="monkeyk">
|
||||
<description>The Secret of Monkey Island (Italian)</description>
|
||||
<year>1991</year>
|
||||
|
@ -29,7 +29,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="jp02">
|
||||
<description>JP-02 (Japan)</description>
|
||||
<year>2004</year>
|
||||
@ -41,5 +41,5 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
</softwarelist>
|
||||
|
0
hash/msx1_cass.xml
Executable file → Normal file
0
hash/msx1_cass.xml
Executable file → Normal file
@ -3,8 +3,8 @@
|
||||
<softwarelist name="sega_beena_cart" description="Sega Beena Cartridges">
|
||||
|
||||
<!-- you must byteswap ROMs to see text, due to endian? -->
|
||||
|
||||
<software name="fpc" supported="no">
|
||||
|
||||
<software name="fpc" supported="no">
|
||||
<description>Fresh Pretty Cure</description> <!-- is this the correct title? -->
|
||||
<year>2009</year>
|
||||
<publisher>Sega</publisher>
|
||||
|
0
hash/timex_dock.xml
Executable file → Normal file
0
hash/timex_dock.xml
Executable file → Normal file
@ -227454,7 +227454,7 @@
|
||||
</dataarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<!-- Project.org 2612 VGM Archives located at http://project2612.org/list.php
|
||||
Also https://archive.org/details/Project2612CompleteArchive20180623681Sets.7z -->
|
||||
|
||||
|
@ -259,17 +259,17 @@ function cheatfind.startplugin()
|
||||
local devtable = {}
|
||||
local devsel = 1
|
||||
local devcur = 1
|
||||
|
||||
|
||||
|
||||
|
||||
--local formtable = { " I1", " i1", "<I2", ">I2", "<i2", ">i2", "<I4", ">I4", "<i4", ">i4", "<I8", ">I8", "<i8", ">i8", }-- " <f", " >f", " <d", " >d" }
|
||||
--local formname = { "u8", "s8", "little u16", "big u16", "little s16", "big s16",
|
||||
-- "little u32", "big u32", "little s32", "big s32", "little u64", "big u64", "little s64", "big s64", }
|
||||
-- -- "little float", "big float", "little double", "big double" }
|
||||
-- "little u32", "big u32", "little s32", "big s32", "little u64", "big u64", "little s64", "big s64", }
|
||||
-- -- "little float", "big float", "little double", "big double" }
|
||||
-- Reordered into likelyhood of use order: unsigned byte by big endian unsigned by little endian unsigned then unsigned in same order
|
||||
local formtable = { " I1", ">I2", ">I4", ">I8", "<I2", "<I4", "<I8", " i1", ">i2", ">i4", ">i8", "<i2", "<i4", "<i8", }-- " <f", " >f", " <d", " >d" }
|
||||
local formname = { "u8", "big u16", "big u32", "big u64", "little u16", "little u32",
|
||||
"little u64", "s8", "big s16", "big s32", "big s64", "little s16", "little s32", "little s64", }
|
||||
|
||||
local formname = { "u8", "big u16", "big u32", "big u64", "little u16", "little u32",
|
||||
"little u64", "s8", "big s16", "big s32", "big s64", "little s16", "little s32", "little s64", }
|
||||
|
||||
local width = 1
|
||||
local bcd = 0
|
||||
local align = 0
|
||||
@ -278,16 +278,16 @@ function cheatfind.startplugin()
|
||||
local value = 0
|
||||
local leftop = 1
|
||||
local rightop = 1
|
||||
local leftop_text = "Slot 1"
|
||||
local rightop_text = "Slot 1"
|
||||
local value_text = ""
|
||||
local expression_text = "Slot 1 < Slot 1"
|
||||
local leftop_text = "Slot 1"
|
||||
local rightop_text = "Slot 1"
|
||||
local value_text = ""
|
||||
local expression_text = "Slot 1 < Slot 1"
|
||||
local pausetable = { "Automatic", "Manual" }
|
||||
local pausesel = 1
|
||||
local pokevaltable = { "Slot 1 Value", "Last Slot Value", "0x00", "0x01", "0x02", "0x03", "0x04", "0x05", "0x06", "0x07", "0x08", "0x09", "0x63 (Decimal 99)", "0x99 (BCD 99)",
|
||||
local pokevaltable = { "Slot 1 Value", "Last Slot Value", "0x00", "0x01", "0x02", "0x03", "0x04", "0x05", "0x06", "0x07", "0x08", "0x09", "0x63 (Decimal 99)", "0x99 (BCD 99)",
|
||||
"0xFF (Decimal 255)" , "0x3E7 (Decimal 999)", "0x999 (BCD 999)", "0x270F (Decimal 9999)", "0x9999 (BCD 9999)", "0xFFFF (Decimal 65535)" }
|
||||
local pokevalsel = 1
|
||||
|
||||
|
||||
local matches = {}
|
||||
local matchsel = 0
|
||||
local matchpg = 0
|
||||
@ -350,12 +350,12 @@ function cheatfind.startplugin()
|
||||
end
|
||||
|
||||
emu.register_start(start)
|
||||
|
||||
|
||||
local menu_is_showing = false
|
||||
local tabbed_out = false
|
||||
|
||||
local tabbed_out = false
|
||||
|
||||
local function menu_populate()
|
||||
if pausesel == 1 then
|
||||
if pausesel == 1 then
|
||||
emu.pause()
|
||||
menu_is_showing = true
|
||||
end
|
||||
@ -504,24 +504,24 @@ function cheatfind.startplugin()
|
||||
local m = { _("Pause Mode"), pausetable[pausesel], 0 }
|
||||
menu_lim(pausesel, 1, pausetable, m)
|
||||
local function f(event)
|
||||
if (event == "left" or event == "right") then
|
||||
if (event == "left" or event == "right") then
|
||||
if pausesel == 1 then
|
||||
pausesel = 2
|
||||
menu_is_showing = false
|
||||
manager:machine():popmessage(_("Manually pause & unpause the game when needed with the pause hotkey"))
|
||||
else
|
||||
else
|
||||
pausesel = 1
|
||||
emu.pause()
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
return true
|
||||
end
|
||||
return m, f
|
||||
end
|
||||
return m, f
|
||||
end
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
menu[#menu + 1] = function()
|
||||
local function f(event)
|
||||
local ret = false
|
||||
@ -542,7 +542,7 @@ function cheatfind.startplugin()
|
||||
leftop_text = "Slot 1"
|
||||
rightop_text = "Slot 1"
|
||||
value_text = ""
|
||||
expression_text = "Slot 1 < Slot 1"
|
||||
expression_text = "Slot 1 < Slot 1"
|
||||
matchsel = 0
|
||||
return true
|
||||
end
|
||||
@ -550,9 +550,9 @@ function cheatfind.startplugin()
|
||||
local opsel = 1
|
||||
return { _("Start new search"), "", 0 }, f
|
||||
end
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if #menu_blocks ~= 0 then
|
||||
menu[#menu + 1] = function() return { "---", "", "off" }, nil end
|
||||
menu[#menu + 1] = function()
|
||||
@ -562,7 +562,7 @@ function cheatfind.startplugin()
|
||||
menu_blocks[num][#menu_blocks[num] + 1] = cheat.save(devtable[devcur].space, region.offset, region.size)
|
||||
end
|
||||
manager:machine():popmessage(string.format(_("Memory State saved to Slot %d"), #menu_blocks[1]))
|
||||
|
||||
|
||||
if (leftop == #menu_blocks[1] - 1 and rightop == #menu_blocks[1] - 2 ) then
|
||||
leftop = #menu_blocks[1]
|
||||
rightop = #menu_blocks[1]-1
|
||||
@ -571,7 +571,7 @@ function cheatfind.startplugin()
|
||||
rightop = #menu_blocks[1]
|
||||
elseif (leftop == #menu_blocks[1] - 1 ) then
|
||||
leftop = #menu_blocks[1]
|
||||
elseif (rightop == #menu_blocks[1] - 1) then
|
||||
elseif (rightop == #menu_blocks[1] - 1) then
|
||||
rightop = #menu_blocks[1]
|
||||
end
|
||||
leftop_text = string.format("Slot %d", leftop)
|
||||
@ -618,27 +618,27 @@ function cheatfind.startplugin()
|
||||
return true
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
if optable[opsel] == "lt" then
|
||||
if (value == 0 ) then
|
||||
expression_text = string.format("%s < %s", leftop_text, rightop_text)
|
||||
else
|
||||
expression_text = string.format("%s == %s - %d", leftop_text, rightop_text, value)
|
||||
end
|
||||
expression_text = string.format("%s < %s", leftop_text, rightop_text)
|
||||
else
|
||||
expression_text = string.format("%s == %s - %d", leftop_text, rightop_text, value)
|
||||
end
|
||||
elseif optable[opsel] == "gt" then
|
||||
if (value == 0 ) then
|
||||
expression_text = string.format("%s > %s", leftop_text, rightop_text)
|
||||
else
|
||||
expression_text = string.format("%s == %s + %d", leftop_text, rightop_text, value)
|
||||
end
|
||||
expression_text = string.format("%s > %s", leftop_text, rightop_text)
|
||||
else
|
||||
expression_text = string.format("%s == %s + %d", leftop_text, rightop_text, value)
|
||||
end
|
||||
elseif optable[opsel] == "eq" then
|
||||
expression_text = string.format("%s == %s", leftop_text, rightop_text)
|
||||
elseif optable[opsel] == "ne" then
|
||||
if (value == 0 ) then
|
||||
expression_text = string.format("%s != %s", leftop_text, rightop_text)
|
||||
else
|
||||
expression_text = string.format("%s == %s +/- %d", leftop_text, rightop_text, value)
|
||||
end
|
||||
expression_text = string.format("%s != %s", leftop_text, rightop_text)
|
||||
else
|
||||
expression_text = string.format("%s == %s +/- %d", leftop_text, rightop_text, value)
|
||||
end
|
||||
elseif optable[opsel] == "beq" then
|
||||
expression_text = string.format("%s BITWISE== %s", leftop_text, rightop_text)
|
||||
elseif optable[opsel] == "bne" then
|
||||
@ -651,10 +651,10 @@ function cheatfind.startplugin()
|
||||
expression_text = string.format("%s == %d", leftop_text, value)
|
||||
elseif optable[opsel] == "nev" then
|
||||
string.format("%s != %d", leftop_text, value)
|
||||
end
|
||||
end
|
||||
return { _("Perform Compare : ") .. expression_text, "", 0 }, f
|
||||
end
|
||||
menu[#menu + 1] = function() return { "---", "", "off" }, nil end
|
||||
menu[#menu + 1] = function() return { "---", "", "off" }, nil end
|
||||
menu[#menu + 1] = function()
|
||||
local m = { _(leftop), "", 0 }
|
||||
menu_lim(leftop, 1, #menu_blocks[1], m)
|
||||
@ -712,7 +712,7 @@ function cheatfind.startplugin()
|
||||
m = { _("Value"), value, "" }
|
||||
else
|
||||
m = { _("Difference"), value, "" }
|
||||
end
|
||||
end
|
||||
local max = 100 -- max value?
|
||||
menu_lim(value, 0, max, m)
|
||||
if value == 0 and optable[opsel]:sub(3, 3) ~= "v" then
|
||||
@ -726,7 +726,7 @@ function cheatfind.startplugin()
|
||||
menu_lim(width, 1, #formtable, m)
|
||||
return m, function(event) local r width, r = incdec(event, width, 1, #formtable) return r end
|
||||
end
|
||||
|
||||
|
||||
menu[#menu + 1] = function()
|
||||
local m = { _("Test/Write Poke Value"), pokevaltable[pokevalsel], 0 }
|
||||
menu_lim(pokevalsel, 1, #pokevaltable, m)
|
||||
@ -741,19 +741,19 @@ function cheatfind.startplugin()
|
||||
elseif pokevalsel == 3 then
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x00"))
|
||||
elseif pokevalsel == 4 then
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x01"))
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x01"))
|
||||
elseif pokevalsel == 5 then
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x02"))
|
||||
elseif pokevalsel == 6 then
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x03"))
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x03"))
|
||||
elseif pokevalsel == 7 then
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x04"))
|
||||
elseif pokevalsel == 8 then
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x05"))
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x05"))
|
||||
elseif pokevalsel == 9 then
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x06"))
|
||||
elseif pokevalsel == 10 then
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x07"))
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x07"))
|
||||
elseif pokevalsel == 11 then
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x08"))
|
||||
elseif pokevalsel == 12 then
|
||||
@ -763,7 +763,7 @@ function cheatfind.startplugin()
|
||||
elseif pokevalsel == 14 then
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x99 (BCD 99)"))
|
||||
elseif pokevalsel == 15 then
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0xFF (Decimal 255)"))
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0xFF (Decimal 255)"))
|
||||
elseif pokevalsel == 16 then
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x3E7 (Decimal 999)"))
|
||||
elseif pokevalsel == 17 then
|
||||
@ -773,15 +773,15 @@ function cheatfind.startplugin()
|
||||
elseif pokevalsel == 19 then
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0x9999 (BCD 9999)"))
|
||||
elseif pokevalsel == 20 then
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0xFFFF (Decimal 65535)"))
|
||||
manager:machine():popmessage(_("Use this if you want to poke 0xFFFF (Decimal 65535)"))
|
||||
end
|
||||
end
|
||||
return r
|
||||
end
|
||||
return m, f
|
||||
end
|
||||
|
||||
|
||||
|
||||
|
||||
menu[#menu + 1] = function()
|
||||
if optable[opsel] == "bne" or optable[opsel] == "beq" then
|
||||
return nil
|
||||
@ -873,12 +873,12 @@ function cheatfind.startplugin()
|
||||
|
||||
local function match_exec(match)
|
||||
local dev = devtable[devcur]
|
||||
|
||||
|
||||
local wid = formtable[width]:sub(3, 3)
|
||||
local widchar
|
||||
local pokevalue
|
||||
local form
|
||||
|
||||
|
||||
if pokevalsel == 1 then
|
||||
pokevalue = match.oldval
|
||||
elseif pokevalsel == 2 then
|
||||
@ -914,25 +914,25 @@ function cheatfind.startplugin()
|
||||
elseif pokevalsel == 17 and wid == "1" then
|
||||
pokevalue = 153
|
||||
elseif pokevalsel == 18 and wid == "1" then
|
||||
pokevalue = 99
|
||||
pokevalue = 99
|
||||
elseif pokevalsel == 19 and wid == "1" then
|
||||
pokevalue = 153
|
||||
pokevalue = 153
|
||||
elseif pokevalsel == 20 and wid == "1" then
|
||||
pokevalue = 255
|
||||
pokevalue = 255
|
||||
elseif pokevalsel == 16 then
|
||||
pokevalue = 999
|
||||
pokevalue = 999
|
||||
elseif pokevalsel == 17 then
|
||||
pokevalue = 2457
|
||||
pokevalue = 2457
|
||||
elseif pokevalsel == 18 then
|
||||
pokevalue = 9999
|
||||
pokevalue = 9999
|
||||
elseif pokevalsel == 19 then
|
||||
pokevalue = 39321
|
||||
pokevalue = 39321
|
||||
elseif pokevalsel == 20 then
|
||||
pokevalue = 65535
|
||||
pokevalue = 65535
|
||||
end
|
||||
|
||||
|
||||
local cheat = { desc = string.format(_("Test Cheat %08X:%02X"), match.addr, pokevalue), script = {} }
|
||||
|
||||
|
||||
if wid == "2" then
|
||||
wid = "u16"
|
||||
form = "%08x %04x"
|
||||
@ -958,7 +958,7 @@ function cheatfind.startplugin()
|
||||
form = "%08x %02x"
|
||||
widchar = "b"
|
||||
end
|
||||
|
||||
|
||||
if getmetatable(dev.space).__name:match("device_t") then
|
||||
cheat.ram = { ram = dev.tag }
|
||||
cheat.script.run = "ram:write(" .. match.addr .. "," .. pokevalue .. ")"
|
||||
@ -1001,7 +1001,7 @@ function cheatfind.startplugin()
|
||||
cheat_save.json = json.stringify({[1] = cheat}, {indent = true})
|
||||
cheat_save.xml = string.format("<mamecheat version=\"1\">\n <cheat desc=\"%%s\">\n <script state=\"run\">\n <action>%s.pp%s@%X=%X</action>\n </script>\n </cheat>\n</mamecheat>", dev.tag:sub(2), widchar, match.addr, match.newval)
|
||||
cheat_save.simple = string.format("%s,%s,%X,%s,%X,%%s\n", setname, dev.tag, match.addr, widchar, pokevalue)
|
||||
cheat_save.dat = string.format(":%s:40000000:%X:%08X:FFFFFFFF:%%s\n", setname, match.addr, pokevalue)
|
||||
cheat_save.dat = string.format(":%s:40000000:%X:%08X:FFFFFFFF:%%s\n", setname, match.addr, pokevalue)
|
||||
manager:machine():popmessage(string.format(_("Default name is %s"), cheat_save.name))
|
||||
return true
|
||||
else
|
||||
@ -1026,7 +1026,7 @@ function cheatfind.startplugin()
|
||||
match.mode = 1
|
||||
end
|
||||
local modes = { _("Test"), _("Write"), _("Watch") }
|
||||
local m = { string.format("%08x" .. bitwidth .. bitwidth, match.addr, match.oldval,
|
||||
local m = { string.format("%08x" .. bitwidth .. bitwidth, match.addr, match.oldval,
|
||||
match.newval), modes[match.mode], 0 }
|
||||
menu_lim(match.mode, 1, #modes, m)
|
||||
local function f(event)
|
||||
@ -1081,12 +1081,12 @@ function cheatfind.startplugin()
|
||||
local height = mame_manager:ui():get_line_height()
|
||||
for num, watch in ipairs(watches) do
|
||||
screen:draw_text("left", num * height, string.format(watch.format, watch.addr, watch.func()))
|
||||
end
|
||||
end
|
||||
if tabbed_out and manager:ui():is_menu_active() then
|
||||
emu.pause()
|
||||
menu_is_showing = true
|
||||
tabbed_out = false
|
||||
end
|
||||
end
|
||||
end)
|
||||
emu.register_periodic(function ()
|
||||
if menu_is_showing and not manager:ui():is_menu_active() then
|
||||
@ -1094,7 +1094,7 @@ function cheatfind.startplugin()
|
||||
menu_is_showing = false
|
||||
tabbed_out = true
|
||||
end
|
||||
end)
|
||||
end)
|
||||
end
|
||||
|
||||
return exports
|
||||
|
@ -231,8 +231,8 @@ READ16_MEMBER( buddha_device::ide_0_interrupt_r )
|
||||
|
||||
data = m_ide_0_interrupt << 15;
|
||||
|
||||
// if (VERBOSE)
|
||||
// logerror("ide_0_interrupt_r %04x [mask = %04x]\n", data, mem_mask);
|
||||
// if (VERBOSE)
|
||||
// logerror("ide_0_interrupt_r %04x [mask = %04x]\n", data, mem_mask);
|
||||
|
||||
return data;
|
||||
}
|
||||
@ -243,8 +243,8 @@ READ16_MEMBER( buddha_device::ide_1_interrupt_r )
|
||||
|
||||
data = m_ide_1_interrupt << 15;
|
||||
|
||||
// if (VERBOSE)
|
||||
// logerror("ide_1_interrupt_r %04x [mask = %04x]\n", data, mem_mask);
|
||||
// if (VERBOSE)
|
||||
// logerror("ide_1_interrupt_r %04x [mask = %04x]\n", data, mem_mask);
|
||||
|
||||
return data;
|
||||
}
|
||||
|
@ -273,5 +273,5 @@ WRITE_LINE_MEMBER(ekara_cart_slot_device::write_scl)
|
||||
|
||||
READ_LINE_MEMBER(ekara_cart_slot_device::read_sda )
|
||||
{
|
||||
return m_cart->read_sda();
|
||||
return m_cart->read_sda();
|
||||
}
|
||||
|
@ -36,7 +36,7 @@ public:
|
||||
virtual DECLARE_READ8_MEMBER(read_extra) { return 0xff; }
|
||||
virtual DECLARE_WRITE8_MEMBER(write_extra) { }
|
||||
|
||||
virtual DECLARE_WRITE_LINE_MEMBER(write_sda) { }
|
||||
virtual DECLARE_WRITE_LINE_MEMBER(write_sda) { }
|
||||
virtual DECLARE_WRITE_LINE_MEMBER(write_scl) { }
|
||||
//virtual DECLARE_WRITE_LINE_MEMBER( write_wc )
|
||||
virtual DECLARE_READ_LINE_MEMBER( read_sda ) { return 0; }
|
||||
@ -107,7 +107,7 @@ public:
|
||||
virtual DECLARE_READ8_MEMBER(read_extra);
|
||||
virtual DECLARE_WRITE8_MEMBER(write_extra);
|
||||
|
||||
virtual DECLARE_WRITE_LINE_MEMBER(write_sda);
|
||||
virtual DECLARE_WRITE_LINE_MEMBER(write_sda);
|
||||
virtual DECLARE_WRITE_LINE_MEMBER(write_scl);
|
||||
//virtual DECLARE_WRITE_LINE_MEMBER( write_wc );
|
||||
virtual DECLARE_READ_LINE_MEMBER( read_sda );
|
||||
|
@ -251,4 +251,4 @@ WRITE16_MEMBER(vsmile_cart_slot_device::bank3_w)
|
||||
void vsmile_cart_slot_device::set_cs2(bool cs2)
|
||||
{
|
||||
m_cart->set_cs2(cs2);
|
||||
}
|
||||
}
|
||||
|
@ -280,15 +280,15 @@ uint64_t athlonxp_device::opcode_rdmsr(bool &valid_msr)
|
||||
// 39-12 PhyBase27-0 - Base address for this memory range
|
||||
/* Format of type field:
|
||||
Bits 2-0 specify the memory type with the following encoding
|
||||
0 UC Uncacheable
|
||||
1 WC Write Combining
|
||||
4 WT Write Through
|
||||
5 WP Write Protect
|
||||
6 WB Write Back
|
||||
7 UC Uncacheable used only in PAT register
|
||||
Bit 3 WrMem 1 write to memory 0 write to mmio, present only in fixed range MTRRs
|
||||
Bit 4 RdMem 1 read from memory 0 read from mmio, present only in fixed range MTRRs
|
||||
Other bits are unused
|
||||
0 UC Uncacheable
|
||||
1 WC Write Combining
|
||||
4 WT Write Through
|
||||
5 WP Write Protect
|
||||
6 WB Write Back
|
||||
7 UC Uncacheable used only in PAT register
|
||||
Bit 3 WrMem 1 write to memory 0 write to mmio, present only in fixed range MTRRs
|
||||
Bit 4 RdMem 1 read from memory 0 read from mmio, present only in fixed range MTRRs
|
||||
Other bits are unused
|
||||
*/
|
||||
break;
|
||||
case 0x201: // MTRRphysMask0-7
|
||||
|
@ -132,7 +132,7 @@ private:
|
||||
dma_state m_dma[2];
|
||||
intr_state m_intr;
|
||||
mem_state m_mem;
|
||||
bool m_last_dma;
|
||||
bool m_last_dma;
|
||||
|
||||
static const device_timer_id TIMER_INT0 = 0;
|
||||
static const device_timer_id TIMER_INT1 = 1;
|
||||
|
@ -115,7 +115,7 @@ private:
|
||||
uint16_t m_mouse_y;
|
||||
uint8_t m_mouse_btn;
|
||||
|
||||
emu_timer * m_update_timer;
|
||||
emu_timer * m_update_timer;
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER( keyboard_w );
|
||||
};
|
||||
|
@ -607,4 +607,4 @@ bool nscsi_cdrom_sgi_device::scsi_command_done(uint8_t command, uint8_t length)
|
||||
default:
|
||||
return nscsi_full_device::scsi_command_done(command, length);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -5,9 +5,9 @@
|
||||
SunPlus SPG110-series SoC peripheral emulation
|
||||
|
||||
0032xx looks like it could be the same as 003dxx on spg2xx
|
||||
but the video seems to have differences, and data
|
||||
is fetched from private buffers filled by DMA instead of
|
||||
main space? tile attributes different? palette format different
|
||||
but the video seems to have differences, and data
|
||||
is fetched from private buffers filled by DMA instead of
|
||||
main space? tile attributes different? palette format different
|
||||
|
||||
**********************************************************************/
|
||||
|
||||
@ -151,7 +151,7 @@ void spg110_device::blit_page(const rectangle &cliprect, uint32_t scanline, int
|
||||
blit<FlipXOn>(cliprect, tile_scanline, xx, yy, attr, ctrl, bitmap_addr, tile);
|
||||
else
|
||||
blit<FlipXOff>(cliprect, tile_scanline, xx, yy, attr, ctrl, bitmap_addr, tile);
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -214,11 +214,11 @@ GFXDECODE_END
|
||||
|
||||
void spg110_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
// PALETTE(config, m_palette).set_format(palette_device::xRGB_555, 0x100);
|
||||
// PALETTE(config, m_palette).set_format(palette_device::RGB_565, 0x100);
|
||||
// PALETTE(config, m_palette).set_format(palette_device::IRGB_4444, 0x100);
|
||||
// PALETTE(config, m_palette).set_format(palette_device::RGBI_4444, 0x100);
|
||||
// PALETTE(config, m_palette).set_format(palette_device::xRGB_555, 0x100);
|
||||
// PALETTE(config, m_palette).set_format(palette_device::xRGB_555, 0x100);
|
||||
// PALETTE(config, m_palette).set_format(palette_device::RGB_565, 0x100);
|
||||
// PALETTE(config, m_palette).set_format(palette_device::IRGB_4444, 0x100);
|
||||
// PALETTE(config, m_palette).set_format(palette_device::RGBI_4444, 0x100);
|
||||
// PALETTE(config, m_palette).set_format(palette_device::xRGB_555, 0x100);
|
||||
PALETTE(config, m_palette, palette_device::BLACK, 256);
|
||||
|
||||
GFXDECODE(config, m_gfxdecode, m_palette, gfx);
|
||||
@ -337,7 +337,7 @@ WRITE16_MEMBER(spg110_device::dma_len_trigger_w)
|
||||
uint16_t val = mem.read_word(source);
|
||||
|
||||
this->space(0).write_word(dest * 2, val, 0xffff);
|
||||
|
||||
|
||||
source+=m_dma_src_step;
|
||||
dest+=m_dma_dst_step;
|
||||
}
|
||||
@ -436,14 +436,14 @@ WRITE16_MEMBER(spg110_device::tmap1_regs_w)
|
||||
void spg110_device::map(address_map &map)
|
||||
{
|
||||
map(0x000000, 0x000fff).ram();
|
||||
|
||||
|
||||
|
||||
|
||||
// vregs are at 2000?
|
||||
map(0x002010, 0x002015).rw(FUNC(spg110_device::tmap0_regs_r), FUNC(spg110_device::tmap0_regs_w));
|
||||
map(0x002016, 0x00201b).rw(FUNC(spg110_device::tmap1_regs_r), FUNC(spg110_device::tmap1_regs_w));
|
||||
|
||||
map(0x00201c, 0x00201c).w(FUNC(spg110_device::spg110_201c_w));
|
||||
|
||||
|
||||
map(0x002020, 0x002020).w(FUNC(spg110_device::spg110_2020_w));
|
||||
|
||||
map(0x002028, 0x002028).rw(FUNC(spg110_device::spg110_2028_r), FUNC(spg110_device::spg110_2028_w));
|
||||
@ -484,7 +484,7 @@ void spg110_device::map(address_map &map)
|
||||
map(0x00205d, 0x00205d).w(FUNC(spg110_device::spg110_205d_w));
|
||||
map(0x00205e, 0x00205e).w(FUNC(spg110_device::spg110_205e_w));
|
||||
map(0x00205f, 0x00205f).w(FUNC(spg110_device::spg110_205f_w));
|
||||
|
||||
|
||||
//map(0x002010, 0x00205f).ram();
|
||||
|
||||
// everything (dma? and interrupt flag?!)
|
||||
@ -498,9 +498,9 @@ void spg110_device::map(address_map &map)
|
||||
map(0x002068, 0x002068).w(FUNC(spg110_device::dma_src_step_w));
|
||||
|
||||
map(0x002200, 0x0022ff).ram(); // looks like per-pen brightness or similar? strange because palette isn't memory mapped here
|
||||
|
||||
|
||||
map(0x003000, 0x00307f).ram(); // sound registers? seems to be 8 long entries, only uses up to 0x7f?
|
||||
map(0x003080, 0x0030ff).ram();
|
||||
map(0x003080, 0x0030ff).ram();
|
||||
|
||||
map(0x003100, 0x003100).w(FUNC(spg110_device::spg110_3100_w));
|
||||
map(0x003101, 0x003101).w(FUNC(spg110_device::spg110_3101_w));
|
||||
@ -548,7 +548,7 @@ void spg110_device::map_video(address_map &map)
|
||||
|
||||
map(0x04000, 0x04fff).ram(); // seems to be 3 blocks, almost certainly spritelist
|
||||
|
||||
// map(0x08000, 0x081ff).ram().w(m_palette, FUNC(palette_device::write16)).share("palette"); // probably? format unknown tho
|
||||
// map(0x08000, 0x081ff).ram().w(m_palette, FUNC(palette_device::write16)).share("palette"); // probably? format unknown tho
|
||||
map(0x08000, 0x081ff).ram().share("palram");
|
||||
}
|
||||
|
||||
|
@ -351,7 +351,7 @@ TIMER_CALLBACK_MEMBER(timekeeper_device::watchdog_callback)
|
||||
m_data[m_offset_flags] |= FLAGS_WDF;
|
||||
// WDS (bit 7) selects callback
|
||||
if (m_data[m_offset_watchdog] & 0x80)
|
||||
{
|
||||
{
|
||||
// Clear watchdog register
|
||||
m_data[m_offset_watchdog] = 0;
|
||||
m_reset_cb(ASSERT_LINE);
|
||||
|
@ -512,54 +512,54 @@ Yamaha YMZ294: limited info: 0 I/O port
|
||||
OKI M5255, Winbond WF19054, JFC 95101, File KC89C72, Toshiba T7766A : differences to be listed
|
||||
|
||||
AY8930 Expanded mode registers :
|
||||
Bank Register Bits
|
||||
A 0 xxxx xxxx Channel A Tone period fine tune
|
||||
A 1 xxxx xxxx Channel A Tone period coarse tune
|
||||
A 2 xxxx xxxx Channel B Tone period fine tune
|
||||
A 3 xxxx xxxx Channel B Tone period coarse tune
|
||||
A 4 xxxx xxxx Channel C Tone period fine tune
|
||||
A 5 xxxx xxxx Channel C Tone period coarse tune
|
||||
A 6 xxxx xxxx Noise period
|
||||
A 7 x--- ---- I/O Port B input(0) / output(1)
|
||||
-x-- ---- I/O Port A input(0) / output(1)
|
||||
--x- ---- Channel C Noise enable(0) / disable(1)
|
||||
---x ---- Channel B Noise enable(0) / disable(1)
|
||||
---- x--- Channel A Noise enable(0) / disable(1)
|
||||
---- -x-- Channel C Tone enable(0) / disable(1)
|
||||
---- --x- Channel B Tone enable(0) / disable(1)
|
||||
---- ---x Channel A Tone enable(0) / disable(1)
|
||||
A 8 --x- ---- Channel A Envelope mode
|
||||
---x xxxx Channel A Tone volume
|
||||
A 9 --x- ---- Channel B Envelope mode
|
||||
---x xxxx Channel B Tone volume
|
||||
A A --x- ---- Channel C Envelope mode
|
||||
---x xxxx Channel C Tone volume
|
||||
A B xxxx xxxx Channel A Envelope period fine tune
|
||||
A C xxxx xxxx Channel A Envelope period coarse tune
|
||||
A D 101- ---- 101 = Expanded mode enable, other AY-3-8910A Compatiblity mode
|
||||
---0 ---- 0 for Register Bank A
|
||||
---- xxxx Channel A Envelope Shape/Cycle
|
||||
A E xxxx xxxx 8 bit Parallel I/O on Port A
|
||||
A F xxxx xxxx 8 bit Parallel I/O on Port B
|
||||
Bank Register Bits
|
||||
A 0 xxxx xxxx Channel A Tone period fine tune
|
||||
A 1 xxxx xxxx Channel A Tone period coarse tune
|
||||
A 2 xxxx xxxx Channel B Tone period fine tune
|
||||
A 3 xxxx xxxx Channel B Tone period coarse tune
|
||||
A 4 xxxx xxxx Channel C Tone period fine tune
|
||||
A 5 xxxx xxxx Channel C Tone period coarse tune
|
||||
A 6 xxxx xxxx Noise period
|
||||
A 7 x--- ---- I/O Port B input(0) / output(1)
|
||||
-x-- ---- I/O Port A input(0) / output(1)
|
||||
--x- ---- Channel C Noise enable(0) / disable(1)
|
||||
---x ---- Channel B Noise enable(0) / disable(1)
|
||||
---- x--- Channel A Noise enable(0) / disable(1)
|
||||
---- -x-- Channel C Tone enable(0) / disable(1)
|
||||
---- --x- Channel B Tone enable(0) / disable(1)
|
||||
---- ---x Channel A Tone enable(0) / disable(1)
|
||||
A 8 --x- ---- Channel A Envelope mode
|
||||
---x xxxx Channel A Tone volume
|
||||
A 9 --x- ---- Channel B Envelope mode
|
||||
---x xxxx Channel B Tone volume
|
||||
A A --x- ---- Channel C Envelope mode
|
||||
---x xxxx Channel C Tone volume
|
||||
A B xxxx xxxx Channel A Envelope period fine tune
|
||||
A C xxxx xxxx Channel A Envelope period coarse tune
|
||||
A D 101- ---- 101 = Expanded mode enable, other AY-3-8910A Compatiblity mode
|
||||
---0 ---- 0 for Register Bank A
|
||||
---- xxxx Channel A Envelope Shape/Cycle
|
||||
A E xxxx xxxx 8 bit Parallel I/O on Port A
|
||||
A F xxxx xxxx 8 bit Parallel I/O on Port B
|
||||
|
||||
B 0 xxxx xxxx Channel B Envelope period fine tune
|
||||
B 1 xxxx xxxx Channel B Envelope period coarse tune
|
||||
B 2 xxxx xxxx Channel C Envelope period fine tune
|
||||
B 3 xxxx xxxx Channel C Envelope period coarse tune
|
||||
B 4 ---- xxxx Channel B Envelope Shape/Cycle
|
||||
B 5 ---- xxxx Channel C Envelope Shape/Cycle
|
||||
B 6 ---- xxxx Channel A Duty Cycle
|
||||
B 7 ---- xxxx Channel B Duty Cycle
|
||||
B 8 ---- xxxx Channel C Duty Cycle
|
||||
B 9 xxxx xxxx Noise "And" Mask
|
||||
B A xxxx xxxx Noise "Or" Mask
|
||||
B B Reserved (Read as 0)
|
||||
B C Reserved (Read as 0)
|
||||
B D 101- ---- 101 = Expanded mode enable, other AY-3-8910A Compatiblity mode
|
||||
---1 ---- 1 for Register Bank B
|
||||
---- xxxx Channel A Envelope Shape
|
||||
B E Reserved (Read as 0)
|
||||
B F Test (Function unknown)
|
||||
B 0 xxxx xxxx Channel B Envelope period fine tune
|
||||
B 1 xxxx xxxx Channel B Envelope period coarse tune
|
||||
B 2 xxxx xxxx Channel C Envelope period fine tune
|
||||
B 3 xxxx xxxx Channel C Envelope period coarse tune
|
||||
B 4 ---- xxxx Channel B Envelope Shape/Cycle
|
||||
B 5 ---- xxxx Channel C Envelope Shape/Cycle
|
||||
B 6 ---- xxxx Channel A Duty Cycle
|
||||
B 7 ---- xxxx Channel B Duty Cycle
|
||||
B 8 ---- xxxx Channel C Duty Cycle
|
||||
B 9 xxxx xxxx Noise "And" Mask
|
||||
B A xxxx xxxx Noise "Or" Mask
|
||||
B B Reserved (Read as 0)
|
||||
B C Reserved (Read as 0)
|
||||
B D 101- ---- 101 = Expanded mode enable, other AY-3-8910A Compatiblity mode
|
||||
---1 ---- 1 for Register Bank B
|
||||
---- xxxx Channel A Envelope Shape
|
||||
B E Reserved (Read as 0)
|
||||
B F Test (Function unknown)
|
||||
|
||||
Decaps:
|
||||
AY-3-8914 - http://siliconpr0n.org/map/gi/ay-3-8914/mz_mit20x/
|
||||
|
@ -885,8 +885,8 @@ u16 ics2115_device::word_r(offs_t offset, u16 mem_mask)
|
||||
break;
|
||||
/*
|
||||
case 3:
|
||||
TODO : used for byte size only;
|
||||
break;
|
||||
TODO : used for byte size only;
|
||||
break;
|
||||
*/
|
||||
default:
|
||||
#ifdef ICS2115_DEBUG
|
||||
@ -911,8 +911,8 @@ void ics2115_device::word_w(offs_t offset, u16 data, u16 mem_mask)
|
||||
break;
|
||||
/*
|
||||
case 3:
|
||||
TODO : used for byte size only;
|
||||
break;
|
||||
TODO : used for byte size only;
|
||||
break;
|
||||
*/
|
||||
default:
|
||||
#ifdef ICS2115_DEBUG
|
||||
|
@ -106,7 +106,7 @@ crt9028_000_device::crt9028_000_device(const machine_config &mconfig, const char
|
||||
24, 10, false,
|
||||
20, 4, 8,
|
||||
72, 30, 10,
|
||||
2, 8, 9,
|
||||
2, 8, 9,
|
||||
0x3c0, 0x038, 0x007, 0x0f,
|
||||
0x3e0, 0x020, 0x03f, 0x020,
|
||||
0x10, 0xff, 0x10, 0xff)
|
||||
|
@ -44,7 +44,7 @@ namespace netlist {
|
||||
, m_OP(*this, "OP", &m_IP)
|
||||
, m_ON(*this, "ON", &m_IP)
|
||||
, m_IP(*this, "IP", &m_IN) // <= this should be NULL and terminal be filtered out prior to solving...
|
||||
, m_IN(*this, "IN", &m_IP) // <= this should be NULL and terminal be filtered out prior to solving...
|
||||
, m_IN(*this, "IN", &m_IP) // <= this should be NULL and terminal be filtered out prior to solving...
|
||||
, m_OP1(*this, "_OP1", &m_IN)
|
||||
, m_ON1(*this, "_ON1", &m_IN)
|
||||
, m_gfac(1.0)
|
||||
|
@ -426,7 +426,7 @@ public:
|
||||
}
|
||||
|
||||
protected:
|
||||
// NETLIB_UPDATEI() { NETLIB_NAME(twoterm)::update(time); }
|
||||
// NETLIB_UPDATEI() { NETLIB_NAME(twoterm)::update(time); }
|
||||
|
||||
NETLIB_RESETI()
|
||||
{
|
||||
|
@ -97,7 +97,7 @@ namespace netlist
|
||||
m_ram[i] = 0;
|
||||
}
|
||||
|
||||
NETLIB_DEVICE_IMPL(2102A, "RAM_2102A", "+CEQ,+A0,+A1,+A2,+A3,+A4,+A5,+A6,+A7,+A8,+A9,+RWQ,+DI")
|
||||
NETLIB_DEVICE_IMPL(2102A, "RAM_2102A", "+CEQ,+A0,+A1,+A2,+A3,+A4,+A5,+A6,+A7,+A8,+A9,+RWQ,+DI")
|
||||
NETLIB_DEVICE_IMPL(2102A_dip,"RAM_2102A_DIP","")
|
||||
|
||||
} //namespace devices
|
||||
|
@ -134,7 +134,7 @@ namespace netlist
|
||||
//m_sub.do_reset();
|
||||
}
|
||||
|
||||
NETLIB_DEVICE_IMPL(74174, "TTL_74174", "+CLK,+D1,+D2,+D3,+D4,+D5,+D6,+CLRQ")
|
||||
NETLIB_DEVICE_IMPL(74174, "TTL_74174", "+CLK,+D1,+D2,+D3,+D4,+D5,+D6,+CLRQ")
|
||||
NETLIB_DEVICE_IMPL(74174_dip,"TTL_74174_DIP", "")
|
||||
|
||||
} //namespace devices
|
||||
|
@ -111,7 +111,7 @@ namespace netlist
|
||||
m_data = 0xFF;
|
||||
}
|
||||
|
||||
NETLIB_DEVICE_IMPL(74175, "TTL_74175", "+CLK,+D1,+D2,+D3,+D4,+CLRQ")
|
||||
NETLIB_DEVICE_IMPL(74175, "TTL_74175", "+CLK,+D1,+D2,+D3,+D4,+CLRQ")
|
||||
NETLIB_DEVICE_IMPL(74175_dip,"TTL_74175_DIP", "")
|
||||
|
||||
} //namespace devices
|
||||
|
@ -162,7 +162,7 @@ namespace netlist
|
||||
m_CARRYQ.push(tCarry, NLTIME_FROM_NS(20)); //FIXME
|
||||
}
|
||||
|
||||
NETLIB_DEVICE_IMPL(74192, "TTL_74192", "+A,+B,+C,+D,+CLEAR,+LOADQ,+CU,+CD")
|
||||
NETLIB_DEVICE_IMPL(74192, "TTL_74192", "+A,+B,+C,+D,+CLEAR,+LOADQ,+CU,+CD")
|
||||
NETLIB_DEVICE_IMPL(74192_dip,"TTL_74192_DIP", "")
|
||||
|
||||
} //namespace devices
|
||||
|
@ -139,7 +139,7 @@ namespace netlist
|
||||
m_CARRYQ.push(tCarry, NLTIME_FROM_NS(20)); //FIXME timing
|
||||
}
|
||||
|
||||
NETLIB_DEVICE_IMPL(74193, "TTL_74193", "+A,+B,+C,+D,+CLEAR,+LOADQ,+CU,+CD")
|
||||
NETLIB_DEVICE_IMPL(74193, "TTL_74193", "+A,+B,+C,+D,+CLEAR,+LOADQ,+CU,+CD")
|
||||
NETLIB_DEVICE_IMPL(74193_dip, "TTL_74193_DIP", "")
|
||||
|
||||
} //namespace devices
|
||||
|
@ -116,7 +116,7 @@ namespace netlist
|
||||
m_Q[i].push((q >> i) & 1, NLTIME_FROM_NS(26)); // FIXME: Timing
|
||||
}
|
||||
|
||||
NETLIB_DEVICE_IMPL(74194, "TTL_74194", "+CLK,+S0,+S1,+SRIN,+A,+B,+C,+D,+SLIN,+CLRQ")
|
||||
NETLIB_DEVICE_IMPL(74194, "TTL_74194", "+CLK,+S0,+S1,+SRIN,+A,+B,+C,+D,+SLIN,+CLRQ")
|
||||
NETLIB_DEVICE_IMPL(74194_dip, "TTL_74194_DIP", "")
|
||||
|
||||
} //namespace devices
|
||||
|
@ -177,7 +177,7 @@ namespace netlist
|
||||
m_last_out = out;
|
||||
}
|
||||
|
||||
NETLIB_DEVICE_IMPL(NE555, "NE555", "")
|
||||
NETLIB_DEVICE_IMPL(NE555, "NE555", "")
|
||||
NETLIB_DEVICE_IMPL(NE555_dip, "NE555_DIP", "")
|
||||
|
||||
} //namespace devices
|
||||
|
@ -97,7 +97,7 @@ namespace netlist
|
||||
}
|
||||
}
|
||||
|
||||
NETLIB_DEVICE_IMPL(TMS4800, "ROM_TMS4800", "+AR,+OE1,+OE2,+A0,+A1,+A2,+A3,+A4,+A5,+A6,+A7,+A8,+A9,+A10")
|
||||
NETLIB_DEVICE_IMPL(TMS4800, "ROM_TMS4800", "+AR,+OE1,+OE2,+A0,+A1,+A2,+A3,+A4,+A5,+A6,+A7,+A8,+A9,+A10")
|
||||
NETLIB_DEVICE_IMPL(TMS4800_dip, "ROM_TMS4800_DIP", "")
|
||||
|
||||
} //namespace devices
|
||||
|
@ -202,7 +202,7 @@ namespace netlist
|
||||
{
|
||||
}
|
||||
|
||||
NETLIB_UPDATEI() { }
|
||||
NETLIB_UPDATEI() { }
|
||||
NETLIB_RESETI() { m_Q.initial(0.0); }
|
||||
NETLIB_UPDATE_PARAMI() { m_Q.push(m_IN()); }
|
||||
|
||||
|
@ -30,8 +30,8 @@ namespace detail
|
||||
|
||||
//static plib::mempool *pool()
|
||||
//{
|
||||
// static plib::mempool s_pool(655360, 32);
|
||||
// return &s_pool;
|
||||
// static plib::mempool s_pool(655360, 32);
|
||||
// return &s_pool;
|
||||
//}
|
||||
|
||||
#if 0
|
||||
@ -49,7 +49,7 @@ namespace detail
|
||||
if (mem)
|
||||
{
|
||||
//if ((USE_MEMPOOL))
|
||||
// pool()->free(mem);
|
||||
// pool()->free(mem);
|
||||
//else
|
||||
::operator delete(mem);
|
||||
}
|
||||
@ -142,7 +142,7 @@ const logic_family_desc_t *family_CD4XXX()
|
||||
detail::queue_t::queue_t(netlist_state_t &nl)
|
||||
: timed_queue<pqentry_t<net_t *, netlist_time>, false, NL_KEEP_STATISTICS>(512)
|
||||
, netlist_ref(nl)
|
||||
// , plib::state_manager_t::callback_t()
|
||||
// , plib::state_manager_t::callback_t()
|
||||
, m_qsize(0)
|
||||
, m_times(512)
|
||||
, m_net_ids(512)
|
||||
@ -192,7 +192,7 @@ detail::netlist_ref::netlist_ref(netlist_state_t &nl)
|
||||
// ----------------------------------------------------------------------------------------
|
||||
|
||||
detail::object_t::object_t(const pstring &aname)
|
||||
// : m_name(aname)
|
||||
// : m_name(aname)
|
||||
{
|
||||
name_hash().insert({this, aname});
|
||||
}
|
||||
|
@ -1164,7 +1164,7 @@ namespace netlist
|
||||
virtual bool is_timestep() const { return false; }
|
||||
|
||||
private:
|
||||
bool m_hint_deactivate;
|
||||
bool m_hint_deactivate;
|
||||
state_var_s32 m_active_outputs;
|
||||
};
|
||||
|
||||
@ -1675,7 +1675,7 @@ namespace netlist
|
||||
{
|
||||
nl_assert(terminal_state() != STATE_INP_PASSIVE);
|
||||
//if (net().Q() != m_Q)
|
||||
// printf("term: %s, %d %d TS %d\n", this->name().c_str(), net().Q(), m_Q, terminal_state());
|
||||
// printf("term: %s, %d %d TS %d\n", this->name().c_str(), net().Q(), m_Q, terminal_state());
|
||||
#if USE_COPY_INSTEAD_OF_REFERENCE
|
||||
return m_Q;
|
||||
#else
|
||||
|
@ -278,9 +278,9 @@ namespace netlist
|
||||
protected:
|
||||
std::unordered_map<pstring, pstring> m_models;
|
||||
std::stack<pstring> m_namespace_stack;
|
||||
std::unordered_map<pstring, pstring> m_alias;
|
||||
std::unordered_map<pstring, pstring> m_alias;
|
||||
std::vector<link_t> m_links;
|
||||
std::unordered_map<pstring, pstring> m_param_values;
|
||||
std::unordered_map<pstring, pstring> m_param_values;
|
||||
|
||||
source_t::list_t m_sources;
|
||||
|
||||
@ -291,7 +291,7 @@ namespace netlist
|
||||
|
||||
|
||||
private:
|
||||
plib::ppreprocessor::defines_map_type m_defines;
|
||||
plib::ppreprocessor::defines_map_type m_defines;
|
||||
|
||||
setup_t &m_setup;
|
||||
log_type &m_log;
|
||||
@ -384,7 +384,7 @@ namespace netlist
|
||||
std::unordered_map<pstring, detail::core_terminal_t *> m_terminals;
|
||||
|
||||
netlist_t &m_netlist;
|
||||
devices::nld_netlistparams *m_netlist_params;
|
||||
devices::nld_netlistparams *m_netlist_params;
|
||||
std::unordered_map<pstring, param_ref_t> m_params;
|
||||
|
||||
unsigned m_proxy_cnt;
|
||||
|
@ -76,12 +76,12 @@ namespace plib
|
||||
}
|
||||
|
||||
PALIGNAS_VECTOROPT()
|
||||
mat_type m_mat;
|
||||
mat_type m_mat;
|
||||
PALIGNAS_VECTOROPT()
|
||||
mat_type m_LU;
|
||||
bool m_use_iLU_preconditioning;
|
||||
std::size_t m_ILU_scale;
|
||||
std::size_t m_band_width;
|
||||
mat_type m_LU;
|
||||
bool m_use_iLU_preconditioning;
|
||||
std::size_t m_ILU_scale;
|
||||
std::size_t m_band_width;
|
||||
};
|
||||
|
||||
template <typename FT, int SIZE>
|
||||
@ -256,7 +256,7 @@ namespace plib
|
||||
m_g[0] = rho;
|
||||
|
||||
//for (std::size_t i = 0; i < mr + 1; i++)
|
||||
// vec_set_scalar(mr, m_ht[i], NL_FCONST(0.0));
|
||||
// vec_set_scalar(mr, m_ht[i], NL_FCONST(0.0));
|
||||
|
||||
vec_mult_scalar(n, residual, constants<FT>::one() / rho, m_v[0]);
|
||||
|
||||
@ -331,11 +331,11 @@ namespace plib
|
||||
plib::parray<float_type, SIZE> residual;
|
||||
plib::parray<float_type, SIZE> Ax;
|
||||
|
||||
plib::parray<float_type, RESTART + 1> m_c; /* mr + 1 */
|
||||
plib::parray<float_type, RESTART + 1> m_g; /* mr + 1 */
|
||||
plib::parray<float_type, RESTART + 1> m_c; /* mr + 1 */
|
||||
plib::parray<float_type, RESTART + 1> m_g; /* mr + 1 */
|
||||
plib::parray<plib::parray<float_type, RESTART>, RESTART + 1> m_ht; /* (mr + 1), mr */
|
||||
plib::parray<float_type, RESTART + 1> m_s; /* mr + 1 */
|
||||
plib::parray<float_type, RESTART + 1> m_y; /* mr + 1 */
|
||||
plib::parray<float_type, RESTART + 1> m_s; /* mr + 1 */
|
||||
plib::parray<float_type, RESTART + 1> m_y; /* mr + 1 */
|
||||
|
||||
//plib::parray<float_type, SIZE> m_v[RESTART + 1]; /* mr + 1, n */
|
||||
plib::parray<plib::parray<float_type, storage_N>, RESTART + 1> m_v; /* mr + 1, n */
|
||||
@ -418,10 +418,10 @@ namespace plib
|
||||
}
|
||||
else
|
||||
{
|
||||
beta = alpha * ( c / 2.0)*( c / 2.0);
|
||||
alpha = 1.0 / (d - beta);
|
||||
for (std::size_t k = 0; k < size(); k++)
|
||||
p[k] = residual[k] + beta * p[k];
|
||||
beta = alpha * ( c / 2.0)*( c / 2.0);
|
||||
alpha = 1.0 / (d - beta);
|
||||
for (std::size_t k = 0; k < size(); k++)
|
||||
p[k] = residual[k] + beta * p[k];
|
||||
}
|
||||
plib::vec_add_mult_scalar(size(), p, alpha, x);
|
||||
ops.calc_rhs(Ax, x);
|
||||
|
@ -34,13 +34,13 @@ namespace plib {
|
||||
#if defined(_WIN32) || defined(_WIN64) || defined(_MSC_VER)
|
||||
return _aligned_malloc(size, alignment);
|
||||
#elif defined(__APPLE__)
|
||||
void* p;
|
||||
if (::posix_memalign(&p, alignment, size) != 0) {
|
||||
p = nullptr;
|
||||
}
|
||||
return p;
|
||||
void* p;
|
||||
if (::posix_memalign(&p, alignment, size) != 0) {
|
||||
p = nullptr;
|
||||
}
|
||||
return p;
|
||||
#else
|
||||
return aligned_alloc(alignment, size);
|
||||
return aligned_alloc(alignment, size);
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -59,7 +59,7 @@ namespace plib {
|
||||
static_assert(is_pow2(ALIGN), "Alignment must be a power of 2");
|
||||
//auto t = reinterpret_cast<std::uintptr_t>(p);
|
||||
//if (t & (ALIGN-1))
|
||||
// printf("alignment error!");
|
||||
// printf("alignment error!");
|
||||
return reinterpret_cast<T *>(__builtin_assume_aligned(p, ALIGN));
|
||||
}
|
||||
|
||||
@ -124,8 +124,8 @@ namespace plib {
|
||||
constexpr pdefault_deleter() noexcept = default;
|
||||
|
||||
template<typename U, typename = typename
|
||||
std::enable_if<std::is_convertible< U*, T*>::value>::type>
|
||||
pdefault_deleter(const pdefault_deleter<U>&) noexcept { }
|
||||
std::enable_if<std::is_convertible< U*, T*>::value>::type>
|
||||
pdefault_deleter(const pdefault_deleter<U>&) noexcept { }
|
||||
|
||||
void operator()(T *p) const
|
||||
{
|
||||
@ -249,62 +249,62 @@ namespace plib {
|
||||
class aligned_allocator
|
||||
{
|
||||
public:
|
||||
using value_type = T;
|
||||
using value_type = T;
|
||||
|
||||
static_assert(ALIGN >= alignof(T) && (ALIGN % alignof(T)) == 0,
|
||||
"ALIGN must be greater than alignof(T) and a multiple");
|
||||
static_assert(ALIGN >= alignof(T) && (ALIGN % alignof(T)) == 0,
|
||||
"ALIGN must be greater than alignof(T) and a multiple");
|
||||
|
||||
aligned_allocator() noexcept = default;
|
||||
~aligned_allocator() noexcept = default;
|
||||
aligned_allocator() noexcept = default;
|
||||
~aligned_allocator() noexcept = default;
|
||||
|
||||
aligned_allocator(const aligned_allocator&) noexcept = default;
|
||||
aligned_allocator& operator=(const aligned_allocator&) noexcept = delete;
|
||||
aligned_allocator(const aligned_allocator&) noexcept = default;
|
||||
aligned_allocator& operator=(const aligned_allocator&) noexcept = delete;
|
||||
|
||||
aligned_allocator(aligned_allocator&&) noexcept = default;
|
||||
aligned_allocator& operator=(aligned_allocator&&) = delete;
|
||||
aligned_allocator(aligned_allocator&&) noexcept = default;
|
||||
aligned_allocator& operator=(aligned_allocator&&) = delete;
|
||||
|
||||
template <class U>
|
||||
aligned_allocator(const aligned_allocator<U, ALIGN>& rhs) noexcept
|
||||
{
|
||||
unused_var(rhs);
|
||||
}
|
||||
|
||||
template <class U> struct rebind
|
||||
template <class U>
|
||||
aligned_allocator(const aligned_allocator<U, ALIGN>& rhs) noexcept
|
||||
{
|
||||
using other = aligned_allocator<U, ALIGN>;
|
||||
unused_var(rhs);
|
||||
}
|
||||
|
||||
template <class U> struct rebind
|
||||
{
|
||||
using other = aligned_allocator<U, ALIGN>;
|
||||
};
|
||||
|
||||
T* allocate(std::size_t n)
|
||||
{
|
||||
return reinterpret_cast<T *>(paligned_alloc(ALIGN, sizeof(T) * n));
|
||||
}
|
||||
T* allocate(std::size_t n)
|
||||
{
|
||||
return reinterpret_cast<T *>(paligned_alloc(ALIGN, sizeof(T) * n));
|
||||
}
|
||||
|
||||
void deallocate(T* p, std::size_t n) noexcept
|
||||
{
|
||||
unused_var(n);
|
||||
pfree(p);
|
||||
}
|
||||
void deallocate(T* p, std::size_t n) noexcept
|
||||
{
|
||||
unused_var(n);
|
||||
pfree(p);
|
||||
}
|
||||
|
||||
template <class T1, std::size_t A1, class U, std::size_t A2>
|
||||
friend bool operator==(const aligned_allocator<T1, A1>& lhs,
|
||||
const aligned_allocator<U, A2>& rhs) noexcept;
|
||||
template <class T1, std::size_t A1, class U, std::size_t A2>
|
||||
friend bool operator==(const aligned_allocator<T1, A1>& lhs,
|
||||
const aligned_allocator<U, A2>& rhs) noexcept;
|
||||
|
||||
template <class U, std::size_t A> friend class aligned_allocator;
|
||||
template <class U, std::size_t A> friend class aligned_allocator;
|
||||
};
|
||||
|
||||
template <class T1, std::size_t A1, class U, std::size_t A2>
|
||||
/*friend*/ inline bool operator==(const aligned_allocator<T1, A1>& lhs,
|
||||
const aligned_allocator<U, A2>& rhs) noexcept
|
||||
{
|
||||
unused_var(lhs, rhs);
|
||||
return A1 == A2;
|
||||
}
|
||||
template <class T1, std::size_t A1, class U, std::size_t A2>
|
||||
/*friend*/ inline bool operator!=(const aligned_allocator<T1, A1>& lhs,
|
||||
const aligned_allocator<U, A2>& rhs) noexcept
|
||||
{
|
||||
return !(lhs == rhs);
|
||||
}
|
||||
template <class T1, std::size_t A1, class U, std::size_t A2>
|
||||
/*friend*/ inline bool operator==(const aligned_allocator<T1, A1>& lhs,
|
||||
const aligned_allocator<U, A2>& rhs) noexcept
|
||||
{
|
||||
unused_var(lhs, rhs);
|
||||
return A1 == A2;
|
||||
}
|
||||
template <class T1, std::size_t A1, class U, std::size_t A2>
|
||||
/*friend*/ inline bool operator!=(const aligned_allocator<T1, A1>& lhs,
|
||||
const aligned_allocator<U, A2>& rhs) noexcept
|
||||
{
|
||||
return !(lhs == rhs);
|
||||
}
|
||||
|
||||
// FIXME: needs to be somewhere else
|
||||
#if 0
|
||||
|
@ -117,8 +117,8 @@ namespace plib {
|
||||
|
||||
private:
|
||||
PALIGNAS_VECTOROPT()
|
||||
base_type m_a;
|
||||
size_type m_size;
|
||||
base_type m_a;
|
||||
size_type m_size;
|
||||
};
|
||||
} // namespace plib
|
||||
|
||||
|
@ -45,11 +45,11 @@
|
||||
* Standard alignment macros
|
||||
*/
|
||||
|
||||
#define PALIGN_CACHELINE (64)
|
||||
#define PALIGN_VECTOROPT (32)
|
||||
#define PALIGN_CACHELINE (64)
|
||||
#define PALIGN_VECTOROPT (32)
|
||||
|
||||
#define PALIGNAS_CACHELINE() PALIGNAS(PALIGN_CACHELINE)
|
||||
#define PALIGNAS_VECTOROPT() PALIGNAS(PALIGN_VECTOROPT)
|
||||
#define PALIGNAS_CACHELINE() PALIGNAS(PALIGN_CACHELINE)
|
||||
#define PALIGNAS_VECTOROPT() PALIGNAS(PALIGN_VECTOROPT)
|
||||
|
||||
/* Breaks mame build on windows due to -Wattribute */
|
||||
#if defined(_WIN32) && defined(__GNUC__)
|
||||
|
@ -29,8 +29,8 @@ namespace plib {
|
||||
constexpr pool_deleter() noexcept = default;
|
||||
|
||||
template<typename PU, typename U, typename = typename
|
||||
std::enable_if<std::is_convertible< U*, T*>::value>::type>
|
||||
pool_deleter(const pool_deleter<PU, U>&) noexcept { }
|
||||
std::enable_if<std::is_convertible< U*, T*>::value>::type>
|
||||
pool_deleter(const pool_deleter<PU, U>&) noexcept { }
|
||||
|
||||
void operator()(T *p) const
|
||||
{
|
||||
@ -140,7 +140,7 @@ namespace plib {
|
||||
auto capacity(rs);
|
||||
ret = std::align(align, size, ret, capacity);
|
||||
// FIXME: if (ret == nullptr)
|
||||
// printf("Oh no\n");
|
||||
// printf("Oh no\n");
|
||||
sinfo().insert({ ret, info(b, b->m_cur)});
|
||||
rs -= (capacity - size);
|
||||
b->m_cur += rs;
|
||||
@ -156,7 +156,7 @@ namespace plib {
|
||||
auto capacity(rs);
|
||||
ret = std::align(align, size, ret, capacity);
|
||||
// FIXME: if (ret == nullptr)
|
||||
// printf("Oh no\n");
|
||||
// printf("Oh no\n");
|
||||
sinfo().insert({ ret, info(b, b->m_cur)});
|
||||
rs -= (capacity - size);
|
||||
b->m_cur += rs;
|
||||
|
@ -17,7 +17,7 @@
|
||||
|
||||
#include <cstring>
|
||||
|
||||
#define NLTOOL_VERSION 20190202
|
||||
#define NLTOOL_VERSION 20190202
|
||||
|
||||
class tool_app_t : public plib::app
|
||||
{
|
||||
|
@ -67,7 +67,7 @@ private:
|
||||
plib::parray<FT, SIZE> new_V;
|
||||
|
||||
std::array<plib::aligned_vector<FT *, PALIGN_VECTOROPT>, storage_N> m_term_cr;
|
||||
// std::array<std::vector<FT *>, storage_N> m_term_cr;
|
||||
// std::array<std::vector<FT *>, storage_N> m_term_cr;
|
||||
|
||||
mat_type mat;
|
||||
|
||||
|
@ -3,24 +3,24 @@
|
||||
/******************************************************************************
|
||||
|
||||
basic information
|
||||
https://gbatemp.net/threads/the-c2-color-game-console-an-obscure-chinese-handheld.509320/
|
||||
https://gbatemp.net/threads/the-c2-color-game-console-an-obscure-chinese-handheld.509320/
|
||||
|
||||
"The C2 is a glorious console with a D-Pad, Local 2.4GHz WiFi, Cartridge slot, A, B, and C buttons,
|
||||
and has micro usb power! Don't be fooled though, there is no lithium battery, so you have to put in
|
||||
3 AA batteries if you don't want to play with it tethered to a charger.
|
||||
"The C2 is a glorious console with a D-Pad, Local 2.4GHz WiFi, Cartridge slot, A, B, and C buttons,
|
||||
and has micro usb power! Don't be fooled though, there is no lithium battery, so you have to put in
|
||||
3 AA batteries if you don't want to play with it tethered to a charger.
|
||||
|
||||
It comes with a built in game based on the roco kingdom characters.
|
||||
|
||||
In addition, there is a slot on the side of the console allowing cards to be swiped through. Those
|
||||
cards can add characters to the game. The console scans the barcode and a new character or item appears in the game for you to use.
|
||||
cards can add characters to the game. The console scans the barcode and a new character or item appears in the game for you to use.
|
||||
|
||||
The C2 comes with 9 holographic game cards that will melt your eyes."
|
||||
|
||||
also includes a link to the following video
|
||||
https://www.youtube.com/watch?v=D3XO4aTZEko
|
||||
also includes a link to the following video
|
||||
https://www.youtube.com/watch?v=D3XO4aTZEko
|
||||
|
||||
TODO:
|
||||
identify CPU type, and if the system ROM is needed to run carts or not
|
||||
TODO:
|
||||
identify CPU type, and if the system ROM is needed to run carts or not
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
|
@ -32,9 +32,9 @@
|
||||
motherboard and varying game boards. Sly Spy, Midnight Resistance and
|
||||
Boulderdash use the same graphics chips but are different pcbs.
|
||||
|
||||
Bandit (USA) is almost certainly a field test prototype, the software runs
|
||||
on a Heavy Barrel board including the original Heavy Barrel MCU (which is effectively
|
||||
not used). There is also Japanese version known to run on a DE-0321-1 top board.
|
||||
Bandit (USA) is almost certainly a field test prototype, the software runs
|
||||
on a Heavy Barrel board including the original Heavy Barrel MCU (which is effectively
|
||||
not used). There is also Japanese version known to run on a DE-0321-1 top board.
|
||||
|
||||
There are Secret Agent (bootleg) and Robocop (bootleg) sets to add.
|
||||
|
||||
@ -472,11 +472,11 @@ void dec0_state::dec0_map(address_map &map)
|
||||
map(0x310000, 0x3107ff).ram().w(m_palette, FUNC(palette_device::write16)).share("palette");
|
||||
map(0x314000, 0x3147ff).ram().w(m_palette, FUNC(palette_device::write16_ext)).share("palette_ext");
|
||||
|
||||
map(0x318000, 0x31bfff).ram().share("ram"); // Bandit uses 318000/31c000 which are mirrors but exact mirror patten is unclear
|
||||
map(0x31c000, 0x31c7ff).ram().share("spriteram");
|
||||
map(0x318000, 0x31bfff).ram().share("ram"); // Bandit uses 318000/31c000 which are mirrors but exact mirror patten is unclear
|
||||
map(0x31c000, 0x31c7ff).ram().share("spriteram");
|
||||
|
||||
map(0xff8000, 0xffbfff).ram().share("ram"); /* Main ram */
|
||||
map(0xffc000, 0xffc7ff).ram().share("spriteram");
|
||||
map(0xffc000, 0xffc7ff).ram().share("spriteram");
|
||||
}
|
||||
|
||||
void dec0_state::robocop_map(address_map &map)
|
||||
@ -697,7 +697,7 @@ void dec0_state::midresb_map(address_map &map)
|
||||
void dec0_state::dec0_s_map(address_map &map)
|
||||
{
|
||||
map(0x0000, 0x07ff).ram();
|
||||
map(0x0800, 0x0801).rw("ym1", FUNC(ym2203_device::read), FUNC(ym2203_device::write));
|
||||
map(0x0800, 0x0801).rw("ym1", FUNC(ym2203_device::read), FUNC(ym2203_device::write));
|
||||
map(0x1000, 0x1001).rw("ym2", FUNC(ym3812_device::read), FUNC(ym3812_device::write));
|
||||
map(0x3000, 0x3000).r(m_soundlatch, FUNC(generic_latch_8_device::read));
|
||||
map(0x3800, 0x3800).rw("oki", FUNC(okim6295_device::read), FUNC(okim6295_device::write));
|
||||
@ -1083,94 +1083,94 @@ static INPUT_PORTS_START( bandit )
|
||||
PORT_INCLUDE( dec0 )
|
||||
|
||||
PORT_MODIFY("INPUTS")
|
||||
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("P1 Fire")
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("P1 Bomb")
|
||||
PORT_BIT( 0x00c0, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL PORT_NAME("P2 Fire")
|
||||
PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL PORT_NAME("P2 Bomb")
|
||||
PORT_BIT( 0xc000, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("P1 Fire")
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("P1 Bomb")
|
||||
PORT_BIT( 0x00c0, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL PORT_NAME("P2 Fire")
|
||||
PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL PORT_NAME("P2 Bomb")
|
||||
PORT_BIT( 0xc000, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
|
||||
#if 0
|
||||
PORT_DIPNAME( 0x0001, 0x0001, "UNK_0" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0002, 0x0002, "UNK_1" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0004, 0x0004, "UNK_2" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0008, 0x0008, "UNK_3" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0010, 0x0010, "UNK_4" ) // Gun
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0020, 0x0020, "UNK_5" ) // Missile
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0040, 0x0040, "UNK_6" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0080, 0x0080, "UNK_7" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0001, 0x0001, "UNK_0" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0002, 0x0002, "UNK_1" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0004, 0x0004, "UNK_2" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0008, 0x0008, "UNK_3" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0008, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0010, 0x0010, "UNK_4" ) // Gun
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0020, 0x0020, "UNK_5" ) // Missile
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0040, 0x0040, "UNK_6" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0080, 0x0080, "UNK_7" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
|
||||
#endif
|
||||
PORT_MODIFY("SYSTEM")
|
||||
PORT_BIT( 0x0003, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
|
||||
PORT_START("DSW")
|
||||
PORT_DIPNAME( 0x0001, 0x0001, "Analog controls?" ) // ?
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0002, 0x0002, "L/R control related (keep off)" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0004, 0x0004, "DSUNK_2" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0008, 0x0000, "Road select (debug)" ) // Debug mode
|
||||
PORT_DIPSETTING( 0x0008, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Flip_Screen ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0020, 0x0020, "DSUNK_5" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0040, 0x0040, "DSUNK_6" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0080, 0x0000, "Enable enemies" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0001, 0x0001, "Analog controls?" ) // ?
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0002, 0x0002, "L/R control related (keep off)" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0002, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0004, 0x0004, "DSUNK_2" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0004, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0008, 0x0000, "Road select (debug)" ) // Debug mode
|
||||
PORT_DIPSETTING( 0x0008, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0010, 0x0010, DEF_STR( Flip_Screen ) )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0010, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0020, 0x0020, "DSUNK_5" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0020, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0040, 0x0040, "DSUNK_6" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0040, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0080, 0x0000, "Enable enemies" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
|
||||
|
||||
PORT_DIPNAME( 0x0100, 0x0100, "DSUNK_8" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0100, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0200, 0x0200, "DSUNK_9" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0200, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0400, 0x0400, "DSUNK_A" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0400, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0800, 0x0800, "DSUNK_B" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0800, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x1000, 0x1000, "DSUNK_C" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x2000, 0x2000, "DSUNK_D" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x4000, 0x4000, "DSUNK_E" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x8000, 0x8000, "DSUNK_F" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0100, 0x0100, "DSUNK_8" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0100, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0200, 0x0200, "DSUNK_9" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0200, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0400, 0x0400, "DSUNK_A" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0400, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x0800, 0x0800, "DSUNK_B" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x0800, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x1000, 0x1000, "DSUNK_C" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x1000, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x2000, 0x2000, "DSUNK_D" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x2000, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x4000, 0x4000, "DSUNK_E" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x4000, DEF_STR( Off ) )
|
||||
PORT_DIPNAME( 0x8000, 0x8000, "DSUNK_F" )
|
||||
PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
|
||||
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
|
||||
|
||||
PORT_INCLUDE( rotary_null )
|
||||
PORT_INCLUDE( rotary_null )
|
||||
PORT_INCLUDE( trackball_ports )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
@ -918,7 +918,7 @@ ROM_END
|
||||
|
||||
// main PCB is marked: "MC9003" and "MADE IN ITALY" on component side
|
||||
// main PCB is marked: "MADE IN ITALY" on solder side
|
||||
// ROMs PCB is marked: "MG25157" on component side
|
||||
// ROMs PCB is marked: "MG25157" on component side
|
||||
ROM_START( boggy84b2 )
|
||||
ROM_REGION( 0x10000, "maincpu", 0 )
|
||||
ROM_LOAD( "boggy84-1.bin", 0x0000, 0x1000, CRC(97235e3a) SHA1(f493efd03331416a392cab7d73e39029d7e8098c) )
|
||||
|
@ -560,7 +560,7 @@ void gaelco2_state::play2000_map(address_map &map)
|
||||
{
|
||||
map(0x000000, 0x03ffff).rom(); /* ROM */
|
||||
map(0x100000, 0x100001).portr("IN0"); /* Coins + other buttons? */
|
||||
map(0x110000, 0x110001).portr("IN1");
|
||||
map(0x110000, 0x110001).portr("IN1");
|
||||
map(0x200000, 0x20ffff).ram().w(FUNC(gaelco2_state::gaelco2_vram_w)).share("spriteram"); /* Video RAM */
|
||||
map(0x202890, 0x2028ff).rw("gaelco", FUNC(gaelco_gae1_device::gaelcosnd_r), FUNC(gaelco_gae1_device::gaelcosnd_w)); /* Sound Registers */
|
||||
map(0x214000, 0x214fff).ram().w(FUNC(gaelco2_state::gaelco2_palette_w)).share("paletteram"); /* Palette */
|
||||
|
@ -2,24 +2,24 @@
|
||||
// copyright-holders:David Haywood
|
||||
/******************************************************************************
|
||||
|
||||
LEAPPAD:
|
||||
Example-Video: https://www.youtube.com/watch?v=LtUhENu5TKc
|
||||
The LEAPPAD is basically compareable to the SEGA PICO, but without
|
||||
Screen-Output! Each "Game" consists of two parts (Book + Cartridge).
|
||||
Insert the cartridge into the system and add the Book on the Top of the
|
||||
"console" and you can click on each pages and hear sounds or
|
||||
learning-stuff on each page...
|
||||
LEAPPAD:
|
||||
Example-Video: https://www.youtube.com/watch?v=LtUhENu5TKc
|
||||
The LEAPPAD is basically compareable to the SEGA PICO, but without
|
||||
Screen-Output! Each "Game" consists of two parts (Book + Cartridge).
|
||||
Insert the cartridge into the system and add the Book on the Top of the
|
||||
"console" and you can click on each pages and hear sounds or
|
||||
learning-stuff on each page...
|
||||
|
||||
MY FIRST LEAPPAD:
|
||||
Basically the same as the LEAPPAD, but for even younger kids! (Cartridge
|
||||
internal PCB's are identical to LEAPPAD)
|
||||
Example Video: https://www.youtube.com/watch?v=gsf8XYV1Tpg
|
||||
MY FIRST LEAPPAD:
|
||||
Basically the same as the LEAPPAD, but for even younger kids! (Cartridge
|
||||
internal PCB's are identical to LEAPPAD)
|
||||
Example Video: https://www.youtube.com/watch?v=gsf8XYV1Tpg
|
||||
|
||||
Don't get confused by the name "LEAPPAD", as it looks like Leapfrog
|
||||
also released some kind of Tablet with this name, and they even released
|
||||
a new "LEAPPAD" in around 2016:
|
||||
https://www.youtube.com/watch?v=MXFSgj6xLTU , which nearly looks like the
|
||||
same, but is most likely techically completely different..
|
||||
Don't get confused by the name "LEAPPAD", as it looks like Leapfrog
|
||||
also released some kind of Tablet with this name, and they even released
|
||||
a new "LEAPPAD" in around 2016:
|
||||
https://www.youtube.com/watch?v=MXFSgj6xLTU , which nearly looks like the
|
||||
same, but is most likely techically completely different..
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
|
@ -329,7 +329,7 @@ Ferrari F355 Challenge (twin/deluxe, preview) no cart 22848P* 21 (64Mb) pre
|
||||
\Course Edition (twin/deluxe, prototype) no cart 23399 21 (64Mb) present 315-6206 317-0287-COM content is the same as regular 171-7919A cart
|
||||
Inu No Osanpo / Dog Walking (Rev A) 840-0073C 22294A 16 (64Mb) present 315-6206 317-0316-JPN requires 837-13844 JVS IO with DIPSW 1 ON
|
||||
/Mushiking The King Of Beetle
|
||||
\(MUSHIUSA '04 1ST, Prototype) not present none 11*(64Mb) present 315-6206 not present * only first 7 flash roms contain game data, PCB have label 840-0150B-FLS.
|
||||
\(MUSHIUSA '04 1ST, Prototype) not present none 11*(64Mb) present 315-6206 not present * only first 7 flash roms contain game data, PCB have label 840-0150B-FLS.
|
||||
Samba de Amigo (prototype) no cart ** 21*(64Mb) present 315-6206 317-0270-COM * only first 14 flash roms contain game data, ** instead of EPROM have tiny PCB with 2 flashroms on it
|
||||
/Shootout Pool Prize (Export) / Shootout
|
||||
\Pool The Medal (Japan) Version B (prototype) 840-0136C ** 21*(64Mb) present 317-6206 not present * only first 4 flash roms contain game data, ** instead of EPROM have tiny PCB with 2 flashroms on it
|
||||
@ -563,9 +563,9 @@ Marvel Vs. Capcom 2 New Age of Heroes (Korea, Rev A) 841-0007C-03 23085A 14
|
||||
MushiKing The King of Beetles 2K3 2ND 840-0150C 24217 6 (64Mb) present 317-0394-COM requires 610-0669 barcode reader, 838-14245-92 "MAPLE/232C CONVERT BD" (MIE-based), 838-14243 "RFID CHIP R/W BD" and RFID chip
|
||||
Quiz Ah Megamisama 840-0030C 23227 16 (64Mb) present 317-0280-JPN
|
||||
Shootout Pool 840-0098C 23844 4 (64Mb) present 317-0336-COM requires regular 837-13551 and 837-13938 rotary JVS boards
|
||||
/Shootout Pool Prize (Export) /
|
||||
/Shootout Pool Prize (Export) /
|
||||
\Shootout Pool The Medal (Japan, Rev A) 840-0128C 24065A 4 (64Mb) present 317-0367-COM requires Naomi-based hopper controller
|
||||
/Shootout Pool Prize (Export) /
|
||||
/Shootout Pool Prize (Export) /
|
||||
\Shootout Pool The Medal (Japan) Version B 840-0136C 24148 4 (64Mb) present 317-0367-COM requires Naomi-based or 837-14438 hopper controller (selected by P1 BUTTON1 bit)
|
||||
SWP Hopper Board 840-0130C 24083 20 (64Mb) present 317-0339-COM reused VF4 Evo ROM board with all maskROMs still in place; there is an additional 837-14381 IO board
|
||||
Touch de Uno! 2 840-0022C 23071 6 (64Mb) present 317-0276-JPN requires 837-13844 JVS IO with DIPSW 5 On, ELO AccuTouch-compatible touch screen controller and special printer.
|
||||
@ -9827,7 +9827,7 @@ ROM_START( clubk2k3 )
|
||||
ROM_COPY( "rom_board", 0x1000000, 0x400000, 0xc00000 )
|
||||
|
||||
/* ROM_REGION(0x200, "some_eeprom", 0)
|
||||
ROM_LOAD( "25lc040.ic13s", 0x000, 0x200, NO_DUMP ) */
|
||||
ROM_LOAD( "25lc040.ic13s", 0x000, 0x200, NO_DUMP ) */
|
||||
|
||||
// 840-0139 2003 317-0382-COM Naomi 2
|
||||
ROM_PARAMETER( ":rom_board:key", "d8b0fa4c" )
|
||||
|
@ -4,15 +4,15 @@
|
||||
|
||||
Sega Beena
|
||||
|
||||
non-video 'book' based learning system, like LeapPad etc.
|
||||
non-video 'book' based learning system, like LeapPad etc.
|
||||
|
||||
unknown CPU type (inside Sega custom?)
|
||||
unknown CPU type (inside Sega custom?)
|
||||
|
||||
cartridge ROM has 'edinburgh' in the header, maybe a system codename?
|
||||
ROM is also full of OGG files containing the string 'Encoded with Speex speex-1.0.4'
|
||||
as well as .mid files for music
|
||||
cartridge ROM has 'edinburgh' in the header, maybe a system codename?
|
||||
ROM is also full of OGG files containing the string 'Encoded with Speex speex-1.0.4'
|
||||
as well as .mid files for music
|
||||
|
||||
TODO: component list!
|
||||
TODO: component list!
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
|
@ -628,7 +628,7 @@ ROM_START( tetgiano )
|
||||
ROM_REGION( 0x08000000, "rom_board", ROMREGION_ERASEFF)
|
||||
|
||||
// TETRIS - DEKARIS (romaji)
|
||||
// / TETRIS® - GIANT
|
||||
// / TETRIS® - GIANT
|
||||
// MDA-C0076
|
||||
DISK_REGION( "cflash" )
|
||||
DISK_IMAGE( "mda-c0076", 0, SHA1(6987c888d2a3ada2d07f6396d47fdba507ca859d) )
|
||||
|
@ -13,27 +13,27 @@
|
||||
Justice League
|
||||
Dora the Explorer
|
||||
Mattel Classic Sports
|
||||
Disney Princess (GKR)
|
||||
Wheel of Fortune (GKR)
|
||||
(all GameKeyReady units?)
|
||||
Disney Princess (GKR)
|
||||
Wheel of Fortune (GKR)
|
||||
(all GameKeyReady units?)
|
||||
|
||||
"SunPlus QL8041C" ( known as Sunplus SPG2?? )
|
||||
Clickstart ( see clickstart.cpp instead)
|
||||
Wheel of Fortune 2nd Edition
|
||||
Clickstart ( see clickstart.cpp instead)
|
||||
Wheel of Fortune 2nd Edition
|
||||
|
||||
|
||||
"SunPlus PA7801" ( known as Sunplus SPG110? ) see spg110.cpp instead
|
||||
Classic Arcade Pinball
|
||||
EA Sports (NHL95 + Madden 95)
|
||||
|
||||
It is unknown if the following are close to this architecture or not (no dumps yet)
|
||||
Classic Arcade Pinball
|
||||
EA Sports (NHL95 + Madden 95)
|
||||
|
||||
"SunPlus QU7073-P69A"
|
||||
Mortal Kombat
|
||||
It is unknown if the following are close to this architecture or not (no dumps yet)
|
||||
|
||||
"Sunplus QL8167"
|
||||
Disney Princess (older)
|
||||
Go Diego Go
|
||||
"SunPlus QU7073-P69A"
|
||||
Mortal Kombat
|
||||
|
||||
"Sunplus QL8167"
|
||||
Disney Princess (older)
|
||||
Go Diego Go
|
||||
|
||||
|
||||
Disney Princess non-GKR is Sunplus QL8167.
|
||||
@ -53,11 +53,11 @@ Disney Princess non-GKR is Sunplus QL8167.
|
||||
|
||||
walle:
|
||||
Game seems unhappy with NVRAM, clears contents on each boot.
|
||||
jak_pooh:
|
||||
In the 'Light Tag' minigame (select the rock) you can't move left with the DRC (ok with -nodrc)
|
||||
and the game usually softlocks when you find a friend (with or without DRC)
|
||||
|
||||
vii:
|
||||
jak_pooh:
|
||||
In the 'Light Tag' minigame (select the rock) you can't move left with the DRC (ok with -nodrc)
|
||||
and the game usually softlocks when you find a friend (with or without DRC)
|
||||
|
||||
vii:
|
||||
When loading a cart from file manager, sometimes MAME will crash.
|
||||
The "MOTOR" option in the diagnostic menu does nothing when selected.
|
||||
The "SPEECH IC" option in the diagnostic menu does nothing when selected.
|
||||
@ -71,9 +71,9 @@ Disney Princess non-GKR is Sunplus QL8167.
|
||||
Test Modes:
|
||||
Justice League : press UP, DOWN, LEFT, BT3 on the JAKKS logo in that order, quickly, to get test menu
|
||||
WWE : press UP, BT1, BT2 together during startup logos
|
||||
|
||||
Disney Friends, MS Pacman, WallE, Batman (and some other HotGen GameKKeys) for test mode, hold UP,
|
||||
press A, press DOWN during startup
|
||||
|
||||
Disney Friends, MS Pacman, WallE, Batman (and some other HotGen GameKKeys) for test mode, hold UP,
|
||||
press A, press DOWN during startup
|
||||
|
||||
TODO:
|
||||
Work out how to access the hidden TEST menus for all games (most JAKKS games should have one at least)
|
||||
@ -1979,7 +1979,7 @@ void spg2xx_game_state::init_crc()
|
||||
|
||||
logerror("Calculated Byte Sum of bytes from 0x10 to 0x%08x is %08x)\n", length - 1, checksum);
|
||||
}
|
||||
|
||||
|
||||
void spg2xx_game_state::init_zeus()
|
||||
{
|
||||
uint16_t *ROM = (uint16_t*)memregion("maincpu")->base();
|
||||
@ -2052,11 +2052,11 @@ CONS( 2005, jak_wof, 0, 0, jakks_gkr_wf_i2c, jak_wf_i2c, jakks_gkr_state, emp
|
||||
CONS( 2004, jak_spdm, 0, 0, jakks_gkr_mv_i2c, jak_gkr_i2c, jakks_gkr_state, empty_init, "JAKKS Pacific Inc / Digital Eclipse", "Spider-Man (JAKKS Pacific TV Game, Game-Key Ready)", MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // MV (1 key available)
|
||||
CONS( 2005, jak_pooh, 0, 0, jakks_gkr_wp, jak_pooh, jakks_gkr_state, empty_init, "JAKKS Pacific Inc / Backbone Entertainment", "Winnie the Pooh - Piglet's Special Day (JAKKS Pacific TV Game, Game-Key Ready)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // WP (no game-keys released)
|
||||
|
||||
// SpongeBob SquarePants: The Fry Cook Games NK (3 keys available) ^^
|
||||
// SpongeBob SquarePants: The Fry Cook Games NK (3 keys available) ^^
|
||||
|
||||
// no keys released for the following, some were in development but cancelled
|
||||
// Capcom 3-in-1 CC (no game-keys released)
|
||||
// Care Bears CB (no game-keys released)
|
||||
// Care Bears CB (no game-keys released)
|
||||
|
||||
// Radica TV games
|
||||
CONS( 2006, rad_skat, 0, 0, rad_skat, rad_skat, spg2xx_game_state, init_crc, "Radica", "Play TV Skateboarder (NTSC)", MACHINE_IMPERFECT_SOUND | MACHINE_IMPERFECT_GRAPHICS )
|
||||
|
@ -2,74 +2,74 @@
|
||||
// copyright-holders:Ryan Holtz
|
||||
/******************************************************************************
|
||||
|
||||
Wireless Hunting Video Game System skeleton driver
|
||||
Wireless Hunting Video Game System skeleton driver
|
||||
|
||||
System: Wireless Hunting Video Game System
|
||||
Publisher: Hamy / Kids Station Toys Inc
|
||||
Year: 2011
|
||||
ROM: FDI MSP55LV100G
|
||||
RAM: Micron Technology 48LC8M16A2
|
||||
System: Wireless Hunting Video Game System
|
||||
Publisher: Hamy / Kids Station Toys Inc
|
||||
Year: 2011
|
||||
ROM: FDI MSP55LV100G
|
||||
RAM: Micron Technology 48LC8M16A2
|
||||
|
||||
Games:
|
||||
Secret Mission
|
||||
Predator
|
||||
Delta Force
|
||||
Toy Land
|
||||
Dream Forest
|
||||
Trophy Season
|
||||
Freedom Force
|
||||
Be Careful
|
||||
Net Power
|
||||
Open Training
|
||||
Super Archer
|
||||
Ultimate Frisbee
|
||||
UFO Shooting
|
||||
Happy Darts
|
||||
Balloon Shoot
|
||||
Avatair
|
||||
Angry Pirate
|
||||
Penguin War
|
||||
Ghost Shooter
|
||||
Duck Hunt
|
||||
Games:
|
||||
Secret Mission
|
||||
Predator
|
||||
Delta Force
|
||||
Toy Land
|
||||
Dream Forest
|
||||
Trophy Season
|
||||
Freedom Force
|
||||
Be Careful
|
||||
Net Power
|
||||
Open Training
|
||||
Super Archer
|
||||
Ultimate Frisbee
|
||||
UFO Shooting
|
||||
Happy Darts
|
||||
Balloon Shoot
|
||||
Avatair
|
||||
Angry Pirate
|
||||
Penguin War
|
||||
Ghost Shooter
|
||||
Duck Hunt
|
||||
|
||||
|
||||
ROM Board:
|
||||
Package: SO44
|
||||
Spacing: 1.27 mm
|
||||
Width: 16.14 mm
|
||||
Length: 27.78 mm
|
||||
Voltage: 3V
|
||||
Pinout:
|
||||
ROM Board:
|
||||
Package: SO44
|
||||
Spacing: 1.27 mm
|
||||
Width: 16.14 mm
|
||||
Length: 27.78 mm
|
||||
Voltage: 3V
|
||||
Pinout:
|
||||
|
||||
A25 A24
|
||||
| |
|
||||
+--------------------------+
|
||||
A21 --|== # # `.__.' ==|-- A20
|
||||
A18 --|== ==|-- A19
|
||||
A17 --|== ==|-- A8
|
||||
A7 --|== ==|-- A9
|
||||
A6 --|== o ==|-- A10
|
||||
A5 --|== +----------------+ ==|-- A11
|
||||
A4 --|== | | ==|-- A12
|
||||
A3 --|== | MSP55LV100G | ==|-- A13
|
||||
A2 --|== | 0834 M02H | ==|-- A14
|
||||
A1 --|== | JAPAN | ==|-- A15
|
||||
A0 --|== | | ==|-- A16
|
||||
#CE --|== | | ==|-- A23
|
||||
GND --|== | | ==|-- A22
|
||||
#OE --|== | | ==|-- Q15
|
||||
Q0 --|== | | ==|-- Q7
|
||||
Q8 --|== | | ==|-- Q14
|
||||
Q1 --|== +----------------+ ==|-- Q6
|
||||
Q9 --|== ==|-- Q13
|
||||
Q2 --|== M55L100G ==|-- Q5
|
||||
Q10 --|== ==|-- Q12
|
||||
Q3 --|== ==|-- Q4
|
||||
Q11 --|== ==|-- VCC
|
||||
+--------------------------+
|
||||
A25 A24
|
||||
| |
|
||||
+--------------------------+
|
||||
A21 --|== # # `.__.' ==|-- A20
|
||||
A18 --|== ==|-- A19
|
||||
A17 --|== ==|-- A8
|
||||
A7 --|== ==|-- A9
|
||||
A6 --|== o ==|-- A10
|
||||
A5 --|== +----------------+ ==|-- A11
|
||||
A4 --|== | | ==|-- A12
|
||||
A3 --|== | MSP55LV100G | ==|-- A13
|
||||
A2 --|== | 0834 M02H | ==|-- A14
|
||||
A1 --|== | JAPAN | ==|-- A15
|
||||
A0 --|== | | ==|-- A16
|
||||
#CE --|== | | ==|-- A23
|
||||
GND --|== | | ==|-- A22
|
||||
#OE --|== | | ==|-- Q15
|
||||
Q0 --|== | | ==|-- Q7
|
||||
Q8 --|== | | ==|-- Q14
|
||||
Q1 --|== +----------------+ ==|-- Q6
|
||||
Q9 --|== ==|-- Q13
|
||||
Q2 --|== M55L100G ==|-- Q5
|
||||
Q10 --|== ==|-- Q12
|
||||
Q3 --|== ==|-- Q4
|
||||
Q11 --|== ==|-- VCC
|
||||
+--------------------------+
|
||||
|
||||
The only interesting string in this ROM is SPF2ALP,
|
||||
which is also found in the Wireless Air 60 ROM.
|
||||
The only interesting string in this ROM is SPF2ALP,
|
||||
which is also found in the Wireless Air 60 ROM.
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
|
@ -186,7 +186,7 @@
|
||||
7 PLAY TV OPUS /RADICA/USA,EU - - - - - - dumped (US version, PAL version appears to use different ROM)
|
||||
8 PLAY TV Baseball 2 /EPOCH/Japan, HK - - - - - - -
|
||||
9 Let's hit a homerun! Exciting baseball /EPOCH/Japan - - - - - -
|
||||
Play TV Baseball /RADICA/USA,EU 8017 x8 none none SSD 98 PA7351-107 dumped
|
||||
Play TV Baseball /RADICA/USA,EU 8017 x8 none none SSD 98 PA7351-107 dumped
|
||||
1999 1 ABC Jungle Fun Hippo /Vteck/HK, USA, France - - - - - - -
|
||||
Unknown 1 PLAY TV Football /RADICA/USA 74021 x8 48 4M none SSD 98 PL7351-181 dumped
|
||||
XaviXTennis SGM6446 x16 48 8M 24C08 SSD 2002 NEC 85054-611 dumped
|
||||
@ -891,7 +891,7 @@ static INPUT_PORTS_START( popira2 ) // player 2 buttons have heavy latency, prob
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_NAME("P2 Pad 1") PORT_PLAYER(2)
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_NAME("P2 Pad 2") PORT_PLAYER(2)
|
||||
|
||||
|
||||
PORT_MODIFY("AN1") // 01
|
||||
PORT_DIPNAME( 0x0001, 0x0001, "AN1" )
|
||||
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
|
||||
@ -2073,7 +2073,7 @@ ROM_END
|
||||
// [:] (possible DMA op SRC 00ebe2d3 DST 358a LEN 0398)
|
||||
// needs to come from 006be2d3 (so still from lower 8MB, not upper 8MB)
|
||||
|
||||
ROM_START( xavmusic )
|
||||
ROM_START( xavmusic )
|
||||
ROM_REGION( 0x1000000, "bios", ROMREGION_ERASE00 )
|
||||
ROM_LOAD( "xpmusicandcircuit.bin", 0x000000, 0x1000000, CRC(e06129d2) SHA1(d074d0dd85ce870f435da3c066a7f52b50999665) )
|
||||
ROM_END
|
||||
|
@ -2,11 +2,11 @@
|
||||
// copyright-holders:David Haywood
|
||||
/******************************************************************************
|
||||
|
||||
XaviX 2
|
||||
XaviX 2
|
||||
|
||||
unknown architecture, does not appear to be 6502 derived like XaviX / SuperXaviX
|
||||
unknown architecture, does not appear to be 6502 derived like XaviX / SuperXaviX
|
||||
|
||||
die is marked "SSD 2002-2004 NEC 800208-51"
|
||||
die is marked "SSD 2002-2004 NEC 800208-51"
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
|
@ -106,10 +106,10 @@ public:
|
||||
|
||||
void xavix(machine_config &config);
|
||||
void xavix_nv(machine_config &config);
|
||||
|
||||
|
||||
void xavixp(machine_config &config);
|
||||
void xavixp_nv(machine_config &config);
|
||||
|
||||
|
||||
void xavix2000(machine_config &config);
|
||||
void xavix2000_nv(machine_config &config);
|
||||
|
||||
@ -796,7 +796,7 @@ protected:
|
||||
m_cartslot->write_bus_control(space,offset,data,mem_mask);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
virtual uint8_t extbus_r(offs_t offset) override
|
||||
{
|
||||
if (m_cartslot->has_cart() && m_cartslot->is_read_access_not_rom())
|
||||
|
@ -145,4 +145,4 @@
|
||||
<bezel element="text_b32"><bounds x="46" y="33.45" width="8" height="1.4" /></bezel>
|
||||
|
||||
</view>
|
||||
</mamelayout>
|
||||
</mamelayout>
|
||||
|
@ -179,4 +179,4 @@
|
||||
<bezel element="text_b32"><bounds x="46" y="33.45" width="8" height="1.4" /></bezel>
|
||||
|
||||
</view>
|
||||
</mamelayout>
|
||||
</mamelayout>
|
||||
|
526
src/mame/layout/md6802.lay
Executable file → Normal file
526
src/mame/layout/md6802.lay
Executable file → Normal file
@ -5,16 +5,16 @@ copyright-holders:Joakim Larsson Edstrom
|
||||
Didact MD6802 layout
|
||||
-->
|
||||
<mamelayout version="2">
|
||||
<element name="redled" defstate="0">
|
||||
<disk state="0"><color red="0.2" green="0.0" blue="0.0" /></disk>
|
||||
<disk state="1"><color red="1.0" green="0.0" blue="0.0" /></disk>
|
||||
<element name="redled" defstate="0">
|
||||
<disk state="0"><color red="0.2" green="0.0" blue="0.0" /></disk>
|
||||
<disk state="1"><color red="1.0" green="0.0" blue="0.0" /></disk>
|
||||
</element>
|
||||
<element name="button" defstate="1">
|
||||
<disk state="0"><color red="1.0" green="1.0" blue="1.0" /></disk>
|
||||
<disk state="1"><color red="0.75" green="0.75" blue="0.75" /></disk>
|
||||
<disk state="0"><color red="1.0" green="1.0" blue="1.0" /></disk>
|
||||
<disk state="1"><color red="0.75" green="0.75" blue="0.75" /></disk>
|
||||
</element>
|
||||
<element name="digit" defstate="1">
|
||||
<led7seg><color red="0.75" green="0.0" blue="0.0" /></led7seg>
|
||||
<led7seg><color red="0.75" green="0.0" blue="0.0" /></led7seg>
|
||||
</element>
|
||||
<element name="text_shift"><text string="SHIFT" align="1"><color red="0.7" green="0.7" blue="0.7" /></text></element>
|
||||
<element name="text_reset"><text string="RESET" align="1"><color red="0.7" green="0.7" blue="0.7" /></text></element>
|
||||
@ -53,328 +53,328 @@ Didact MD6802 layout
|
||||
<element name="silver"> <rect><color red="0.75" green="0.75" blue="0.75" /></rect></element>
|
||||
<element name="brown"> <rect><color red="0.18" green="0.08" blue="0.03" /></rect></element>
|
||||
<element name="text_terminal"><text string="Terminal"><color red="0.7" green="0.7" blue="0.7" /></text></element>
|
||||
|
||||
|
||||
<element name="mount">
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="0.0" green="0.0" blue="0.0" /></disk>
|
||||
<disk><bounds x="22" y="22" width="56" height="56" /><color red="0.43" green="0.47" blue="0.45" /></disk>
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="0.0" green="0.0" blue="0.0" /></disk>
|
||||
<disk><bounds x="22" y="22" width="56" height="56" /><color red="0.43" green="0.47" blue="0.45" /></disk>
|
||||
</element>
|
||||
|
||||
<element name="screwhead">
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="0" green="0" blue="0" /></disk>
|
||||
<disk><bounds x="2" y="2" width="96" height="96" /> <color red="0.1" green="0.1" blue="0.1" /></disk>
|
||||
<disk><bounds x="5" y="5" width="90" height="90" /> <color red="0.2" green="0.2" blue="0.2" /></disk>
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="0" green="0" blue="0" /></disk>
|
||||
<disk><bounds x="2" y="2" width="96" height="96" /> <color red="0.1" green="0.1" blue="0.1" /></disk>
|
||||
<disk><bounds x="5" y="5" width="90" height="90" /> <color red="0.2" green="0.2" blue="0.2" /></disk>
|
||||
</element>
|
||||
|
||||
<element name="hole">
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="0" green="0" blue="0" /></disk>
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="0" green="0" blue="0" /></disk>
|
||||
</element>
|
||||
|
||||
<group name="screw">
|
||||
<bezel element="screwhead"><bounds x="0" y="0" width="100" height="100" /></bezel>
|
||||
<repeat count="~c~">
|
||||
<param name="xl" start="~x~" increment="~xi~" />
|
||||
<param name="yl" start="~y~" increment="~yi~" />
|
||||
<bezel element="hole"><bounds x="~xl~" y="~yl~" width="8" height="8" /></bezel>
|
||||
</repeat>
|
||||
<bezel element="screwhead"><bounds x="0" y="0" width="100" height="100" /></bezel>
|
||||
<repeat count="~c~">
|
||||
<param name="xl" start="~x~" increment="~xi~" />
|
||||
<param name="yl" start="~y~" increment="~yi~" />
|
||||
<bezel element="hole"><bounds x="~xl~" y="~yl~" width="8" height="8" /></bezel>
|
||||
</repeat>
|
||||
</group>
|
||||
|
||||
<group name="pinpair">
|
||||
<bezel element="silver"><bounds x="29" y="0" width="50" height="100" /></bezel>
|
||||
<bezel element="black"> <bounds x="0" y="10" width="108" height="80" /></bezel>
|
||||
<bezel element="silver"><bounds x="29" y="0" width="50" height="100" /></bezel>
|
||||
<bezel element="black"> <bounds x="0" y="10" width="108" height="80" /></bezel>
|
||||
</group>
|
||||
|
||||
|
||||
<group name="dip7">
|
||||
<repeat count="7">
|
||||
<param name="x" start="0" increment="100" />
|
||||
<group ref="pinpair"><bounds x="~x~" y="0" width="108" height="100" /></group>
|
||||
</repeat>
|
||||
<repeat count="7">
|
||||
<param name="x" start="0" increment="100" />
|
||||
<group ref="pinpair"><bounds x="~x~" y="0" width="108" height="100" /></group>
|
||||
</repeat>
|
||||
</group>
|
||||
|
||||
<group name="dip8">
|
||||
<repeat count="8">
|
||||
<param name="x" start="0" increment="100" />
|
||||
<group ref="pinpair"><bounds x="~x~" y="0" width="108" height="100" /></group>
|
||||
</repeat>
|
||||
<repeat count="8">
|
||||
<param name="x" start="0" increment="100" />
|
||||
<group ref="pinpair"><bounds x="~x~" y="0" width="108" height="100" /></group>
|
||||
</repeat>
|
||||
</group>
|
||||
|
||||
<group name="dip10">
|
||||
<repeat count="10">
|
||||
<param name="x" start="0" increment="100" />
|
||||
<group ref="pinpair"><bounds x="~x~" y="0" width="108" height="100" /></group>
|
||||
</repeat>
|
||||
<repeat count="10">
|
||||
<param name="x" start="0" increment="100" />
|
||||
<group ref="pinpair"><bounds x="~x~" y="0" width="108" height="100" /></group>
|
||||
</repeat>
|
||||
</group>
|
||||
|
||||
<group name="dip12">
|
||||
<repeat count="12">
|
||||
<param name="x" start="0" increment="100" />
|
||||
<group ref="pinpair"><bounds x="~x~" y="0" width="108" height="100" /></group>
|
||||
</repeat>
|
||||
<repeat count="12">
|
||||
<param name="x" start="0" increment="100" />
|
||||
<group ref="pinpair"><bounds x="~x~" y="0" width="108" height="100" /></group>
|
||||
</repeat>
|
||||
</group>
|
||||
|
||||
<group name="dip20">
|
||||
<repeat count="20">
|
||||
<param name="x" start="0" increment="100" />
|
||||
<group ref="pinpair"><bounds x="~x~" y="0" width="108" height="100" /></group>
|
||||
</repeat>
|
||||
<repeat count="20">
|
||||
<param name="x" start="0" increment="100" />
|
||||
<group ref="pinpair"><bounds x="~x~" y="0" width="108" height="100" /></group>
|
||||
</repeat>
|
||||
</group>
|
||||
|
||||
<group name="dip">
|
||||
<repeat count="~pp~">
|
||||
<param name="x" start="0" increment="100" />
|
||||
<param name="xp" start="28" increment="100" />
|
||||
<bezel element="silver"><bounds x="~xp~" y="0" width="50" height="100" /></bezel>
|
||||
<bezel element="black"> <bounds x="~x~" y="10" width="106" height="80" /></bezel>
|
||||
</repeat>
|
||||
<repeat count="~pp~">
|
||||
<param name="x" start="0" increment="100" />
|
||||
<param name="xp" start="28" increment="100" />
|
||||
<bezel element="silver"><bounds x="~xp~" y="0" width="50" height="100" /></bezel>
|
||||
<bezel element="black"> <bounds x="~x~" y="10" width="106" height="80" /></bezel>
|
||||
</repeat>
|
||||
</group>
|
||||
|
||||
<group name="vdip">
|
||||
<group ref="dip"><orientation rotate="90" /></group>
|
||||
<group ref="dip"><orientation rotate="90" /></group>
|
||||
</group>
|
||||
|
||||
|
||||
<group name="hdip">
|
||||
<group ref="dip" />
|
||||
<group ref="dip" />
|
||||
</group>
|
||||
|
||||
<group name="digit">
|
||||
<bezel name="digit~dno~" element="digit">
|
||||
<bounds x="~x~" y="~y~" width="188" height="276" />
|
||||
</bezel>
|
||||
<bezel name="digit~dno~" element="digit">
|
||||
<bounds x="~x~" y="~y~" width="188" height="276" />
|
||||
</bezel>
|
||||
</group>
|
||||
|
||||
|
||||
<element name="keycap">
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="0.0" green="0.0" blue="0.0" /></disk>
|
||||
<disk><bounds x="3" y="3" width="94" height="94" /><color red="0.2" green="0.2" blue="0.2" /></disk>
|
||||
<disk state="0"><bounds x="10" y="10" width="80" height="80" /><color red="0.1" green="0.1" blue="0.1" /></disk>
|
||||
<disk state="1"><bounds x="10" y="10" width="80" height="80" /><color red="0.2" green="0.2" blue="0.2" /></disk>
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="0.0" green="0.0" blue="0.0" /></disk>
|
||||
<disk><bounds x="3" y="3" width="94" height="94" /><color red="0.2" green="0.2" blue="0.2" /></disk>
|
||||
<disk state="0"><bounds x="10" y="10" width="80" height="80" /><color red="0.1" green="0.1" blue="0.1" /></disk>
|
||||
<disk state="1"><bounds x="10" y="10" width="80" height="80" /><color red="0.2" green="0.2" blue="0.2" /></disk>
|
||||
</element>
|
||||
|
||||
|
||||
<group name="key">
|
||||
<bezel element="keycap" inputtag="LINE~line~" inputmask="~mask~">
|
||||
<bounds x="~x~" y="~y~" width="22" height="22" />
|
||||
</bezel>
|
||||
<bezel element="text_~bname~">
|
||||
<bounds x="~xt~" y="~yt~" width="28" height="7" />
|
||||
</bezel>
|
||||
<bezel element="keycap" inputtag="LINE~line~" inputmask="~mask~">
|
||||
<bounds x="~x~" y="~y~" width="22" height="22" />
|
||||
</bezel>
|
||||
<bezel element="text_~bname~">
|
||||
<bounds x="~xt~" y="~yt~" width="28" height="7" />
|
||||
</bezel>
|
||||
</group>
|
||||
|
||||
<group name="eurofem">
|
||||
<bezel element="white"><bounds x="0" y="0" width="9400" height="1060" /></bezel>
|
||||
<bezel element="black"><bounds x="420" y="60" width="8560" height="660" /></bezel>
|
||||
<bezel element="black"><bounds x="520" y="720" width="8360" height="240" /></bezel>
|
||||
<bezel element="white"><bounds x="440" y="80" width="8520" height="620" /></bezel>
|
||||
<bezel element="white"><bounds x="540" y="700" width="8320" height="240" /></bezel>
|
||||
<repeat count="3">
|
||||
<param name="y" start="220" increment="254" />
|
||||
<param name="yh" start="200" increment="254" />
|
||||
<repeat count="32">
|
||||
<param name="x" start="740" increment="254" />
|
||||
<param name="xh" start="702" increment="254" />
|
||||
<bezel element="gray"><bounds x="~xh~" y="~yh~" width="125" height="90" /></bezel>
|
||||
<bezel element="black"><bounds x="~x~" y="~y~" width="60" height="50" /></bezel>
|
||||
</repeat>
|
||||
</repeat>
|
||||
<bezel element="mount"><bounds x="60" y="380" width="300" height="300" /></bezel>
|
||||
<bezel element="mount"><bounds x="9040" y="380" width="300" height="300" /></bezel>
|
||||
<bezel element="white"><bounds x="0" y="0" width="9400" height="1060" /></bezel>
|
||||
<bezel element="black"><bounds x="420" y="60" width="8560" height="660" /></bezel>
|
||||
<bezel element="black"><bounds x="520" y="720" width="8360" height="240" /></bezel>
|
||||
<bezel element="white"><bounds x="440" y="80" width="8520" height="620" /></bezel>
|
||||
<bezel element="white"><bounds x="540" y="700" width="8320" height="240" /></bezel>
|
||||
<repeat count="3">
|
||||
<param name="y" start="220" increment="254" />
|
||||
<param name="yh" start="200" increment="254" />
|
||||
<repeat count="32">
|
||||
<param name="x" start="740" increment="254" />
|
||||
<param name="xh" start="702" increment="254" />
|
||||
<bezel element="gray"><bounds x="~xh~" y="~yh~" width="125" height="90" /></bezel>
|
||||
<bezel element="black"><bounds x="~x~" y="~y~" width="60" height="50" /></bezel>
|
||||
</repeat>
|
||||
</repeat>
|
||||
<bezel element="mount"><bounds x="60" y="380" width="300" height="300" /></bezel>
|
||||
<bezel element="mount"><bounds x="9040" y="380" width="300" height="300" /></bezel>
|
||||
</group>
|
||||
|
||||
|
||||
<group name="keyboard">
|
||||
<backdrop element="pcb_color"><bounds left="0" top="0" right="289" bottom="327"/></backdrop>
|
||||
<bezel element="text_md6802_kb"><bounds x="20" y="10" width="112" height="8" /></bezel>
|
||||
<bezel element="text_terminal"><bounds x="10" y="208" width="26" height="6" /></bezel>
|
||||
<backdrop element="pcb_color"><bounds left="0" top="0" right="289" bottom="327"/></backdrop>
|
||||
<bezel element="text_md6802_kb"><bounds x="20" y="10" width="112" height="8" /></bezel>
|
||||
<bezel element="text_terminal"><bounds x="10" y="208" width="26" height="6" /></bezel>
|
||||
|
||||
<group ref="eurofem"><bounds x="23" y="32" width="228" height="24"/></group>
|
||||
<group ref="eurofem"><bounds x="23" y="32" width="228" height="24"/></group>
|
||||
|
||||
<!-- BCD 7seg display -->
|
||||
<!-- AAAADD -->
|
||||
<repeat count="6">
|
||||
<param name="dno" start="0" increment="1" />
|
||||
<param name="x" start="30" increment="38" />
|
||||
<param name="xi" start="32" increment="38" />
|
||||
<param name="xd" start="33" increment="38" />
|
||||
<bezel element="white"><bounds x="~x~" y="112" width="39" height="44" /></bezel>
|
||||
<bezel element="pcb_color"><bounds x="~xi~" y="114" width="36" height="40" /></bezel>
|
||||
<bezel element="black"><bounds x="~xd~" y="116" width="34" height="38" /></bezel>
|
||||
<bezel name="digit~dno~" element="digit"><bounds x="~xd~" y="117" width="31" height="36" /></bezel>
|
||||
</repeat>
|
||||
|
||||
<!-- Key pad -->
|
||||
<repeat count="4">
|
||||
<param name="bname" start="0" increment="4" />
|
||||
<param name="line" start="0" increment="1" />
|
||||
<param name="y" start="295" increment="-30" />
|
||||
<param name="yt" start="287" increment="-30" />
|
||||
<repeat count="4">
|
||||
<param name="bname" start="~bname~" increment="1" />
|
||||
<param name="mask" start="1" lshift="1" />
|
||||
<param name="x" start="115" increment="30" />
|
||||
<param name="xt" start="120" increment="30" />
|
||||
<group ref="key"/>
|
||||
</repeat>
|
||||
</repeat>
|
||||
<!-- BCD 7seg display -->
|
||||
<!-- AAAADD -->
|
||||
<repeat count="6">
|
||||
<param name="dno" start="0" increment="1" />
|
||||
<param name="x" start="30" increment="38" />
|
||||
<param name="xi" start="32" increment="38" />
|
||||
<param name="xd" start="33" increment="38" />
|
||||
<bezel element="white"><bounds x="~x~" y="112" width="39" height="44" /></bezel>
|
||||
<bezel element="pcb_color"><bounds x="~xi~" y="114" width="36" height="40" /></bezel>
|
||||
<bezel element="black"><bounds x="~xd~" y="116" width="34" height="38" /></bezel>
|
||||
<bezel name="digit~dno~" element="digit"><bounds x="~xd~" y="117" width="31" height="36" /></bezel>
|
||||
</repeat>
|
||||
|
||||
<!-- RESET button -->
|
||||
<param name="line" value="4" />
|
||||
<param name="mask" value="0x04" />
|
||||
<param name="y" value="295" />
|
||||
<param name="yt" value="287" />
|
||||
<param name="x" value="85" />
|
||||
<param name="xt" value="90" />
|
||||
<param name="line" value="4" />
|
||||
<param name="bname" value="reset" />
|
||||
<group ref="key" />
|
||||
<!-- Key pad -->
|
||||
<repeat count="4">
|
||||
<param name="bname" start="0" increment="4" />
|
||||
<param name="line" start="0" increment="1" />
|
||||
<param name="y" start="295" increment="-30" />
|
||||
<param name="yt" start="287" increment="-30" />
|
||||
<repeat count="4">
|
||||
<param name="bname" start="~bname~" increment="1" />
|
||||
<param name="mask" start="1" lshift="1" />
|
||||
<param name="x" start="115" increment="30" />
|
||||
<param name="xt" start="120" increment="30" />
|
||||
<group ref="key"/>
|
||||
</repeat>
|
||||
</repeat>
|
||||
|
||||
<!-- SHIFT key led -->
|
||||
<bezel name="led1" element="redled"><bounds x="92" y="245" width="10" height="10"/></bezel>
|
||||
|
||||
<!-- SHIFT button -->
|
||||
<param name="mask" value="0x08" />
|
||||
<param name="y" value="265" />
|
||||
<param name="yt" value="257" />
|
||||
<param name="x" value="85" />
|
||||
<param name="xt" value="90" />
|
||||
<param name="line" value="4" />
|
||||
<param name="bname" value="shift" />
|
||||
<group ref="key" />
|
||||
<!-- RESET button -->
|
||||
<param name="line" value="4" />
|
||||
<param name="mask" value="0x04" />
|
||||
<param name="y" value="295" />
|
||||
<param name="yt" value="287" />
|
||||
<param name="x" value="85" />
|
||||
<param name="xt" value="90" />
|
||||
<param name="line" value="4" />
|
||||
<param name="bname" value="reset" />
|
||||
<group ref="key" />
|
||||
|
||||
<!-- screws -->
|
||||
<param name="x" value="15" />
|
||||
<param name="xi" value="1" />
|
||||
<param name="y" value="15" />
|
||||
<param name="yi" value="1" />
|
||||
<param name="c" value="60" />
|
||||
<group ref="screw"><bounds x="4" y="4" width="16" height="16" /></group>
|
||||
<param name="x" value="75" />
|
||||
<param name="xi" value="-1" />
|
||||
<group ref="screw"><bounds x="270" y="4" width="16" height="16" /></group>
|
||||
<param name="c" value="90" />
|
||||
<param name="y" value="2" />
|
||||
<param name="x" value="45" />
|
||||
<param name="xi" value="0" />
|
||||
<group ref="screw"><bounds x="270" y="290" width="16" height="16" /></group>
|
||||
<param name="y" value="45" />
|
||||
<param name="x" value="2" />
|
||||
<param name="xi" value="1" />
|
||||
<param name="yi" value="0" />
|
||||
<group ref="screw"><bounds x="4" y="290" width="16" height="16" /></group>
|
||||
<!-- SHIFT key led -->
|
||||
<bezel name="led1" element="redled"><bounds x="92" y="245" width="10" height="10"/></bezel>
|
||||
|
||||
<!-- scattered ICs -->
|
||||
<group ref="dip7"> <bounds x="45" y="70" width="44" height="20" /></group>
|
||||
<bezel element="text_122"> <bounds x="51" y="74" width="25" height="7" /></bezel>
|
||||
<!-- SHIFT button -->
|
||||
<param name="mask" value="0x08" />
|
||||
<param name="y" value="265" />
|
||||
<param name="yt" value="257" />
|
||||
<param name="x" value="85" />
|
||||
<param name="xt" value="90" />
|
||||
<param name="line" value="4" />
|
||||
<param name="bname" value="shift" />
|
||||
<group ref="key" />
|
||||
|
||||
<group ref="dip8"> <bounds x="44" y="176" width="20" height="50" /><orientation rotate="90" /></group>
|
||||
<bezel element="text_145"> <bounds x="50" y="180" width="7" height="25" /><orientation rotate="90" /></bezel>
|
||||
<!-- screws -->
|
||||
<param name="x" value="15" />
|
||||
<param name="xi" value="1" />
|
||||
<param name="y" value="15" />
|
||||
<param name="yi" value="1" />
|
||||
<param name="c" value="60" />
|
||||
<group ref="screw"><bounds x="4" y="4" width="16" height="16" /></group>
|
||||
<param name="x" value="75" />
|
||||
<param name="xi" value="-1" />
|
||||
<group ref="screw"><bounds x="270" y="4" width="16" height="16" /></group>
|
||||
<param name="c" value="90" />
|
||||
<param name="y" value="2" />
|
||||
<param name="x" value="45" />
|
||||
<param name="xi" value="0" />
|
||||
<group ref="screw"><bounds x="270" y="290" width="16" height="16" /></group>
|
||||
<param name="y" value="45" />
|
||||
<param name="x" value="2" />
|
||||
<param name="xi" value="1" />
|
||||
<param name="yi" value="0" />
|
||||
<group ref="screw"><bounds x="4" y="290" width="16" height="16" /></group>
|
||||
|
||||
<group ref="dip10"> <bounds x="97" y="59" width="65" height="20" /></group>
|
||||
<bezel element="text_145"> <bounds x="103" y="63" width="25" height="7" /></bezel>
|
||||
<!-- scattered ICs -->
|
||||
<group ref="dip7"> <bounds x="45" y="70" width="44" height="20" /></group>
|
||||
<bezel element="text_122"> <bounds x="51" y="74" width="25" height="7" /></bezel>
|
||||
|
||||
<group ref="dip8"> <bounds x="44" y="176" width="20" height="50" /><orientation rotate="90" /></group>
|
||||
<bezel element="text_145"> <bounds x="50" y="180" width="7" height="25" /><orientation rotate="90" /></bezel>
|
||||
|
||||
<group ref="dip10"> <bounds x="97" y="59" width="65" height="20" /></group>
|
||||
<bezel element="text_145"> <bounds x="103" y="63" width="25" height="7" /></bezel>
|
||||
|
||||
</group>
|
||||
|
||||
<group name="cpuboard">
|
||||
<backdrop element="pcb_color"><bounds left="0" top="0" right="390" bottom="242"/></backdrop>
|
||||
<bezel element="text_md6802_cpu"><bounds x="25" y="22" width="8" height="75" /><orientation rotate="90" /></bezel>
|
||||
|
||||
<group ref="eurofem"><bounds x="267" y="12" height="228" width="24" /><orientation rotate="90" /></group>
|
||||
<backdrop element="pcb_color"><bounds left="0" top="0" right="390" bottom="242"/></backdrop>
|
||||
<bezel element="text_md6802_cpu"><bounds x="25" y="22" width="8" height="75" /><orientation rotate="90" /></bezel>
|
||||
|
||||
<!-- screws -->
|
||||
<param name="x" value="15" />
|
||||
<param name="xi" value="1" />
|
||||
<param name="y" value="15" />
|
||||
<param name="yi" value="1" />
|
||||
<param name="c" value="60" />
|
||||
<group ref="screw"><bounds x="4" y="4" width="16" height="16" /></group>
|
||||
<param name="x" value="75" />
|
||||
<param name="xi" value="-1" />
|
||||
<group ref="screw"><bounds x="369" y="4" width="16" height="16" /></group>
|
||||
<param name="c" value="90" />
|
||||
<param name="y" value="2" />
|
||||
<param name="x" value="45" />
|
||||
<param name="xi" value="0" />
|
||||
<group ref="screw"><bounds x="369" y="222" width="16" height="16" /></group>
|
||||
<param name="y" value="45" />
|
||||
<param name="x" value="2" />
|
||||
<param name="xi" value="1" />
|
||||
<param name="yi" value="0" />
|
||||
<group ref="screw"><bounds x="4" y="222" width="16" height="16" /></group>
|
||||
<group ref="eurofem"><bounds x="267" y="12" height="228" width="24" /><orientation rotate="90" /></group>
|
||||
|
||||
<!-- scattered ICs -->
|
||||
<group ref="dip7"> <bounds x="37" y="193" width="44" height="20" /></group>
|
||||
<bezel element="text_132"> <bounds x="43" y="197" width="25" height="7" /></bezel>
|
||||
<!-- screws -->
|
||||
<param name="x" value="15" />
|
||||
<param name="xi" value="1" />
|
||||
<param name="y" value="15" />
|
||||
<param name="yi" value="1" />
|
||||
<param name="c" value="60" />
|
||||
<group ref="screw"><bounds x="4" y="4" width="16" height="16" /></group>
|
||||
<param name="x" value="75" />
|
||||
<param name="xi" value="-1" />
|
||||
<group ref="screw"><bounds x="369" y="4" width="16" height="16" /></group>
|
||||
<param name="c" value="90" />
|
||||
<param name="y" value="2" />
|
||||
<param name="x" value="45" />
|
||||
<param name="xi" value="0" />
|
||||
<group ref="screw"><bounds x="369" y="222" width="16" height="16" /></group>
|
||||
<param name="y" value="45" />
|
||||
<param name="x" value="2" />
|
||||
<param name="xi" value="1" />
|
||||
<param name="yi" value="0" />
|
||||
<group ref="screw"><bounds x="4" y="222" width="16" height="16" /></group>
|
||||
|
||||
<group ref="dip8"> <bounds x="167" y="20" width="50" height="20" /></group>
|
||||
<bezel element="text_138"> <bounds x="173" y="24" width="25" height="7" /></bezel>
|
||||
|
||||
<!-- CPU -->
|
||||
<group ref="dip20"> <bounds x="39" y="47" width="40" height="125" /><orientation rotate="90" /></group>
|
||||
<bezel element="text_6802"><bounds x="50" y="53" width="15" height="52" /><orientation rotate="90" /></bezel>
|
||||
<!-- PIAs -->
|
||||
<group ref="dip20"> <bounds x="218" y="84" width="40" height="125" /><orientation rotate="90" /></group>
|
||||
<bezel element="text_6821"><bounds x="229" y="90" width="15" height="48" /><orientation rotate="90" /></bezel>
|
||||
<group ref="dip20"> <bounds x="312" y="84" width="40" height="125" /><orientation rotate="90" /></group>
|
||||
<bezel element="text_6821"><bounds x="323" y="90" width="15" height="48" /><orientation rotate="90" /></bezel>
|
||||
<!-- ROM -->
|
||||
<group ref="dip12"><bounds x="104" y="69" width="40" height="77" /><orientation rotate="90" /></group>
|
||||
<bezel element="text_2716"><bounds x="115" y="75" width="17" height="35" /><orientation rotate="90" /></bezel>
|
||||
<!-- RAM -->
|
||||
<group ref="dip12"><bounds x="158" y="69" width="40" height="77" /><orientation rotate="90" /></group>
|
||||
<bezel element="text_6116"><bounds x="169" y="75" width="17" height="35" /><orientation rotate="90" /></bezel>
|
||||
<!-- scattered ICs -->
|
||||
<group ref="dip7"> <bounds x="37" y="193" width="44" height="20" /></group>
|
||||
<bezel element="text_132"> <bounds x="43" y="197" width="25" height="7" /></bezel>
|
||||
|
||||
<group ref="dip8"> <bounds x="167" y="20" width="50" height="20" /></group>
|
||||
<bezel element="text_138"> <bounds x="173" y="24" width="25" height="7" /></bezel>
|
||||
|
||||
<!-- CPU -->
|
||||
<group ref="dip20"> <bounds x="39" y="47" width="40" height="125" /><orientation rotate="90" /></group>
|
||||
<bezel element="text_6802"><bounds x="50" y="53" width="15" height="52" /><orientation rotate="90" /></bezel>
|
||||
<!-- PIAs -->
|
||||
<group ref="dip20"> <bounds x="218" y="84" width="40" height="125" /><orientation rotate="90" /></group>
|
||||
<bezel element="text_6821"><bounds x="229" y="90" width="15" height="48" /><orientation rotate="90" /></bezel>
|
||||
<group ref="dip20"> <bounds x="312" y="84" width="40" height="125" /><orientation rotate="90" /></group>
|
||||
<bezel element="text_6821"><bounds x="323" y="90" width="15" height="48" /><orientation rotate="90" /></bezel>
|
||||
<!-- ROM -->
|
||||
<group ref="dip12"><bounds x="104" y="69" width="40" height="77" /><orientation rotate="90" /></group>
|
||||
<bezel element="text_2716"><bounds x="115" y="75" width="17" height="35" /><orientation rotate="90" /></bezel>
|
||||
<!-- RAM -->
|
||||
<group ref="dip12"><bounds x="158" y="69" width="40" height="77" /><orientation rotate="90" /></group>
|
||||
<bezel element="text_6116"><bounds x="169" y="75" width="17" height="35" /><orientation rotate="90" /></bezel>
|
||||
</group>
|
||||
|
||||
<group name="breadboard">
|
||||
<backdrop element="bb_color"><bounds left="0" top="0" right="1300" bottom="3720"/></backdrop>
|
||||
<repeat count="47">
|
||||
<param name="y" start="400" increment="62" />
|
||||
<param name="yh" start="405" increment="62" />
|
||||
<repeat count="5">
|
||||
<param name="x" start="330" increment="62" />
|
||||
<param name="xh" start="335" increment="62" />
|
||||
<bezel element="gray"><bounds x="~x~" y="~y~" width="40" height="40" /></bezel>
|
||||
<bezel element="black"><bounds x="~xh~" y="~yh~" width="30" height="30" /></bezel>
|
||||
</repeat>
|
||||
<repeat count="5">
|
||||
<param name="x" start="740" increment="62" />
|
||||
<param name="xh" start="745" increment="62" />
|
||||
<bezel element="gray"><bounds x="~x~" y="~y~" width="40" height="40" /></bezel>
|
||||
<bezel element="black"><bounds x="~xh~" y="~yh~" width="30" height="30" /></bezel>
|
||||
</repeat>
|
||||
</repeat>
|
||||
<repeat count="8">
|
||||
<param name="y" start="400" increment="372" />
|
||||
<param name="yh" start="405" increment="372" />
|
||||
<repeat count="5">
|
||||
<param name="y" start="~y~" increment="62" />
|
||||
<param name="yh" start="~yh~" increment="62" />
|
||||
<bezel element="gray"><bounds x="180" y="~y~" width="40" height="40" /></bezel>
|
||||
<bezel element="black"><bounds x="185" y="~yh~" width="30" height="30" /></bezel>
|
||||
<bezel element="gray"><bounds x="1100" y="~y~" width="40" height="40" /></bezel>
|
||||
<bezel element="black"><bounds x="1105" y="~yh~" width="30" height="30" /></bezel>
|
||||
</repeat>
|
||||
</repeat>
|
||||
<!-- screws -->
|
||||
<param name="x" value="15" />
|
||||
<param name="xi" value="1" />
|
||||
<param name="y" value="15" />
|
||||
<param name="yi" value="1" />
|
||||
<param name="c" value="60" />
|
||||
<group ref="screw"><bounds x="180" y="130" width="160" height="160" /></group>
|
||||
<param name="x" value="75" />
|
||||
<param name="xi" value="-1" />
|
||||
<group ref="screw"><bounds x="990" y="130" width="160" height="160" /></group>
|
||||
<param name="c" value="90" />
|
||||
<param name="y" value="2" />
|
||||
<param name="x" value="45" />
|
||||
<param name="xi" value="0" />
|
||||
<group ref="screw"><bounds x="990" y="3420" width="160" height="160" /></group>
|
||||
<param name="y" value="45" />
|
||||
<param name="x" value="2" />
|
||||
<param name="xi" value="1" />
|
||||
<param name="yi" value="0" />
|
||||
<group ref="screw"><bounds x="180" y="3420" width="160" height="160" /></group>
|
||||
<backdrop element="bb_color"><bounds left="0" top="0" right="1300" bottom="3720"/></backdrop>
|
||||
<repeat count="47">
|
||||
<param name="y" start="400" increment="62" />
|
||||
<param name="yh" start="405" increment="62" />
|
||||
<repeat count="5">
|
||||
<param name="x" start="330" increment="62" />
|
||||
<param name="xh" start="335" increment="62" />
|
||||
<bezel element="gray"><bounds x="~x~" y="~y~" width="40" height="40" /></bezel>
|
||||
<bezel element="black"><bounds x="~xh~" y="~yh~" width="30" height="30" /></bezel>
|
||||
</repeat>
|
||||
<repeat count="5">
|
||||
<param name="x" start="740" increment="62" />
|
||||
<param name="xh" start="745" increment="62" />
|
||||
<bezel element="gray"><bounds x="~x~" y="~y~" width="40" height="40" /></bezel>
|
||||
<bezel element="black"><bounds x="~xh~" y="~yh~" width="30" height="30" /></bezel>
|
||||
</repeat>
|
||||
</repeat>
|
||||
<repeat count="8">
|
||||
<param name="y" start="400" increment="372" />
|
||||
<param name="yh" start="405" increment="372" />
|
||||
<repeat count="5">
|
||||
<param name="y" start="~y~" increment="62" />
|
||||
<param name="yh" start="~yh~" increment="62" />
|
||||
<bezel element="gray"><bounds x="180" y="~y~" width="40" height="40" /></bezel>
|
||||
<bezel element="black"><bounds x="185" y="~yh~" width="30" height="30" /></bezel>
|
||||
<bezel element="gray"><bounds x="1100" y="~y~" width="40" height="40" /></bezel>
|
||||
<bezel element="black"><bounds x="1105" y="~yh~" width="30" height="30" /></bezel>
|
||||
</repeat>
|
||||
</repeat>
|
||||
<!-- screws -->
|
||||
<param name="x" value="15" />
|
||||
<param name="xi" value="1" />
|
||||
<param name="y" value="15" />
|
||||
<param name="yi" value="1" />
|
||||
<param name="c" value="60" />
|
||||
<group ref="screw"><bounds x="180" y="130" width="160" height="160" /></group>
|
||||
<param name="x" value="75" />
|
||||
<param name="xi" value="-1" />
|
||||
<group ref="screw"><bounds x="990" y="130" width="160" height="160" /></group>
|
||||
<param name="c" value="90" />
|
||||
<param name="y" value="2" />
|
||||
<param name="x" value="45" />
|
||||
<param name="xi" value="0" />
|
||||
<group ref="screw"><bounds x="990" y="3420" width="160" height="160" /></group>
|
||||
<param name="y" value="45" />
|
||||
<param name="x" value="2" />
|
||||
<param name="xi" value="1" />
|
||||
<param name="yi" value="0" />
|
||||
<group ref="screw"><bounds x="180" y="3420" width="160" height="160" /></group>
|
||||
</group>
|
||||
|
||||
<view name="Base Artwork">
|
||||
<backdrop element="black"><bounds left="0" top="0" right="1211" bottom="551"/></backdrop>
|
||||
<group ref="keyboard"><bounds x="0" y="31" width="400" height="450" /></group>
|
||||
<group ref="cpuboard"><bounds x="405" y="92" width="540" height="338" /></group>
|
||||
<group ref="breadboard"><bounds x="951" y="0" width="191" height="551" /></group>
|
||||
</view>
|
||||
<view name="Base Artwork">
|
||||
<backdrop element="black"><bounds left="0" top="0" right="1211" bottom="551"/></backdrop>
|
||||
<group ref="keyboard"><bounds x="0" y="31" width="400" height="450" /></group>
|
||||
<group ref="cpuboard"><bounds x="405" y="92" width="540" height="338" /></group>
|
||||
<group ref="breadboard"><bounds x="951" y="0" width="191" height="551" /></group>
|
||||
</view>
|
||||
</mamelayout>
|
||||
|
@ -52,378 +52,378 @@ Esselte Studium Modulab layout
|
||||
<element name="text_vcc"><text string="VCC"><color red="0.6" green="0.6" blue="0.6" /></text></element>
|
||||
<element name="text_gnd"><text string="GND"><color red="0.6" green="0.6" blue="0.6" /></text></element>
|
||||
<element name="text_r"><text string="R"><color red="0.6" green="0.6" blue="0.6" /></text></element>
|
||||
|
||||
|
||||
<element name="brownkey">
|
||||
<rect><bounds x="0" y="0" width="10" height="10" /> <color red="0.43" green="0.33" blue="0.23" /></rect>
|
||||
<disk><bounds x="0.5" y="0.5" width="9" height="9" /><color red="0.23" green="0.13" blue="0.03" /></disk>
|
||||
<disk><bounds x="1" y="1" width="8" height="8" /> <color red="0.33" green="0.23" blue="0.13" /></disk>
|
||||
<rect><bounds x="2" y="0.5" width="6" height="1.5" /><color red="0.23" green="0.13" blue="0.03" /></rect>
|
||||
<rect><bounds x="1" y="0.5" width="8" height="1.0" /><color red="0.43" green="0.33" blue="0.23" /></rect>
|
||||
<!-- Rounded corners -->
|
||||
<rect><bounds x="0" y="0" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="0" y="0" width="2" height="2" /><color red="0.43" green="0.33" blue="0.23" /></disk>
|
||||
<rect><bounds x="9" y="0" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="8" y="0" width="2" height="2" /><color red="0.43" green="0.33" blue="0.23" /></disk>
|
||||
<rect><bounds x="9" y="9" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="8" y="8" width="2" height="2" /><color red="0.43" green="0.33" blue="0.23" /></disk>
|
||||
<rect><bounds x="0" y="9" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="0" y="8" width="2" height="2" /><color red="0.43" green="0.33" blue="0.23" /></disk>
|
||||
<rect><bounds x="0" y="0" width="10" height="10" /> <color red="0.43" green="0.33" blue="0.23" /></rect>
|
||||
<disk><bounds x="0.5" y="0.5" width="9" height="9" /><color red="0.23" green="0.13" blue="0.03" /></disk>
|
||||
<disk><bounds x="1" y="1" width="8" height="8" /> <color red="0.33" green="0.23" blue="0.13" /></disk>
|
||||
<rect><bounds x="2" y="0.5" width="6" height="1.5" /><color red="0.23" green="0.13" blue="0.03" /></rect>
|
||||
<rect><bounds x="1" y="0.5" width="8" height="1.0" /><color red="0.43" green="0.33" blue="0.23" /></rect>
|
||||
<!-- Rounded corners -->
|
||||
<rect><bounds x="0" y="0" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="0" y="0" width="2" height="2" /><color red="0.43" green="0.33" blue="0.23" /></disk>
|
||||
<rect><bounds x="9" y="0" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="8" y="0" width="2" height="2" /><color red="0.43" green="0.33" blue="0.23" /></disk>
|
||||
<rect><bounds x="9" y="9" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="8" y="8" width="2" height="2" /><color red="0.43" green="0.33" blue="0.23" /></disk>
|
||||
<rect><bounds x="0" y="9" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="0" y="8" width="2" height="2" /><color red="0.43" green="0.33" blue="0.23" /></disk>
|
||||
</element>
|
||||
|
||||
<element name="redkey">
|
||||
<rect><bounds x="0" y="0" width="10" height="10" /> <color red="0.85" green="0.18" blue="0.16" /></rect>
|
||||
<disk><bounds x="0.5" y="0.5" width="9" height="9" /><color red="0.65" green="0.00" blue="0.00" /></disk>
|
||||
<disk><bounds x="1" y="1" width="8" height="8" /> <color red="0.75" green="0.08" blue="0.06" /></disk>
|
||||
<rect><bounds x="2" y="0.5" width="6" height="1.5" /><color red="0.65" green="0.00" blue="0.00" /></rect>
|
||||
<rect><bounds x="1" y="0.5" width="8" height="1.0" /><color red="0.85" green="0.18" blue="0.16" /></rect>
|
||||
<!-- Rounded corners -->
|
||||
<rect><bounds x="0" y="0" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="0" y="0" width="2" height="2" /><color red="0.85" green="0.18" blue="0.16" /></disk>
|
||||
<rect><bounds x="9" y="0" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="8" y="0" width="2" height="2" /><color red="0.85" green="0.18" blue="0.16" /></disk>
|
||||
<rect><bounds x="9" y="9" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="8" y="8" width="2" height="2" /><color red="0.85" green="0.18" blue="0.16" /></disk>
|
||||
<rect><bounds x="0" y="9" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="0" y="8" width="2" height="2" /><color red="0.85" green="0.18" blue="0.16" /></disk>
|
||||
<rect><bounds x="0" y="0" width="10" height="10" /> <color red="0.85" green="0.18" blue="0.16" /></rect>
|
||||
<disk><bounds x="0.5" y="0.5" width="9" height="9" /><color red="0.65" green="0.00" blue="0.00" /></disk>
|
||||
<disk><bounds x="1" y="1" width="8" height="8" /> <color red="0.75" green="0.08" blue="0.06" /></disk>
|
||||
<rect><bounds x="2" y="0.5" width="6" height="1.5" /><color red="0.65" green="0.00" blue="0.00" /></rect>
|
||||
<rect><bounds x="1" y="0.5" width="8" height="1.0" /><color red="0.85" green="0.18" blue="0.16" /></rect>
|
||||
<!-- Rounded corners -->
|
||||
<rect><bounds x="0" y="0" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="0" y="0" width="2" height="2" /><color red="0.85" green="0.18" blue="0.16" /></disk>
|
||||
<rect><bounds x="9" y="0" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="8" y="0" width="2" height="2" /><color red="0.85" green="0.18" blue="0.16" /></disk>
|
||||
<rect><bounds x="9" y="9" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="8" y="8" width="2" height="2" /><color red="0.85" green="0.18" blue="0.16" /></disk>
|
||||
<rect><bounds x="0" y="9" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="0" y="8" width="2" height="2" /><color red="0.85" green="0.18" blue="0.16" /></disk>
|
||||
</element>
|
||||
|
||||
|
||||
<element name="greenkey">
|
||||
<rect><bounds x="0" y="0" width="10" height="10" /> <color red="0.24" green="0.64" blue="0.28" /></rect>
|
||||
<disk><bounds x="0.5" y="0.5" width="9" height="9" /><color red="0.04" green="0.44" blue="0.08" /></disk>
|
||||
<disk><bounds x="1" y="1" width="8" height="8" /> <color red="0.14" green="0.54" blue="0.18" /></disk>
|
||||
<rect><bounds x="2" y="0.5" width="6" height="1.5" /><color red="0.04" green="0.44" blue="0.08" /></rect>
|
||||
<rect><bounds x="1" y="0.5" width="8" height="1.0" /><color red="0.24" green="0.64" blue="0.28" /></rect>
|
||||
<!-- Rounded corners -->
|
||||
<rect><bounds x="0" y="0" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="0" y="0" width="2" height="2" /><color red="0.24" green="0.64" blue="0.28" /></disk>
|
||||
<rect><bounds x="9" y="0" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="8" y="0" width="2" height="2" /><color red="0.24" green="0.64" blue="0.28" /></disk>
|
||||
<rect><bounds x="9" y="9" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="8" y="8" width="2" height="2" /><color red="0.24" green="0.64" blue="0.28" /></disk>
|
||||
<rect><bounds x="0" y="9" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="0" y="8" width="2" height="2" /><color red="0.24" green="0.64" blue="0.28" /></disk>
|
||||
<rect><bounds x="0" y="0" width="10" height="10" /> <color red="0.24" green="0.64" blue="0.28" /></rect>
|
||||
<disk><bounds x="0.5" y="0.5" width="9" height="9" /><color red="0.04" green="0.44" blue="0.08" /></disk>
|
||||
<disk><bounds x="1" y="1" width="8" height="8" /> <color red="0.14" green="0.54" blue="0.18" /></disk>
|
||||
<rect><bounds x="2" y="0.5" width="6" height="1.5" /><color red="0.04" green="0.44" blue="0.08" /></rect>
|
||||
<rect><bounds x="1" y="0.5" width="8" height="1.0" /><color red="0.24" green="0.64" blue="0.28" /></rect>
|
||||
<!-- Rounded corners -->
|
||||
<rect><bounds x="0" y="0" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="0" y="0" width="2" height="2" /><color red="0.24" green="0.64" blue="0.28" /></disk>
|
||||
<rect><bounds x="9" y="0" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="8" y="0" width="2" height="2" /><color red="0.24" green="0.64" blue="0.28" /></disk>
|
||||
<rect><bounds x="9" y="9" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="8" y="8" width="2" height="2" /><color red="0.24" green="0.64" blue="0.28" /></disk>
|
||||
<rect><bounds x="0" y="9" width="1" height="1" /><color red="0" green="0" blue="0" /></rect>
|
||||
<disk><bounds x="0" y="8" width="2" height="2" /><color red="0.24" green="0.64" blue="0.28" /></disk>
|
||||
</element>
|
||||
|
||||
<element name="mount">
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="0.64" green="0.64" blue="0.64" /></disk>
|
||||
<disk><bounds x="22" y="22" width="56" height="56" /><color red="0.54" green="0.54" blue="0.54" /></disk>
|
||||
<disk><bounds x="30" y="30" width="40" height="40" /><color red="0.0" green="0.0" blue="0.0" /></disk>
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="0.64" green="0.64" blue="0.64" /></disk>
|
||||
<disk><bounds x="22" y="22" width="56" height="56" /><color red="0.54" green="0.54" blue="0.54" /></disk>
|
||||
<disk><bounds x="30" y="30" width="40" height="40" /><color red="0.0" green="0.0" blue="0.0" /></disk>
|
||||
</element>
|
||||
|
||||
<element name="screwhead">
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="1" green="1" blue="1" /></disk>
|
||||
<disk><bounds x="2" y="2" width="96" height="96" /> <color red="0" green="0" blue="0" /></disk>
|
||||
<disk><bounds x="5" y="5" width="90" height="90" /> <color red="0.8" green="0.8" blue="0.8" /></disk>
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="1" green="1" blue="1" /></disk>
|
||||
<disk><bounds x="2" y="2" width="96" height="96" /> <color red="0" green="0" blue="0" /></disk>
|
||||
<disk><bounds x="5" y="5" width="90" height="90" /> <color red="0.8" green="0.8" blue="0.8" /></disk>
|
||||
</element>
|
||||
|
||||
<element name="hole">
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="0" green="0" blue="0" /></disk>
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="0" green="0" blue="0" /></disk>
|
||||
</element>
|
||||
|
||||
<group name="screw">
|
||||
<bezel element="screwhead"><bounds x="0" y="0" width="100" height="100" /></bezel>
|
||||
<repeat count="50">
|
||||
<param name="x1" start="25" increment="1" />
|
||||
<param name="x2" start="75" increment="-1" />
|
||||
<param name="y" start="25" increment="1" />
|
||||
<bezel element="hole"><bounds x="~x1~" y="~y~" width="8" height="8" /></bezel>
|
||||
<bezel element="hole"><bounds x="~x2~" y="~y~" width="8" height="8" /></bezel>
|
||||
</repeat>
|
||||
<bezel element="screwhead"><bounds x="0" y="0" width="100" height="100" /></bezel>
|
||||
<repeat count="50">
|
||||
<param name="x1" start="25" increment="1" />
|
||||
<param name="x2" start="75" increment="-1" />
|
||||
<param name="y" start="25" increment="1" />
|
||||
<bezel element="hole"><bounds x="~x1~" y="~y~" width="8" height="8" /></bezel>
|
||||
<bezel element="hole"><bounds x="~x2~" y="~y~" width="8" height="8" /></bezel>
|
||||
</repeat>
|
||||
</group>
|
||||
|
||||
<element name="pin">
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="0.64" green="0.64" blue="0.64" /></disk>
|
||||
<disk><bounds x="23" y="23" width="54" height="54" /><color red="0.0" green="0.0" blue="0.0" /></disk>
|
||||
<disk><bounds x="30" y="30" width="38" height="38" /><color red="0.84" green="0.84" blue="0.84" /></disk>
|
||||
<disk><bounds x="0" y="0" width="100" height="100" /><color red="0.64" green="0.64" blue="0.64" /></disk>
|
||||
<disk><bounds x="23" y="23" width="54" height="54" /><color red="0.0" green="0.0" blue="0.0" /></disk>
|
||||
<disk><bounds x="30" y="30" width="38" height="38" /><color red="0.84" green="0.84" blue="0.84" /></disk>
|
||||
</element>
|
||||
|
||||
<element name="trim">
|
||||
<rect><bounds x="0" y="0" width="100" height="100" /><color red="0.0" green="0.0" blue="0.0" /></rect>
|
||||
<disk><bounds x="30" y="30" width="40" height="40" /><color red="0.9" green="0.9" blue="0.9" /></disk>
|
||||
<rect><bounds x="47" y="0" width="6" height="100" /><color red="0.0" green="0.0" blue="0.0" /></rect>
|
||||
<rect><bounds x="0" y="0" width="100" height="100" /><color red="0.0" green="0.0" blue="0.0" /></rect>
|
||||
<disk><bounds x="30" y="30" width="40" height="40" /><color red="0.9" green="0.9" blue="0.9" /></disk>
|
||||
<rect><bounds x="47" y="0" width="6" height="100" /><color red="0.0" green="0.0" blue="0.0" /></rect>
|
||||
</element>
|
||||
|
||||
<element name="amp">
|
||||
<rect><bounds x="115" y="0" width="175" height="905" /><color red="0.1" green="0.1" blue="0.1" /></rect> <!-- body -->
|
||||
|
||||
<rect><bounds x="0" y="0" width="125" height="50" /><color red="0.1" green="0.1" blue="0.1" /></rect> <!-- upper jaw -->
|
||||
|
||||
<rect><bounds x="90" y="0" width="25" height="155" /><color red="0.1" green="0.1" blue="0.1" /></rect> <!-- upper parts -->
|
||||
<rect><bounds x="90" y="200" width="25" height="230" /><color red="0.1" green="0.1" blue="0.1" /></rect>
|
||||
|
||||
<rect><bounds x="115" y="430" width="100" height="55" /><color red="0.3" green="0.3" blue="0.3" /></rect><!-- mid gap -->
|
||||
<rect><bounds x="100" y="453" width="115" height="7" /><color red="0.9" green="0.9" blue="0.9" /></rect> <!-- pin -->
|
||||
<rect><bounds x="115" y="0" width="175" height="905" /><color red="0.1" green="0.1" blue="0.1" /></rect> <!-- body -->
|
||||
|
||||
<rect><bounds x="90" y="485" width="25" height="230" /><color red="0.1" green="0.1" blue="0.1" /></rect> <!-- lower parts -->
|
||||
<rect><bounds x="90" y="750" width="25" height="155" /><color red="0.1" green="0.1" blue="0.1" /></rect>
|
||||
|
||||
<rect><bounds x="0" y="855" width="125" height="50" /><color red="0.1" green="0.1" blue="0.1" /></rect> <!-- lower jaw -->
|
||||
<rect><bounds x="0" y="0" width="125" height="50" /><color red="0.1" green="0.1" blue="0.1" /></rect> <!-- upper jaw -->
|
||||
|
||||
<rect><bounds x="90" y="0" width="25" height="155" /><color red="0.1" green="0.1" blue="0.1" /></rect> <!-- upper parts -->
|
||||
<rect><bounds x="90" y="200" width="25" height="230" /><color red="0.1" green="0.1" blue="0.1" /></rect>
|
||||
|
||||
<rect><bounds x="115" y="430" width="100" height="55" /><color red="0.3" green="0.3" blue="0.3" /></rect><!-- mid gap -->
|
||||
<rect><bounds x="100" y="453" width="115" height="7" /><color red="0.9" green="0.9" blue="0.9" /></rect> <!-- pin -->
|
||||
|
||||
<rect><bounds x="90" y="485" width="25" height="230" /><color red="0.1" green="0.1" blue="0.1" /></rect> <!-- lower parts -->
|
||||
<rect><bounds x="90" y="750" width="25" height="155" /><color red="0.1" green="0.1" blue="0.1" /></rect>
|
||||
|
||||
<rect><bounds x="0" y="855" width="125" height="50" /><color red="0.1" green="0.1" blue="0.1" /></rect> <!-- lower jaw -->
|
||||
</element>
|
||||
|
||||
<element name="xtal">
|
||||
<rect><bounds x="4" y="0" width="143" height="185" /><color red="0.8" green="0.78" blue="0.63" /></rect>
|
||||
<rect><bounds x="0" y="185" width="151" height="4" /><color red="0.6" green="0.58" blue="0.43" /></rect>
|
||||
<rect><bounds x="45" y="189" width="3" height="45" /><color red="0.6" green="0.58" blue="0.43" /></rect>
|
||||
<rect><bounds x="106" y="189" width="3" height="45" /><color red="0.6" green="0.58" blue="0.43" /></rect>
|
||||
<rect><bounds x="4" y="0" width="143" height="185" /><color red="0.8" green="0.78" blue="0.63" /></rect>
|
||||
<rect><bounds x="0" y="185" width="151" height="4" /><color red="0.6" green="0.58" blue="0.43" /></rect>
|
||||
<rect><bounds x="45" y="189" width="3" height="45" /><color red="0.6" green="0.58" blue="0.43" /></rect>
|
||||
<rect><bounds x="106" y="189" width="3" height="45" /><color red="0.6" green="0.58" blue="0.43" /></rect>
|
||||
</element>
|
||||
|
||||
<group name="hdip">
|
||||
<bezel element="~col~"><bounds x="10" y="20" width="~w~" height="~h~" /></bezel>
|
||||
<bezel element="~t~"><bounds x="30" y="30" width="~tw~" height="~th~" /></bezel>
|
||||
<repeat count="~c~">
|
||||
<param name="x" start="15" increment="35" />
|
||||
<bezel element="silver"><bounds y="10" x="~x~" width="25" height="10" /></bezel>
|
||||
<bezel element="silver"><bounds y="~b~" x="~x~" width="25" height="10" /></bezel>
|
||||
</repeat>
|
||||
<bezel element="~col~"><bounds x="10" y="20" width="~w~" height="~h~" /></bezel>
|
||||
<bezel element="~t~"><bounds x="30" y="30" width="~tw~" height="~th~" /></bezel>
|
||||
<repeat count="~c~">
|
||||
<param name="x" start="15" increment="35" />
|
||||
<bezel element="silver"><bounds y="10" x="~x~" width="25" height="10" /></bezel>
|
||||
<bezel element="silver"><bounds y="~b~" x="~x~" width="25" height="10" /></bezel>
|
||||
</repeat>
|
||||
</group>
|
||||
|
||||
|
||||
<group name="vdip">
|
||||
<bezel element="~col~"><bounds x="20" y="10" width="80" height="~h~" /></bezel>
|
||||
<bezel element="~t~"><bounds x="30" y="30" width="60" height="30" /></bezel>
|
||||
<repeat count="~c~">
|
||||
<param name="y" start="15" increment="35" />
|
||||
<bezel element="silver"><bounds x="10" y="~y~" width="10" height="25" /></bezel>
|
||||
<bezel element="silver"><bounds x="100" y="~y~" width="10" height="25" /></bezel>
|
||||
</repeat>
|
||||
<bezel element="~col~"><bounds x="20" y="10" width="80" height="~h~" /></bezel>
|
||||
<bezel element="~t~"><bounds x="30" y="30" width="60" height="30" /></bezel>
|
||||
<repeat count="~c~">
|
||||
<param name="y" start="15" increment="35" />
|
||||
<bezel element="silver"><bounds x="10" y="~y~" width="10" height="25" /></bezel>
|
||||
<bezel element="silver"><bounds x="100" y="~y~" width="10" height="25" /></bezel>
|
||||
</repeat>
|
||||
</group>
|
||||
|
||||
|
||||
<group name="key">
|
||||
<bezel element="~keycol~" inputtag="LINE~line~" inputmask="~mask~">
|
||||
<bounds x="~x~" y="~y~" width="262" height="262" />
|
||||
</bezel>
|
||||
<bezel element="text_~bname~">
|
||||
<bounds x="~xt~" y="~yt~" width="150" height="150" />
|
||||
</bezel>
|
||||
<bezel element="~keycol~" inputtag="LINE~line~" inputmask="~mask~">
|
||||
<bounds x="~x~" y="~y~" width="262" height="262" />
|
||||
</bezel>
|
||||
<bezel element="text_~bname~">
|
||||
<bounds x="~xt~" y="~yt~" width="150" height="150" />
|
||||
</bezel>
|
||||
</group>
|
||||
|
||||
<element name="digit" defstate="1">
|
||||
<led7seg>
|
||||
<color red="0.75" green="0.0" blue="0.0" />
|
||||
</led7seg>
|
||||
<led7seg>
|
||||
<color red="0.75" green="0.0" blue="0.0" />
|
||||
</led7seg>
|
||||
</element>
|
||||
|
||||
<group name="digit">
|
||||
<bezel name="digit~dno~" element="digit">
|
||||
<bounds x="~x~" y="~y~" width="188" height="276" />
|
||||
</bezel>
|
||||
<bezel name="digit~dno~" element="digit">
|
||||
<bounds x="~x~" y="~y~" width="188" height="276" />
|
||||
</bezel>
|
||||
</group>
|
||||
|
||||
<element name="plexi">
|
||||
<rect><bounds x="0" y="1784" width="300" height="596" /></rect> <!-- below side connector -->
|
||||
<rect><bounds x="300" y="500" width="1040" height="1880" /></rect> <!-- below port pins -->
|
||||
<rect><bounds x="1340" y="0" width="388" height="2380" /></rect> <!-- between CPU and keyboard -->
|
||||
<rect><bounds x="1728" y="0" width="1402" height="810" /></rect> <!-- Above keyboard -->
|
||||
<rect><bounds x="1728" y="2200" width="1402" height="180" /></rect> <!-- Below keyboard -->
|
||||
<rect><bounds x="2830" y="1096" width="300" height="1280" /></rect> <!-- Right of keyboard -->
|
||||
<rect><bounds x="3100" y="810" width="30" height="286" /></rect> <!-- Right of RST key -->
|
||||
<rect><bounds x="0" y="1784" width="300" height="596" /></rect> <!-- below side connector -->
|
||||
<rect><bounds x="300" y="500" width="1040" height="1880" /></rect> <!-- below port pins -->
|
||||
<rect><bounds x="1340" y="0" width="388" height="2380" /></rect> <!-- between CPU and keyboard -->
|
||||
<rect><bounds x="1728" y="0" width="1402" height="810" /></rect> <!-- Above keyboard -->
|
||||
<rect><bounds x="1728" y="2200" width="1402" height="180" /></rect> <!-- Below keyboard -->
|
||||
<rect><bounds x="2830" y="1096" width="300" height="1280" /></rect> <!-- Right of keyboard -->
|
||||
<rect><bounds x="3100" y="810" width="30" height="286" /></rect> <!-- Right of RST key -->
|
||||
</element>
|
||||
|
||||
|
||||
<group name="hood">
|
||||
<bezel element="plexi" />
|
||||
<bezel element="plexi" />
|
||||
</group>
|
||||
|
||||
<group name="pcb">
|
||||
<backdrop element="pcb_blue"><bounds left="0" top="0" right="3200" bottom="2400"/></backdrop>
|
||||
<bezel element="text_esselte"><bounds x="164" y="2044" width="264" height="52" /></bezel>
|
||||
<bezel element="text_studium"><bounds x="164" y="2110" width="264" height="52" /></bezel>
|
||||
|
||||
<!-- Key pad -->
|
||||
<bezel element="black"><bounds x="1780" y="818" width="1110" height="1395" /></bezel>
|
||||
<bezel element="black"><bounds x="1780" y="818" width="1390" height="280" /></bezel>
|
||||
<param name="keycol" value="brownkey" />
|
||||
<repeat count="4">
|
||||
<param name="bname" start="0" increment="1" />
|
||||
<param name="line" start="0" increment="1" />
|
||||
<param name="x" start="1780" increment="280" />
|
||||
<param name="xt" start="1835" increment="280" />
|
||||
<repeat count="4">
|
||||
<param name="bname" start="~bname~" increment="4" />
|
||||
<param name="mask" start="1" lshift="1" />
|
||||
<param name="y" start="1950" increment="-280" />
|
||||
<param name="yt" start="2020" increment="-280" />
|
||||
<group ref="key"/>
|
||||
</repeat>
|
||||
</repeat>
|
||||
<!-- Special Keys -->
|
||||
<!-- RUN key -->
|
||||
<param name="keycol" value="greenkey" />
|
||||
<param name="bname" value="run" />
|
||||
<param name="line" value="0" />
|
||||
<param name="x" value="1780" />
|
||||
<param name="xt" value="1835" />
|
||||
<param name="mask" value="0x10" />
|
||||
<param name="y" value="824" />
|
||||
<param name="yt" value="888" />
|
||||
<group ref="key"/>
|
||||
<!-- ADS key -->
|
||||
<param name="keycol" value="brownkey" />
|
||||
<param name="bname" value="ads" />
|
||||
<param name="line" value="1" />
|
||||
<param name="x" value="2060" />
|
||||
<param name="xt" value="2115" />
|
||||
<group ref="key"/>
|
||||
<!-- FWD key -->
|
||||
<param name="bname" value="fwd" />
|
||||
<param name="line" value="2" />
|
||||
<param name="x" value="2340" />
|
||||
<param name="xt" value="2395" />
|
||||
<group ref="key"/>
|
||||
<!-- C/B key -->
|
||||
<param name="bname" value="cb" />
|
||||
<param name="line" value="3" />
|
||||
<param name="x" value="2620" />
|
||||
<param name="xt" value="2675" />
|
||||
<group ref="key"/>
|
||||
<!-- RESET key -->
|
||||
<param name="keycol" value="redkey" />
|
||||
<param name="bname" value="rst" />
|
||||
<param name="line" value="4" />
|
||||
<param name="x" value="2900" />
|
||||
<param name="xt" value="2955" />
|
||||
<param name="mask" value="0x04" />
|
||||
<group ref="key"/>
|
||||
<backdrop element="pcb_blue"><bounds left="0" top="0" right="3200" bottom="2400"/></backdrop>
|
||||
<bezel element="text_esselte"><bounds x="164" y="2044" width="264" height="52" /></bezel>
|
||||
<bezel element="text_studium"><bounds x="164" y="2110" width="264" height="52" /></bezel>
|
||||
|
||||
<!-- BCD 7seg display -->
|
||||
<!--Adress-->
|
||||
<bezel element="text_adress"><bounds x="1820" y="44" width="228" height="52" /></bezel>
|
||||
<param name="y" value="222" />
|
||||
<param name="h" value="240" />
|
||||
<param name="c" value="7" />
|
||||
<param name="col" value="brown"/>
|
||||
<param name="t" value="text_164"/>
|
||||
<repeat count="4">
|
||||
<param name="dno" start="5" increment="-1" />
|
||||
<param name="x" start="1472" increment="224" />
|
||||
<group ref="digit" />
|
||||
<param name="xdip" start="1512" increment="224" />
|
||||
<group ref="vdip"><bounds x="~xdip~" y="528" width="100" height="270" /></group>
|
||||
</repeat>
|
||||
<!--Data-->
|
||||
<bezel element="text_data"><bounds x="2532" y="44" width="156" height="52" /></bezel>
|
||||
<repeat count="2">
|
||||
<param name="dno" start="1" increment="-1" />
|
||||
<param name="x" start="2428" increment="224" />
|
||||
<param name="xdip" start="2468" increment="224" />
|
||||
<param name="xdipt" start="2489" increment="224" />
|
||||
<group ref="digit" />
|
||||
<group ref="vdip"><bounds x="~xdip~" y="528" width="100" height="270" /></group>
|
||||
</repeat>
|
||||
<!-- Key pad -->
|
||||
<bezel element="black"><bounds x="1780" y="818" width="1110" height="1395" /></bezel>
|
||||
<bezel element="black"><bounds x="1780" y="818" width="1390" height="280" /></bezel>
|
||||
<param name="keycol" value="brownkey" />
|
||||
<repeat count="4">
|
||||
<param name="bname" start="0" increment="1" />
|
||||
<param name="line" start="0" increment="1" />
|
||||
<param name="x" start="1780" increment="280" />
|
||||
<param name="xt" start="1835" increment="280" />
|
||||
<repeat count="4">
|
||||
<param name="bname" start="~bname~" increment="4" />
|
||||
<param name="mask" start="1" lshift="1" />
|
||||
<param name="y" start="1950" increment="-280" />
|
||||
<param name="yt" start="2020" increment="-280" />
|
||||
<group ref="key"/>
|
||||
</repeat>
|
||||
</repeat>
|
||||
<!-- Special Keys -->
|
||||
<!-- RUN key -->
|
||||
<param name="keycol" value="greenkey" />
|
||||
<param name="bname" value="run" />
|
||||
<param name="line" value="0" />
|
||||
<param name="x" value="1780" />
|
||||
<param name="xt" value="1835" />
|
||||
<param name="mask" value="0x10" />
|
||||
<param name="y" value="824" />
|
||||
<param name="yt" value="888" />
|
||||
<group ref="key"/>
|
||||
<!-- ADS key -->
|
||||
<param name="keycol" value="brownkey" />
|
||||
<param name="bname" value="ads" />
|
||||
<param name="line" value="1" />
|
||||
<param name="x" value="2060" />
|
||||
<param name="xt" value="2115" />
|
||||
<group ref="key"/>
|
||||
<!-- FWD key -->
|
||||
<param name="bname" value="fwd" />
|
||||
<param name="line" value="2" />
|
||||
<param name="x" value="2340" />
|
||||
<param name="xt" value="2395" />
|
||||
<group ref="key"/>
|
||||
<!-- C/B key -->
|
||||
<param name="bname" value="cb" />
|
||||
<param name="line" value="3" />
|
||||
<param name="x" value="2620" />
|
||||
<param name="xt" value="2675" />
|
||||
<group ref="key"/>
|
||||
<!-- RESET key -->
|
||||
<param name="keycol" value="redkey" />
|
||||
<param name="bname" value="rst" />
|
||||
<param name="line" value="4" />
|
||||
<param name="x" value="2900" />
|
||||
<param name="xt" value="2955" />
|
||||
<param name="mask" value="0x04" />
|
||||
<group ref="key"/>
|
||||
|
||||
<!--scattered IC:s -->
|
||||
<param name="t" value="text_ls14"/>
|
||||
<group ref="vdip"><bounds x="1512" y="890" width="100" height="270" /></group>
|
||||
<param name="c" value="8"/>
|
||||
<param name="h" value="280"/>
|
||||
<param name="t" value="text_138"/>
|
||||
<group ref="vdip"><bounds x="1512" y="1236" width="100" height="320" /></group>
|
||||
<group ref="vdip"><bounds x="1512" y="2040" width="100" height="320" /></group>
|
||||
<param name="w" value="280"/>
|
||||
<param name="h" value="80"/>
|
||||
<param name="b" value="100"/>
|
||||
<param name="t" value="text_367"/>
|
||||
<param name="th" value="30"/>
|
||||
<param name="tw" value="60"/>
|
||||
<group ref="hdip"><bounds x="1110" y="2160" width="320" height="100" /></group>
|
||||
<param name="t" value="text_123"/>
|
||||
<group ref="hdip"><bounds x="600" y="2160" width="320" height="100" /></group>
|
||||
<param name="c" value="10" />
|
||||
<param name="h" value="350" />
|
||||
<param name="t" value="text_923"/>
|
||||
<group ref="vdip"><bounds x="1512" y="1590" width="100" height="400" /></group>
|
||||
<!-- BCD 7seg display -->
|
||||
<!--Adress-->
|
||||
<bezel element="text_adress"><bounds x="1820" y="44" width="228" height="52" /></bezel>
|
||||
<param name="y" value="222" />
|
||||
<param name="h" value="240" />
|
||||
<param name="c" value="7" />
|
||||
<param name="col" value="brown"/>
|
||||
<param name="t" value="text_164"/>
|
||||
<repeat count="4">
|
||||
<param name="dno" start="5" increment="-1" />
|
||||
<param name="x" start="1472" increment="224" />
|
||||
<group ref="digit" />
|
||||
<param name="xdip" start="1512" increment="224" />
|
||||
<group ref="vdip"><bounds x="~xdip~" y="528" width="100" height="270" /></group>
|
||||
</repeat>
|
||||
<!--Data-->
|
||||
<bezel element="text_data"><bounds x="2532" y="44" width="156" height="52" /></bezel>
|
||||
<repeat count="2">
|
||||
<param name="dno" start="1" increment="-1" />
|
||||
<param name="x" start="2428" increment="224" />
|
||||
<param name="xdip" start="2468" increment="224" />
|
||||
<param name="xdipt" start="2489" increment="224" />
|
||||
<group ref="digit" />
|
||||
<group ref="vdip"><bounds x="~xdip~" y="528" width="100" height="270" /></group>
|
||||
</repeat>
|
||||
|
||||
<!-- larger IC:s -->
|
||||
<param name="h" value="260"/>
|
||||
<param name="b" value="280"/>
|
||||
<param name="col" value="black"/>
|
||||
<param name="c" value="12"/>
|
||||
<param name="w" value="420"/>
|
||||
<param name="t" value="text_6116"/>
|
||||
<param name="th" value="40"/>
|
||||
<param name="tw" value="240"/>
|
||||
<group ref="hdip"><bounds x="725" y="1875" width="~w~" height="~h~" /></group> <!-- RAM -->
|
||||
<param name="col" value="brown"/>
|
||||
<param name="c" value="14"/>
|
||||
<param name="w" value="490"/>
|
||||
<param name="t" value="text_2764"/>
|
||||
<group ref="hdip"><bounds x="655" y="1600" width="~w~" height="~h~" /></group> <!-- ROM -->
|
||||
<param name="c" value="20"/>
|
||||
<param name="w" value="700"/>
|
||||
<param name="t" value="text_6802"/>
|
||||
<group ref="hdip"><bounds x="655" y="1240" width="~w~" height="~h~" /></group> <!-- CPU -->
|
||||
<param name="t" value="text_8154"/>
|
||||
<group ref="hdip"><bounds x="655" y="900" width="~w~" height="~h~" /></group> <!-- INS8154 -->
|
||||
<!--scattered IC:s -->
|
||||
<param name="t" value="text_ls14"/>
|
||||
<group ref="vdip"><bounds x="1512" y="890" width="100" height="270" /></group>
|
||||
<param name="c" value="8"/>
|
||||
<param name="h" value="280"/>
|
||||
<param name="t" value="text_138"/>
|
||||
<group ref="vdip"><bounds x="1512" y="1236" width="100" height="320" /></group>
|
||||
<group ref="vdip"><bounds x="1512" y="2040" width="100" height="320" /></group>
|
||||
<param name="w" value="280"/>
|
||||
<param name="h" value="80"/>
|
||||
<param name="b" value="100"/>
|
||||
<param name="t" value="text_367"/>
|
||||
<param name="th" value="30"/>
|
||||
<param name="tw" value="60"/>
|
||||
<group ref="hdip"><bounds x="1110" y="2160" width="320" height="100" /></group>
|
||||
<param name="t" value="text_123"/>
|
||||
<group ref="hdip"><bounds x="600" y="2160" width="320" height="100" /></group>
|
||||
<param name="c" value="10" />
|
||||
<param name="h" value="350" />
|
||||
<param name="t" value="text_923"/>
|
||||
<group ref="vdip"><bounds x="1512" y="1590" width="100" height="400" /></group>
|
||||
|
||||
<!-- larger IC:s -->
|
||||
<param name="h" value="260"/>
|
||||
<param name="b" value="280"/>
|
||||
<param name="col" value="black"/>
|
||||
<param name="c" value="12"/>
|
||||
<param name="w" value="420"/>
|
||||
<param name="t" value="text_6116"/>
|
||||
<param name="th" value="40"/>
|
||||
<param name="tw" value="240"/>
|
||||
<group ref="hdip"><bounds x="725" y="1875" width="~w~" height="~h~" /></group> <!-- RAM -->
|
||||
<param name="col" value="brown"/>
|
||||
<param name="c" value="14"/>
|
||||
<param name="w" value="490"/>
|
||||
<param name="t" value="text_2764"/>
|
||||
<group ref="hdip"><bounds x="655" y="1600" width="~w~" height="~h~" /></group> <!-- ROM -->
|
||||
<param name="c" value="20"/>
|
||||
<param name="w" value="700"/>
|
||||
<param name="t" value="text_6802"/>
|
||||
<group ref="hdip"><bounds x="655" y="1240" width="~w~" height="~h~" /></group> <!-- CPU -->
|
||||
<param name="t" value="text_8154"/>
|
||||
<group ref="hdip"><bounds x="655" y="900" width="~w~" height="~h~" /></group> <!-- INS8154 -->
|
||||
|
||||
|
||||
<!-- descrete components -->
|
||||
<bezel element="xtal"><bounds x="410" y="995" width="160" height="240" /></bezel>
|
||||
<bezel element="text_4mhz"><bounds x="420" y="1025" width="140" height="40" /></bezel>
|
||||
<bezel element="text_sunny"><bounds x="420" y="1075" width="140" height="40" /></bezel>
|
||||
<!-- descrete components -->
|
||||
<bezel element="xtal"><bounds x="410" y="995" width="160" height="240" /></bezel>
|
||||
<bezel element="text_4mhz"><bounds x="420" y="1025" width="140" height="40" /></bezel>
|
||||
<bezel element="text_sunny"><bounds x="420" y="1075" width="140" height="40" /></bezel>
|
||||
|
||||
<!-- mount holes -->
|
||||
<bezel element="mount"><bounds x="250" y="2300" width="75" height="75" /></bezel>
|
||||
<bezel element="mount"><bounds x="1700" y="2300" width="75" height="75" /></bezel>
|
||||
<bezel element="mount"><bounds x="2860" y="2300" width="75" height="75" /></bezel>
|
||||
<bezel element="mount"><bounds x="250" y="30" width="75" height="75" /></bezel>
|
||||
<bezel element="mount"><bounds x="1700" y="30" width="75" height="75" /></bezel>
|
||||
<bezel element="mount"><bounds x="2860" y="30" width="75" height="75" /></bezel>
|
||||
<bezel element="mount"><bounds x="1170" y="630" width="75" height="75" /></bezel>
|
||||
<!-- mount holes -->
|
||||
<bezel element="mount"><bounds x="250" y="2300" width="75" height="75" /></bezel>
|
||||
<bezel element="mount"><bounds x="1700" y="2300" width="75" height="75" /></bezel>
|
||||
<bezel element="mount"><bounds x="2860" y="2300" width="75" height="75" /></bezel>
|
||||
<bezel element="mount"><bounds x="250" y="30" width="75" height="75" /></bezel>
|
||||
<bezel element="mount"><bounds x="1700" y="30" width="75" height="75" /></bezel>
|
||||
<bezel element="mount"><bounds x="2860" y="30" width="75" height="75" /></bezel>
|
||||
<bezel element="mount"><bounds x="1170" y="630" width="75" height="75" /></bezel>
|
||||
|
||||
<!-- pins -->
|
||||
<!-- IRQ -->
|
||||
<bezel element="pin"><bounds x="440" y="1450" width="30" height="30" /></bezel>
|
||||
<bezel element="text_irq"><bounds x="400" y="1395" width="120" height="50" /></bezel>
|
||||
<!-- Ports -->
|
||||
<repeat count="8">
|
||||
<param name="tid" start="7" increment="-1" />
|
||||
<param name="xp" start="180" increment="150" />
|
||||
<param name="txp" start="100" increment="150" />
|
||||
<repeat count="2">
|
||||
<param name="yp" start="280" increment="140" />
|
||||
<param name="typ" start="275" increment="140" />
|
||||
<bezel element="pin"><bounds x="~xp~" y="~yp~" width="30" height="30" /></bezel>
|
||||
<bezel element="text_~tid~"><bounds x="~txp~" y="~typ~" width="120" height="50" /></bezel>
|
||||
</repeat>
|
||||
</repeat>
|
||||
<bezel element="text_porta"><bounds x="350" y="200" width="500" height="75" /></bezel>
|
||||
<bezel element="text_portb"><bounds x="350" y="340" width="500" height="75" /></bezel>
|
||||
<!-- power feed -->
|
||||
<bezel element="pin"><bounds x="150" y="575" width="30" height="30" /></bezel>
|
||||
<bezel element="text_vcc"><bounds x="150" y="615" width="100" height="50" /></bezel>
|
||||
<bezel element="pin"><bounds x="150" y="710" width="30" height="30" /></bezel>
|
||||
<bezel element="text_gnd"><bounds x="150" y="660" width="100" height="50" /></bezel>
|
||||
<!-- R pins -->
|
||||
<bezel element="pin"><bounds x="3050" y="1740" width="30" height="30" /></bezel>
|
||||
<bezel element="text_r"><bounds x="2950" y="1735" width="100" height="50" /></bezel>
|
||||
<bezel element="pin"><bounds x="3050" y="1890" width="30" height="30" /></bezel>
|
||||
<bezel element="text_r"><bounds x="2950" y="1885" width="100" height="50" /></bezel>
|
||||
<!-- trim pot -->
|
||||
<bezel element="trim"><bounds x="950" y="2160" width="120" height="120" /></bezel>
|
||||
<!-- side connector -->
|
||||
<bezel element="amp"><bounds x="0" y="850" width="250" height="925" /></bezel>
|
||||
</group>
|
||||
|
||||
<group name="screws">
|
||||
<!-- max size -->
|
||||
<bezel element="pcb_blue"><bounds x="0" y="0" width="1" height="1" /></bezel>
|
||||
<bezel element="pcb_blue"><bounds x="3200" y="2400" width="1" height="1" /></bezel>
|
||||
<!-- screws -->
|
||||
<group ref="screw"><bounds x="250" y="2300" width="75" height="75" /></group>
|
||||
<group ref="screw"><bounds x="1700" y="2300" width="75" height="75" /></group>
|
||||
<group ref="screw"><bounds x="2860" y="2300" width="75" height="75" /></group>
|
||||
<group ref="screw"><bounds x="1700" y="30" width="75" height="75" /></group>
|
||||
<group ref="screw"><bounds x="2860" y="30" width="75" height="75" /></group>
|
||||
<group ref="screw"><bounds x="1170" y="630" width="75" height="75" /></group>
|
||||
</group>
|
||||
<!-- pins -->
|
||||
<!-- IRQ -->
|
||||
<bezel element="pin"><bounds x="440" y="1450" width="30" height="30" /></bezel>
|
||||
<bezel element="text_irq"><bounds x="400" y="1395" width="120" height="50" /></bezel>
|
||||
<!-- Ports -->
|
||||
<repeat count="8">
|
||||
<param name="tid" start="7" increment="-1" />
|
||||
<param name="xp" start="180" increment="150" />
|
||||
<param name="txp" start="100" increment="150" />
|
||||
<repeat count="2">
|
||||
<param name="yp" start="280" increment="140" />
|
||||
<param name="typ" start="275" increment="140" />
|
||||
<bezel element="pin"><bounds x="~xp~" y="~yp~" width="30" height="30" /></bezel>
|
||||
<bezel element="text_~tid~"><bounds x="~txp~" y="~typ~" width="120" height="50" /></bezel>
|
||||
</repeat>
|
||||
</repeat>
|
||||
<bezel element="text_porta"><bounds x="350" y="200" width="500" height="75" /></bezel>
|
||||
<bezel element="text_portb"><bounds x="350" y="340" width="500" height="75" /></bezel>
|
||||
<!-- power feed -->
|
||||
<bezel element="pin"><bounds x="150" y="575" width="30" height="30" /></bezel>
|
||||
<bezel element="text_vcc"><bounds x="150" y="615" width="100" height="50" /></bezel>
|
||||
<bezel element="pin"><bounds x="150" y="710" width="30" height="30" /></bezel>
|
||||
<bezel element="text_gnd"><bounds x="150" y="660" width="100" height="50" /></bezel>
|
||||
<!-- R pins -->
|
||||
<bezel element="pin"><bounds x="3050" y="1740" width="30" height="30" /></bezel>
|
||||
<bezel element="text_r"><bounds x="2950" y="1735" width="100" height="50" /></bezel>
|
||||
<bezel element="pin"><bounds x="3050" y="1890" width="30" height="30" /></bezel>
|
||||
<bezel element="text_r"><bounds x="2950" y="1885" width="100" height="50" /></bezel>
|
||||
<!-- trim pot -->
|
||||
<bezel element="trim"><bounds x="950" y="2160" width="120" height="120" /></bezel>
|
||||
<!-- side connector -->
|
||||
<bezel element="amp"><bounds x="0" y="850" width="250" height="925" /></bezel>
|
||||
</group>
|
||||
|
||||
<view name="Base Artwork">
|
||||
<group ref="pcb"><bounds x="0" y="0" width="800" height="600" /></group>
|
||||
<group ref="hood"><bounds x="0" y="0" width="800" height="600"/> <color alpha="0.2" /></group>
|
||||
<group ref="screws"><bounds x="0" y="0" width="800" height="600"/></group>
|
||||
</view>
|
||||
|
||||
<view name="Leds and Buttons Artwork">
|
||||
<group ref="pcb"><bounds x="0" y="0" width="800" height="600" /></group>
|
||||
<!-- group ref="hood"><bounds x="0" y="0" width="800" height="600"/> <color alpha="0.2" /></group>
|
||||
<group ref="screws"><bounds x="0" y="0" width="800" height="600"/></group -->
|
||||
</view>
|
||||
<group name="screws">
|
||||
<!-- max size -->
|
||||
<bezel element="pcb_blue"><bounds x="0" y="0" width="1" height="1" /></bezel>
|
||||
<bezel element="pcb_blue"><bounds x="3200" y="2400" width="1" height="1" /></bezel>
|
||||
<!-- screws -->
|
||||
<group ref="screw"><bounds x="250" y="2300" width="75" height="75" /></group>
|
||||
<group ref="screw"><bounds x="1700" y="2300" width="75" height="75" /></group>
|
||||
<group ref="screw"><bounds x="2860" y="2300" width="75" height="75" /></group>
|
||||
<group ref="screw"><bounds x="1700" y="30" width="75" height="75" /></group>
|
||||
<group ref="screw"><bounds x="2860" y="30" width="75" height="75" /></group>
|
||||
<group ref="screw"><bounds x="1170" y="630" width="75" height="75" /></group>
|
||||
</group>
|
||||
|
||||
<view name="Base Artwork">
|
||||
<group ref="pcb"><bounds x="0" y="0" width="800" height="600" /></group>
|
||||
<group ref="hood"><bounds x="0" y="0" width="800" height="600"/> <color alpha="0.2" /></group>
|
||||
<group ref="screws"><bounds x="0" y="0" width="800" height="600"/></group>
|
||||
</view>
|
||||
|
||||
<view name="Leds and Buttons Artwork">
|
||||
<group ref="pcb"><bounds x="0" y="0" width="800" height="600" /></group>
|
||||
<!-- group ref="hood"><bounds x="0" y="0" width="800" height="600"/> <color alpha="0.2" /></group>
|
||||
<group ref="screws"><bounds x="0" y="0" width="800" height="600"/></group -->
|
||||
</view>
|
||||
</mamelayout>
|
||||
|
@ -210,14 +210,14 @@ void sgi_mc_device::dma_tick()
|
||||
{
|
||||
uint32_t addr = m_dma_mem_addr;
|
||||
if (m_dma_control & (1 << 8))
|
||||
{ // Enable virtual address translation
|
||||
{ // Enable virtual address translation
|
||||
addr = dma_translate(addr);
|
||||
}
|
||||
|
||||
if (m_dma_mode & (1 << 1))
|
||||
{ // Graphics to host
|
||||
{ // Graphics to host
|
||||
if (m_dma_mode & (1 << 3))
|
||||
{ // Fill mode
|
||||
{ // Fill mode
|
||||
m_space->write_dword(addr, m_dma_gio64_addr);
|
||||
m_dma_count -= 4;
|
||||
}
|
||||
@ -242,7 +242,7 @@ void sgi_mc_device::dma_tick()
|
||||
}
|
||||
}
|
||||
else
|
||||
{ // Host to graphics
|
||||
{ // Host to graphics
|
||||
const uint32_t remaining = m_dma_count & 0x0000ffff;
|
||||
uint32_t length = 8;
|
||||
uint64_t shift = 56;
|
||||
@ -263,14 +263,14 @@ void sgi_mc_device::dma_tick()
|
||||
}
|
||||
|
||||
if ((m_dma_count & 0x0000ffff) == 0)
|
||||
{ // If remaining byte count is 0, deduct zoom count
|
||||
{ // If remaining byte count is 0, deduct zoom count
|
||||
m_dma_count -= 0x00010000;
|
||||
if (m_dma_count == 0)
|
||||
{ // If remaining zoom count is also 0, move to next line
|
||||
{ // If remaining zoom count is also 0, move to next line
|
||||
m_dma_mem_addr += m_dma_stride & 0x0000ffff;
|
||||
m_dma_size -= 0x00010000;
|
||||
if ((m_dma_size & 0xffff0000) == 0)
|
||||
{ // If no remaining lines, DMA is done.
|
||||
{ // If no remaining lines, DMA is done.
|
||||
m_dma_timer->adjust(attotime::never);
|
||||
m_dma_run |= (1 << 3);
|
||||
m_dma_run &= ~(1 << 6);
|
||||
@ -285,7 +285,7 @@ void sgi_mc_device::dma_tick()
|
||||
}
|
||||
}
|
||||
else
|
||||
{ // If remaining zoom count is non-zero, reload byte count and return source address to the beginning of the line.
|
||||
{ // If remaining zoom count is non-zero, reload byte count and return source address to the beginning of the line.
|
||||
m_dma_count |= m_dma_size & 0x0000ffff;
|
||||
m_dma_mem_addr -= m_dma_size & 0x0000ffff;
|
||||
}
|
||||
|
@ -669,7 +669,7 @@ CUSTOM_INPUT_MEMBER(xavix_popira2_cart_state::i2c_r)
|
||||
{
|
||||
if (m_cartslot->has_cart())
|
||||
return m_cartslot->read_sda();
|
||||
else
|
||||
else
|
||||
return 0x0;
|
||||
}
|
||||
|
||||
|
@ -46,17 +46,17 @@ uint32_t dec0_state::screen_update_bandit(screen_device &screen, bitmap_ind16 &b
|
||||
|
||||
if (m_pri==0)
|
||||
{
|
||||
m_tilegen[2]->deco_bac06_pf_draw(bitmap,cliprect,TILEMAP_DRAW_OPAQUE, 0x00, 0x00, 0x00, 0x00);
|
||||
m_tilegen[1]->deco_bac06_pf_draw(bitmap,cliprect,0, 0x00, 0x00, 0x00, 0x00);
|
||||
m_spritegen->draw_sprites(bitmap, cliprect, m_buffered_spriteram, 0x00, 0x00, 0x0f);
|
||||
m_tilegen[0]->deco_bac06_pf_draw(bitmap,cliprect,0, 0x00, 0x00, 0x00, 0x00);
|
||||
m_tilegen[2]->deco_bac06_pf_draw(bitmap,cliprect,TILEMAP_DRAW_OPAQUE, 0x00, 0x00, 0x00, 0x00);
|
||||
m_tilegen[1]->deco_bac06_pf_draw(bitmap,cliprect,0, 0x00, 0x00, 0x00, 0x00);
|
||||
m_spritegen->draw_sprites(bitmap, cliprect, m_buffered_spriteram, 0x00, 0x00, 0x0f);
|
||||
m_tilegen[0]->deco_bac06_pf_draw(bitmap,cliprect,0, 0x00, 0x00, 0x00, 0x00);
|
||||
}
|
||||
else
|
||||
{
|
||||
m_tilegen[2]->deco_bac06_pf_draw(bitmap,cliprect,TILEMAP_DRAW_OPAQUE, 0x00, 0x00, 0x00, 0x00);
|
||||
m_tilegen[1]->deco_bac06_pf_draw(bitmap,cliprect,0, 0x00, 0x00, 0x00, 0x00);
|
||||
m_tilegen[0]->deco_bac06_pf_draw(bitmap,cliprect,0, 0x00, 0x00, 0x00, 0x00);
|
||||
m_spritegen->draw_sprites(bitmap, cliprect, m_buffered_spriteram, 0x00, 0x00, 0x0f);
|
||||
m_tilegen[2]->deco_bac06_pf_draw(bitmap,cliprect,TILEMAP_DRAW_OPAQUE, 0x00, 0x00, 0x00, 0x00);
|
||||
m_tilegen[1]->deco_bac06_pf_draw(bitmap,cliprect,0, 0x00, 0x00, 0x00, 0x00);
|
||||
m_tilegen[0]->deco_bac06_pf_draw(bitmap,cliprect,0, 0x00, 0x00, 0x00, 0x00);
|
||||
m_spritegen->draw_sprites(bitmap, cliprect, m_buffered_spriteram, 0x00, 0x00, 0x0f);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
@ -1,16 +1,16 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:Ryan Holtz, Tyson Smith
|
||||
/*
|
||||
Silicon Graphics LG1 "Light" graphics board used as
|
||||
entry level graphics in the Indigo and IRIS Crimson.
|
||||
Silicon Graphics LG1 "Light" graphics board used as
|
||||
entry level graphics in the Indigo and IRIS Crimson.
|
||||
*/
|
||||
|
||||
#include "emu.h"
|
||||
#include "video/light.h"
|
||||
#include "screen.h"
|
||||
|
||||
#define LOG_REX (1 << 0)
|
||||
#define LOG_ALL (LOG_REX)
|
||||
#define LOG_REX (1 << 0)
|
||||
#define LOG_ALL (LOG_REX)
|
||||
|
||||
#define VERBOSE (0)
|
||||
#include "logmacro.h"
|
||||
|
@ -1,8 +1,8 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:Ryan Holtz, Tyson Smith
|
||||
/*
|
||||
Silicon Graphics LG1 "Light" graphics board used as
|
||||
entry level graphics in the Indigo and IRIS Crimson.
|
||||
Silicon Graphics LG1 "Light" graphics board used as
|
||||
entry level graphics in the Indigo and IRIS Crimson.
|
||||
*/
|
||||
|
||||
#ifndef MAME_VIDEO_LIGHT_H
|
||||
|
@ -37,7 +37,7 @@
|
||||
#define LOG_XMAP1 (1 << 5)
|
||||
#define LOG_REX3 (1 << 6)
|
||||
#define LOG_COMMANDS (1 << 7)
|
||||
#define LOG_REJECTS (1 << 8)
|
||||
#define LOG_REJECTS (1 << 8)
|
||||
#define LOG_ALL (LOG_UNKNOWN | LOG_VC2 | LOG_CMAP0 | LOG_CMAP1 | LOG_XMAP0 | LOG_XMAP1 | LOG_REX3)
|
||||
|
||||
#define VERBOSE (0)//(LOG_UNKNOWN | LOG_VC2 | LOG_XMAP0 | LOG_CMAP0 | LOG_REX3 | LOG_COMMANDS | LOG_REJECTS)
|
||||
@ -360,9 +360,9 @@ uint32_t newport_video_device::screen_update(screen_device &device, bitmap_rgb32
|
||||
case 3:
|
||||
{
|
||||
const uint8_t pix_in = *src_ci;
|
||||
const uint8_t r = (0x92 * BIT(pix_in, 2)) | (0x49 * BIT(pix_in, 1)) | (0x24 * BIT(pix_in, 0));
|
||||
const uint8_t g = (0x92 * BIT(pix_in, 5)) | (0x49 * BIT(pix_in, 4)) | (0x24 * BIT(pix_in, 3));
|
||||
const uint8_t b = (0xaa * BIT(pix_in, 7)) | (0x55 * BIT(pix_in, 6));
|
||||
const uint8_t r = (0x92 * BIT(pix_in, 2)) | (0x49 * BIT(pix_in, 1)) | (0x24 * BIT(pix_in, 0));
|
||||
const uint8_t g = (0x92 * BIT(pix_in, 5)) | (0x49 * BIT(pix_in, 4)) | (0x24 * BIT(pix_in, 3));
|
||||
const uint8_t b = (0xaa * BIT(pix_in, 7)) | (0x55 * BIT(pix_in, 6));
|
||||
*dest++ = (r << 16) | (g << 8) | b;
|
||||
break;
|
||||
}
|
||||
@ -1392,22 +1392,22 @@ void newport_video_device::store_pixel(uint8_t *dest_buf, uint8_t src)
|
||||
|
||||
switch ((m_rex3.m_draw_mode1 >> 28) & 15)
|
||||
{
|
||||
case 0: break;
|
||||
case 1: *dest_buf |= (src & dst) & m_rex3.m_write_mask; break;
|
||||
case 2: *dest_buf |= (src & ~dst) & m_rex3.m_write_mask; break;
|
||||
case 3: *dest_buf |= (src) & m_rex3.m_write_mask; break;
|
||||
case 4: *dest_buf |= (~src & dst) & m_rex3.m_write_mask; break;
|
||||
case 5: *dest_buf |= (dst) & m_rex3.m_write_mask; break;
|
||||
case 6: *dest_buf |= (src ^ dst) & m_rex3.m_write_mask; break;
|
||||
case 7: *dest_buf |= (src | dst) & m_rex3.m_write_mask; break;
|
||||
case 8: *dest_buf |= ~(src | dst) & m_rex3.m_write_mask; break;
|
||||
case 9: *dest_buf |= ~(src ^ dst) & m_rex3.m_write_mask; break;
|
||||
case 10: *dest_buf |= ~(dst) & m_rex3.m_write_mask; break;
|
||||
case 11: *dest_buf |= (src | ~dst) & m_rex3.m_write_mask; break;
|
||||
case 12: *dest_buf |= ~(src) & m_rex3.m_write_mask; break;
|
||||
case 13: *dest_buf |= (~src | dst) & m_rex3.m_write_mask; break;
|
||||
case 14: *dest_buf |= ~(src & dst) & m_rex3.m_write_mask; break;
|
||||
case 15: *dest_buf |= 0xff & m_rex3.m_write_mask; break;
|
||||
case 0: break;
|
||||
case 1: *dest_buf |= (src & dst) & m_rex3.m_write_mask; break;
|
||||
case 2: *dest_buf |= (src & ~dst) & m_rex3.m_write_mask; break;
|
||||
case 3: *dest_buf |= (src) & m_rex3.m_write_mask; break;
|
||||
case 4: *dest_buf |= (~src & dst) & m_rex3.m_write_mask; break;
|
||||
case 5: *dest_buf |= (dst) & m_rex3.m_write_mask; break;
|
||||
case 6: *dest_buf |= (src ^ dst) & m_rex3.m_write_mask; break;
|
||||
case 7: *dest_buf |= (src | dst) & m_rex3.m_write_mask; break;
|
||||
case 8: *dest_buf |= ~(src | dst) & m_rex3.m_write_mask; break;
|
||||
case 9: *dest_buf |= ~(src ^ dst) & m_rex3.m_write_mask; break;
|
||||
case 10: *dest_buf |= ~(dst) & m_rex3.m_write_mask; break;
|
||||
case 11: *dest_buf |= (src | ~dst) & m_rex3.m_write_mask; break;
|
||||
case 12: *dest_buf |= ~(src) & m_rex3.m_write_mask; break;
|
||||
case 13: *dest_buf |= (~src | dst) & m_rex3.m_write_mask; break;
|
||||
case 14: *dest_buf |= ~(src & dst) & m_rex3.m_write_mask; break;
|
||||
case 15: *dest_buf |= 0xff & m_rex3.m_write_mask; break;
|
||||
}
|
||||
}
|
||||
|
||||
@ -1452,26 +1452,26 @@ void newport_video_device::do_v_iline(uint8_t color, bool skip_last, bool shade)
|
||||
do
|
||||
{
|
||||
if (shade)
|
||||
write_pixel(x1, y1, (uint8_t)(m_rex3.m_color_red >> 11));
|
||||
else
|
||||
write_pixel(x1, y1, color);
|
||||
write_pixel(x1, y1, (uint8_t)(m_rex3.m_color_red >> 11));
|
||||
else
|
||||
write_pixel(x1, y1, color);
|
||||
|
||||
y1 += incy;
|
||||
y1 += incy;
|
||||
|
||||
if (shade)
|
||||
m_rex3.m_color_red += m_rex3.m_slope_red;
|
||||
} while (y1 != y2);
|
||||
|
||||
if (!skip_last)
|
||||
{
|
||||
if (!skip_last)
|
||||
{
|
||||
if (shade)
|
||||
write_pixel(x1, y1, (uint8_t)(m_rex3.m_color_red >> 11));
|
||||
else
|
||||
write_pixel(x1, y1, color);
|
||||
}
|
||||
write_pixel(x1, y1, (uint8_t)(m_rex3.m_color_red >> 11));
|
||||
else
|
||||
write_pixel(x1, y1, color);
|
||||
}
|
||||
|
||||
write_x_start(x1 << 11);
|
||||
write_y_start(y1 << 11);
|
||||
write_x_start(x1 << 11);
|
||||
write_y_start(y1 << 11);
|
||||
}
|
||||
|
||||
void newport_video_device::do_h_iline(uint8_t color, bool skip_last, bool shade)
|
||||
@ -1495,15 +1495,15 @@ void newport_video_device::do_h_iline(uint8_t color, bool skip_last, bool shade)
|
||||
m_rex3.m_color_red += m_rex3.m_slope_red;
|
||||
} while (x1 != x2);
|
||||
|
||||
if (!skip_last) {
|
||||
if (!skip_last) {
|
||||
if (shade)
|
||||
write_pixel(x1, y1, (uint8_t)(m_rex3.m_color_red >> 11));
|
||||
else
|
||||
write_pixel(x1, y1, color);
|
||||
}
|
||||
write_pixel(x1, y1, (uint8_t)(m_rex3.m_color_red >> 11));
|
||||
else
|
||||
write_pixel(x1, y1, color);
|
||||
}
|
||||
|
||||
write_x_start(x1 << 11);
|
||||
write_y_start(y1 << 11);
|
||||
write_x_start(x1 << 11);
|
||||
write_y_start(y1 << 11);
|
||||
}
|
||||
|
||||
void newport_video_device::do_iline(uint8_t color, bool skip_last, bool shade)
|
||||
@ -1621,8 +1621,8 @@ void newport_video_device::do_iline(uint8_t color, bool skip_last, bool shade)
|
||||
}
|
||||
}
|
||||
|
||||
write_x_start(x1 << 11);
|
||||
write_y_start(y1 << 11);
|
||||
write_x_start(x1 << 11);
|
||||
write_y_start(y1 << 11);
|
||||
}
|
||||
|
||||
uint8_t newport_video_device::do_pixel_read()
|
||||
@ -1763,8 +1763,8 @@ void newport_video_device::do_rex3_command()
|
||||
{
|
||||
//if (shade)
|
||||
//{
|
||||
// write_pixel(start_x, start_y, (uint8_t)(m_rex3.m_color_red >> 11));
|
||||
// m_rex3.m_color_red += m_rex3.m_slope_red;
|
||||
// write_pixel(start_x, start_y, (uint8_t)(m_rex3.m_color_red >> 11));
|
||||
// m_rex3.m_color_red += m_rex3.m_slope_red;
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
|
@ -11,7 +11,7 @@
|
||||
|
||||
#include "machine/hpc3.h"
|
||||
|
||||
#define ENABLE_NEWVIEW_LOG (0)
|
||||
#define ENABLE_NEWVIEW_LOG (0)
|
||||
|
||||
class newport_video_device : public device_t
|
||||
{
|
||||
|
@ -63,263 +63,263 @@ struct key_lookup_table
|
||||
|
||||
static key_lookup_table sdl_lookup_table[] =
|
||||
{
|
||||
KE(UNKNOWN)
|
||||
KE(UNKNOWN)
|
||||
|
||||
KE(A)
|
||||
KE(B)
|
||||
KE(C)
|
||||
KE(D)
|
||||
KE(E)
|
||||
KE(F)
|
||||
KE(G)
|
||||
KE(H)
|
||||
KE(I)
|
||||
KE(J)
|
||||
KE(K)
|
||||
KE(L)
|
||||
KE(M)
|
||||
KE(N)
|
||||
KE(O)
|
||||
KE(P)
|
||||
KE(Q)
|
||||
KE(R)
|
||||
KE(S)
|
||||
KE(T)
|
||||
KE(U)
|
||||
KE(V)
|
||||
KE(W)
|
||||
KE(X)
|
||||
KE(Y)
|
||||
KE(Z)
|
||||
KE(A)
|
||||
KE(B)
|
||||
KE(C)
|
||||
KE(D)
|
||||
KE(E)
|
||||
KE(F)
|
||||
KE(G)
|
||||
KE(H)
|
||||
KE(I)
|
||||
KE(J)
|
||||
KE(K)
|
||||
KE(L)
|
||||
KE(M)
|
||||
KE(N)
|
||||
KE(O)
|
||||
KE(P)
|
||||
KE(Q)
|
||||
KE(R)
|
||||
KE(S)
|
||||
KE(T)
|
||||
KE(U)
|
||||
KE(V)
|
||||
KE(W)
|
||||
KE(X)
|
||||
KE(Y)
|
||||
KE(Z)
|
||||
|
||||
KE(1)
|
||||
KE(2)
|
||||
KE(3)
|
||||
KE(4)
|
||||
KE(5)
|
||||
KE(6)
|
||||
KE(7)
|
||||
KE(8)
|
||||
KE(9)
|
||||
KE(0)
|
||||
KE(1)
|
||||
KE(2)
|
||||
KE(3)
|
||||
KE(4)
|
||||
KE(5)
|
||||
KE(6)
|
||||
KE(7)
|
||||
KE(8)
|
||||
KE(9)
|
||||
KE(0)
|
||||
|
||||
KE(RETURN)
|
||||
KE(ESCAPE)
|
||||
KE(BACKSPACE)
|
||||
KE(TAB)
|
||||
KE(SPACE)
|
||||
KE(RETURN)
|
||||
KE(ESCAPE)
|
||||
KE(BACKSPACE)
|
||||
KE(TAB)
|
||||
KE(SPACE)
|
||||
|
||||
KE(MINUS)
|
||||
KE(EQUALS)
|
||||
KE(LEFTBRACKET)
|
||||
KE(RIGHTBRACKET)
|
||||
KE(BACKSLASH)
|
||||
KE(NONUSHASH)
|
||||
KE(SEMICOLON)
|
||||
KE(APOSTROPHE)
|
||||
KE(GRAVE)
|
||||
KE(COMMA)
|
||||
KE(PERIOD)
|
||||
KE(SLASH)
|
||||
KE(MINUS)
|
||||
KE(EQUALS)
|
||||
KE(LEFTBRACKET)
|
||||
KE(RIGHTBRACKET)
|
||||
KE(BACKSLASH)
|
||||
KE(NONUSHASH)
|
||||
KE(SEMICOLON)
|
||||
KE(APOSTROPHE)
|
||||
KE(GRAVE)
|
||||
KE(COMMA)
|
||||
KE(PERIOD)
|
||||
KE(SLASH)
|
||||
|
||||
KE(CAPSLOCK)
|
||||
KE(CAPSLOCK)
|
||||
|
||||
KE(F1)
|
||||
KE(F2)
|
||||
KE(F3)
|
||||
KE(F4)
|
||||
KE(F5)
|
||||
KE(F6)
|
||||
KE(F7)
|
||||
KE(F8)
|
||||
KE(F9)
|
||||
KE(F10)
|
||||
KE(F11)
|
||||
KE(F12)
|
||||
KE(F1)
|
||||
KE(F2)
|
||||
KE(F3)
|
||||
KE(F4)
|
||||
KE(F5)
|
||||
KE(F6)
|
||||
KE(F7)
|
||||
KE(F8)
|
||||
KE(F9)
|
||||
KE(F10)
|
||||
KE(F11)
|
||||
KE(F12)
|
||||
|
||||
KE(PRINTSCREEN)
|
||||
KE(SCROLLLOCK)
|
||||
KE(PAUSE)
|
||||
KE(INSERT)
|
||||
KE(HOME)
|
||||
KE(PAGEUP)
|
||||
KE(DELETE)
|
||||
KE(END)
|
||||
KE(PAGEDOWN)
|
||||
KE(RIGHT)
|
||||
KE(LEFT)
|
||||
KE(DOWN)
|
||||
KE(UP)
|
||||
KE(PRINTSCREEN)
|
||||
KE(SCROLLLOCK)
|
||||
KE(PAUSE)
|
||||
KE(INSERT)
|
||||
KE(HOME)
|
||||
KE(PAGEUP)
|
||||
KE(DELETE)
|
||||
KE(END)
|
||||
KE(PAGEDOWN)
|
||||
KE(RIGHT)
|
||||
KE(LEFT)
|
||||
KE(DOWN)
|
||||
KE(UP)
|
||||
|
||||
KE(NUMLOCKCLEAR)
|
||||
KE(KP_DIVIDE)
|
||||
KE(KP_MULTIPLY)
|
||||
KE(KP_MINUS)
|
||||
KE(KP_PLUS)
|
||||
KE(KP_ENTER)
|
||||
KE(KP_1)
|
||||
KE(KP_2)
|
||||
KE(KP_3)
|
||||
KE(KP_4)
|
||||
KE(KP_5)
|
||||
KE(KP_6)
|
||||
KE(KP_7)
|
||||
KE(KP_8)
|
||||
KE(KP_9)
|
||||
KE(KP_0)
|
||||
KE(KP_PERIOD)
|
||||
KE(NUMLOCKCLEAR)
|
||||
KE(KP_DIVIDE)
|
||||
KE(KP_MULTIPLY)
|
||||
KE(KP_MINUS)
|
||||
KE(KP_PLUS)
|
||||
KE(KP_ENTER)
|
||||
KE(KP_1)
|
||||
KE(KP_2)
|
||||
KE(KP_3)
|
||||
KE(KP_4)
|
||||
KE(KP_5)
|
||||
KE(KP_6)
|
||||
KE(KP_7)
|
||||
KE(KP_8)
|
||||
KE(KP_9)
|
||||
KE(KP_0)
|
||||
KE(KP_PERIOD)
|
||||
|
||||
KE(NONUSBACKSLASH)
|
||||
KE(APPLICATION)
|
||||
KE(POWER)
|
||||
KE(KP_EQUALS)
|
||||
KE(F13)
|
||||
KE(F14)
|
||||
KE(F15)
|
||||
KE(F16)
|
||||
KE(F17)
|
||||
KE(F18)
|
||||
KE(F19)
|
||||
KE(F20)
|
||||
KE(F21)
|
||||
KE(F22)
|
||||
KE(F23)
|
||||
KE(F24)
|
||||
KE(EXECUTE)
|
||||
KE(HELP)
|
||||
KE(MENU)
|
||||
KE(SELECT)
|
||||
KE(STOP)
|
||||
KE(AGAIN)
|
||||
KE(UNDO)
|
||||
KE(CUT)
|
||||
KE(COPY)
|
||||
KE(PASTE)
|
||||
KE(FIND)
|
||||
KE(MUTE)
|
||||
KE(VOLUMEUP)
|
||||
KE(VOLUMEDOWN)
|
||||
KE(KP_COMMA)
|
||||
KE(KP_EQUALSAS400)
|
||||
KE(NONUSBACKSLASH)
|
||||
KE(APPLICATION)
|
||||
KE(POWER)
|
||||
KE(KP_EQUALS)
|
||||
KE(F13)
|
||||
KE(F14)
|
||||
KE(F15)
|
||||
KE(F16)
|
||||
KE(F17)
|
||||
KE(F18)
|
||||
KE(F19)
|
||||
KE(F20)
|
||||
KE(F21)
|
||||
KE(F22)
|
||||
KE(F23)
|
||||
KE(F24)
|
||||
KE(EXECUTE)
|
||||
KE(HELP)
|
||||
KE(MENU)
|
||||
KE(SELECT)
|
||||
KE(STOP)
|
||||
KE(AGAIN)
|
||||
KE(UNDO)
|
||||
KE(CUT)
|
||||
KE(COPY)
|
||||
KE(PASTE)
|
||||
KE(FIND)
|
||||
KE(MUTE)
|
||||
KE(VOLUMEUP)
|
||||
KE(VOLUMEDOWN)
|
||||
KE(KP_COMMA)
|
||||
KE(KP_EQUALSAS400)
|
||||
|
||||
KE(INTERNATIONAL1)
|
||||
KE(INTERNATIONAL2)
|
||||
KE(INTERNATIONAL3)
|
||||
KE(INTERNATIONAL4)
|
||||
KE(INTERNATIONAL5)
|
||||
KE(INTERNATIONAL6)
|
||||
KE(INTERNATIONAL7)
|
||||
KE(INTERNATIONAL8)
|
||||
KE(INTERNATIONAL9)
|
||||
KE(LANG1)
|
||||
KE(LANG2)
|
||||
KE(LANG3)
|
||||
KE(LANG4)
|
||||
KE(LANG5)
|
||||
KE(LANG6)
|
||||
KE(LANG7)
|
||||
KE(LANG8)
|
||||
KE(LANG9)
|
||||
KE(INTERNATIONAL1)
|
||||
KE(INTERNATIONAL2)
|
||||
KE(INTERNATIONAL3)
|
||||
KE(INTERNATIONAL4)
|
||||
KE(INTERNATIONAL5)
|
||||
KE(INTERNATIONAL6)
|
||||
KE(INTERNATIONAL7)
|
||||
KE(INTERNATIONAL8)
|
||||
KE(INTERNATIONAL9)
|
||||
KE(LANG1)
|
||||
KE(LANG2)
|
||||
KE(LANG3)
|
||||
KE(LANG4)
|
||||
KE(LANG5)
|
||||
KE(LANG6)
|
||||
KE(LANG7)
|
||||
KE(LANG8)
|
||||
KE(LANG9)
|
||||
|
||||
KE(ALTERASE)
|
||||
KE(SYSREQ)
|
||||
KE(CANCEL)
|
||||
KE(CLEAR)
|
||||
KE(PRIOR)
|
||||
KE(RETURN2)
|
||||
KE(SEPARATOR)
|
||||
KE(OUT)
|
||||
KE(OPER)
|
||||
KE(CLEARAGAIN)
|
||||
KE(CRSEL)
|
||||
KE(EXSEL)
|
||||
KE(ALTERASE)
|
||||
KE(SYSREQ)
|
||||
KE(CANCEL)
|
||||
KE(CLEAR)
|
||||
KE(PRIOR)
|
||||
KE(RETURN2)
|
||||
KE(SEPARATOR)
|
||||
KE(OUT)
|
||||
KE(OPER)
|
||||
KE(CLEARAGAIN)
|
||||
KE(CRSEL)
|
||||
KE(EXSEL)
|
||||
|
||||
KE(KP_00)
|
||||
KE(KP_000)
|
||||
KE(THOUSANDSSEPARATOR)
|
||||
KE(DECIMALSEPARATOR)
|
||||
KE(CURRENCYUNIT)
|
||||
KE(CURRENCYSUBUNIT)
|
||||
KE(KP_LEFTPAREN)
|
||||
KE(KP_RIGHTPAREN)
|
||||
KE(KP_LEFTBRACE)
|
||||
KE(KP_RIGHTBRACE)
|
||||
KE(KP_TAB)
|
||||
KE(KP_BACKSPACE)
|
||||
KE(KP_A)
|
||||
KE(KP_B)
|
||||
KE(KP_C)
|
||||
KE(KP_D)
|
||||
KE(KP_E)
|
||||
KE(KP_F)
|
||||
KE(KP_XOR)
|
||||
KE(KP_POWER)
|
||||
KE(KP_PERCENT)
|
||||
KE(KP_LESS)
|
||||
KE(KP_GREATER)
|
||||
KE(KP_AMPERSAND)
|
||||
KE(KP_DBLAMPERSAND)
|
||||
KE(KP_VERTICALBAR)
|
||||
KE(KP_DBLVERTICALBAR)
|
||||
KE(KP_COLON)
|
||||
KE(KP_HASH)
|
||||
KE(KP_SPACE)
|
||||
KE(KP_AT)
|
||||
KE(KP_EXCLAM)
|
||||
KE(KP_MEMSTORE)
|
||||
KE(KP_MEMRECALL)
|
||||
KE(KP_MEMCLEAR)
|
||||
KE(KP_MEMADD)
|
||||
KE(KP_MEMSUBTRACT)
|
||||
KE(KP_MEMMULTIPLY)
|
||||
KE(KP_MEMDIVIDE)
|
||||
KE(KP_PLUSMINUS)
|
||||
KE(KP_CLEAR)
|
||||
KE(KP_CLEARENTRY)
|
||||
KE(KP_BINARY)
|
||||
KE(KP_OCTAL)
|
||||
KE(KP_DECIMAL)
|
||||
KE(KP_HEXADECIMAL)
|
||||
KE(KP_00)
|
||||
KE(KP_000)
|
||||
KE(THOUSANDSSEPARATOR)
|
||||
KE(DECIMALSEPARATOR)
|
||||
KE(CURRENCYUNIT)
|
||||
KE(CURRENCYSUBUNIT)
|
||||
KE(KP_LEFTPAREN)
|
||||
KE(KP_RIGHTPAREN)
|
||||
KE(KP_LEFTBRACE)
|
||||
KE(KP_RIGHTBRACE)
|
||||
KE(KP_TAB)
|
||||
KE(KP_BACKSPACE)
|
||||
KE(KP_A)
|
||||
KE(KP_B)
|
||||
KE(KP_C)
|
||||
KE(KP_D)
|
||||
KE(KP_E)
|
||||
KE(KP_F)
|
||||
KE(KP_XOR)
|
||||
KE(KP_POWER)
|
||||
KE(KP_PERCENT)
|
||||
KE(KP_LESS)
|
||||
KE(KP_GREATER)
|
||||
KE(KP_AMPERSAND)
|
||||
KE(KP_DBLAMPERSAND)
|
||||
KE(KP_VERTICALBAR)
|
||||
KE(KP_DBLVERTICALBAR)
|
||||
KE(KP_COLON)
|
||||
KE(KP_HASH)
|
||||
KE(KP_SPACE)
|
||||
KE(KP_AT)
|
||||
KE(KP_EXCLAM)
|
||||
KE(KP_MEMSTORE)
|
||||
KE(KP_MEMRECALL)
|
||||
KE(KP_MEMCLEAR)
|
||||
KE(KP_MEMADD)
|
||||
KE(KP_MEMSUBTRACT)
|
||||
KE(KP_MEMMULTIPLY)
|
||||
KE(KP_MEMDIVIDE)
|
||||
KE(KP_PLUSMINUS)
|
||||
KE(KP_CLEAR)
|
||||
KE(KP_CLEARENTRY)
|
||||
KE(KP_BINARY)
|
||||
KE(KP_OCTAL)
|
||||
KE(KP_DECIMAL)
|
||||
KE(KP_HEXADECIMAL)
|
||||
|
||||
KE(LCTRL)
|
||||
KE(LSHIFT)
|
||||
KE(LALT)
|
||||
KE(LGUI)
|
||||
KE(RCTRL)
|
||||
KE(RSHIFT)
|
||||
KE(RALT)
|
||||
KE(RGUI)
|
||||
KE(LCTRL)
|
||||
KE(LSHIFT)
|
||||
KE(LALT)
|
||||
KE(LGUI)
|
||||
KE(RCTRL)
|
||||
KE(RSHIFT)
|
||||
KE(RALT)
|
||||
KE(RGUI)
|
||||
|
||||
KE(MODE)
|
||||
KE(AUDIONEXT)
|
||||
KE(AUDIOPREV)
|
||||
KE(AUDIOSTOP)
|
||||
KE(AUDIOPLAY)
|
||||
KE(AUDIOMUTE)
|
||||
KE(MEDIASELECT)
|
||||
KE(WWW)
|
||||
KE(MAIL)
|
||||
KE(CALCULATOR)
|
||||
KE(COMPUTER)
|
||||
KE(AC_SEARCH)
|
||||
KE(AC_HOME)
|
||||
KE(AC_BACK)
|
||||
KE(AC_FORWARD)
|
||||
KE(AC_STOP)
|
||||
KE(AC_REFRESH)
|
||||
KE(AC_BOOKMARKS)
|
||||
KE(MODE)
|
||||
KE(AUDIONEXT)
|
||||
KE(AUDIOPREV)
|
||||
KE(AUDIOSTOP)
|
||||
KE(AUDIOPLAY)
|
||||
KE(AUDIOMUTE)
|
||||
KE(MEDIASELECT)
|
||||
KE(WWW)
|
||||
KE(MAIL)
|
||||
KE(CALCULATOR)
|
||||
KE(COMPUTER)
|
||||
KE(AC_SEARCH)
|
||||
KE(AC_HOME)
|
||||
KE(AC_BACK)
|
||||
KE(AC_FORWARD)
|
||||
KE(AC_STOP)
|
||||
KE(AC_REFRESH)
|
||||
KE(AC_BOOKMARKS)
|
||||
|
||||
KE(BRIGHTNESSDOWN)
|
||||
KE(BRIGHTNESSUP)
|
||||
KE(DISPLAYSWITCH)
|
||||
KE(KBDILLUMTOGGLE)
|
||||
KE(KBDILLUMDOWN)
|
||||
KE(KBDILLUMUP)
|
||||
KE(EJECT)
|
||||
KE(SLEEP)
|
||||
KE(BRIGHTNESSDOWN)
|
||||
KE(BRIGHTNESSUP)
|
||||
KE(DISPLAYSWITCH)
|
||||
KE(KBDILLUMTOGGLE)
|
||||
KE(KBDILLUMDOWN)
|
||||
KE(KBDILLUMUP)
|
||||
KE(EJECT)
|
||||
KE(SLEEP)
|
||||
|
||||
KE(APP1)
|
||||
KE(APP2)
|
||||
KE(APP1)
|
||||
KE(APP2)
|
||||
|
||||
|
||||
{
|
||||
|
@ -6,68 +6,68 @@
|
||||
|
||||
DEC RT-11 disk images
|
||||
|
||||
References:
|
||||
References:
|
||||
|
||||
VaFFM -- bitsavers://pdf/dec/pdp11/rt11/v5.6_Aug91/AA-PD6PA-TC_RT-11_Volume_and_File_Formats_Manual_Aug91.pdf
|
||||
DHM -- bitsavers://pdf/dec/pdp11/rt11/v5.6_Aug91/AA-PE7VA-TC_RT-11_Device_Handlers_Manual_Aug91.pdf
|
||||
SSM -- bitsavers://pdf/dec/pdp11/rt11/v5.0_Mar83/AA-H379B-TC_5.0_SWsuppMar83.pdf
|
||||
TSX+ -- bitsavers://pdf/dec/pdp11/tsxPlus/manuals_6.31/TSX-Plus_UsersRef_Jan88.pdf
|
||||
PUTR -- http://www.dbit.com/pub/putr/putr.asm
|
||||
VaFFM -- bitsavers://pdf/dec/pdp11/rt11/v5.6_Aug91/AA-PD6PA-TC_RT-11_Volume_and_File_Formats_Manual_Aug91.pdf
|
||||
DHM -- bitsavers://pdf/dec/pdp11/rt11/v5.6_Aug91/AA-PE7VA-TC_RT-11_Device_Handlers_Manual_Aug91.pdf
|
||||
SSM -- bitsavers://pdf/dec/pdp11/rt11/v5.0_Mar83/AA-H379B-TC_5.0_SWsuppMar83.pdf
|
||||
TSX+ -- bitsavers://pdf/dec/pdp11/tsxPlus/manuals_6.31/TSX-Plus_UsersRef_Jan88.pdf
|
||||
PUTR -- http://www.dbit.com/pub/putr/putr.asm
|
||||
|
||||
To do:
|
||||
- filter for text files
|
||||
- read-write support
|
||||
- report empty 'last modified' time if date field is all zeros
|
||||
- report free space
|
||||
- arbitrary sized images
|
||||
- don't crash when strings in home block have non-ascii chars (charconverter does not apply)
|
||||
- do something about bootblock bug in imgtool (commit aca90520)
|
||||
To do:
|
||||
- filter for text files
|
||||
- read-write support
|
||||
- report empty 'last modified' time if date field is all zeros
|
||||
- report free space
|
||||
- arbitrary sized images
|
||||
- don't crash when strings in home block have non-ascii chars (charconverter does not apply)
|
||||
- do something about bootblock bug in imgtool (commit aca90520)
|
||||
|
||||
LBN Contents
|
||||
--- --------
|
||||
0 Reserved (primary bootstrap)
|
||||
1 Reserved (home block)
|
||||
2-5 Reserved (secondary bootstrap)
|
||||
6-7 Directory segment 1
|
||||
... Directory segment 2-n
|
||||
... Data
|
||||
LBN Contents
|
||||
--- --------
|
||||
0 Reserved (primary bootstrap)
|
||||
1 Reserved (home block)
|
||||
2-5 Reserved (secondary bootstrap)
|
||||
6-7 Directory segment 1
|
||||
... Directory segment 2-n
|
||||
... Data
|
||||
|
||||
Home block
|
||||
----------
|
||||
000-201 Bad block replacement table
|
||||
202-203 ?
|
||||
204-251 INITIALIZE/RESTORE data area
|
||||
252-273 BUP information area
|
||||
274-677 ?
|
||||
700-701 (Reserved for Digital, must be zero)
|
||||
702-703 (Reserved for Digital, must be zero)
|
||||
704-721 ?
|
||||
722-723 Pack cluster size (= 1)
|
||||
724-725 Block number of first directory segment
|
||||
726-727 System version (RAD50)
|
||||
730-742 Volume Identification
|
||||
744-757 Owner name
|
||||
760-773 System Identification
|
||||
776-777 Checksum
|
||||
Home block
|
||||
----------
|
||||
000-201 Bad block replacement table
|
||||
202-203 ?
|
||||
204-251 INITIALIZE/RESTORE data area
|
||||
252-273 BUP information area
|
||||
274-677 ?
|
||||
700-701 (Reserved for Digital, must be zero)
|
||||
702-703 (Reserved for Digital, must be zero)
|
||||
704-721 ?
|
||||
722-723 Pack cluster size (= 1)
|
||||
724-725 Block number of first directory segment
|
||||
726-727 System version (RAD50)
|
||||
730-742 Volume Identification
|
||||
744-757 Owner name
|
||||
760-773 System Identification
|
||||
776-777 Checksum
|
||||
|
||||
Directory segment header
|
||||
------------------------
|
||||
0 The total number of segments in this directory.
|
||||
1 The segment number of the next logical directory segment. If this word is 0, there are no more segments in the list.
|
||||
2 The number of the highest segment currently in use. Valid only in the first directory segment.
|
||||
3 The number of extra bytes per directory entry, always an unsigned, even octal number.
|
||||
4 The block number on the volume where the actual stored data identified by this segment begins.
|
||||
Directory segment header
|
||||
------------------------
|
||||
0 The total number of segments in this directory.
|
||||
1 The segment number of the next logical directory segment. If this word is 0, there are no more segments in the list.
|
||||
2 The number of the highest segment currently in use. Valid only in the first directory segment.
|
||||
3 The number of extra bytes per directory entry, always an unsigned, even octal number.
|
||||
4 The block number on the volume where the actual stored data identified by this segment begins.
|
||||
|
||||
Directory entry
|
||||
---------------
|
||||
0 Status word
|
||||
1 File name 1-3 (RAD50)
|
||||
2 File name 4-6 (RAD50)
|
||||
3 File type 1-3 (RAD50)
|
||||
4 Total file length (blocks)
|
||||
5 Job#, Channel# (RT-11 uses this information only for tentative files)
|
||||
6 Creation date
|
||||
7- Optional extra words
|
||||
Directory entry
|
||||
---------------
|
||||
0 Status word
|
||||
1 File name 1-3 (RAD50)
|
||||
2 File name 4-6 (RAD50)
|
||||
3 File type 1-3 (RAD50)
|
||||
4 Total file length (blocks)
|
||||
5 Job#, Channel# (RT-11 uses this information only for tentative files)
|
||||
6 Creation date
|
||||
7- Optional extra words
|
||||
|
||||
****************************************************************************/
|
||||
|
||||
|
@ -26,263 +26,263 @@ struct key_lookup_table { int code; const char *name; };
|
||||
|
||||
static constexpr key_lookup_table sdl_lookup[] =
|
||||
{
|
||||
KE(UNKNOWN)
|
||||
KE(UNKNOWN)
|
||||
|
||||
KE(A)
|
||||
KE(B)
|
||||
KE(C)
|
||||
KE(D)
|
||||
KE(E)
|
||||
KE(F)
|
||||
KE(G)
|
||||
KE(H)
|
||||
KE(I)
|
||||
KE(J)
|
||||
KE(K)
|
||||
KE(L)
|
||||
KE(M)
|
||||
KE(N)
|
||||
KE(O)
|
||||
KE(P)
|
||||
KE(Q)
|
||||
KE(R)
|
||||
KE(S)
|
||||
KE(T)
|
||||
KE(U)
|
||||
KE(V)
|
||||
KE(W)
|
||||
KE(X)
|
||||
KE(Y)
|
||||
KE(Z)
|
||||
KE(A)
|
||||
KE(B)
|
||||
KE(C)
|
||||
KE(D)
|
||||
KE(E)
|
||||
KE(F)
|
||||
KE(G)
|
||||
KE(H)
|
||||
KE(I)
|
||||
KE(J)
|
||||
KE(K)
|
||||
KE(L)
|
||||
KE(M)
|
||||
KE(N)
|
||||
KE(O)
|
||||
KE(P)
|
||||
KE(Q)
|
||||
KE(R)
|
||||
KE(S)
|
||||
KE(T)
|
||||
KE(U)
|
||||
KE(V)
|
||||
KE(W)
|
||||
KE(X)
|
||||
KE(Y)
|
||||
KE(Z)
|
||||
|
||||
KE(1)
|
||||
KE(2)
|
||||
KE(3)
|
||||
KE(4)
|
||||
KE(5)
|
||||
KE(6)
|
||||
KE(7)
|
||||
KE(8)
|
||||
KE(9)
|
||||
KE(0)
|
||||
KE(1)
|
||||
KE(2)
|
||||
KE(3)
|
||||
KE(4)
|
||||
KE(5)
|
||||
KE(6)
|
||||
KE(7)
|
||||
KE(8)
|
||||
KE(9)
|
||||
KE(0)
|
||||
|
||||
KE(RETURN)
|
||||
KE(ESCAPE)
|
||||
KE(BACKSPACE)
|
||||
KE(TAB)
|
||||
KE(SPACE)
|
||||
KE(RETURN)
|
||||
KE(ESCAPE)
|
||||
KE(BACKSPACE)
|
||||
KE(TAB)
|
||||
KE(SPACE)
|
||||
|
||||
KE(MINUS)
|
||||
KE(EQUALS)
|
||||
KE(LEFTBRACKET)
|
||||
KE(RIGHTBRACKET)
|
||||
KE(BACKSLASH)
|
||||
KE(NONUSHASH)
|
||||
KE(SEMICOLON)
|
||||
KE(APOSTROPHE)
|
||||
KE(GRAVE)
|
||||
KE(COMMA)
|
||||
KE(PERIOD)
|
||||
KE(SLASH)
|
||||
KE(MINUS)
|
||||
KE(EQUALS)
|
||||
KE(LEFTBRACKET)
|
||||
KE(RIGHTBRACKET)
|
||||
KE(BACKSLASH)
|
||||
KE(NONUSHASH)
|
||||
KE(SEMICOLON)
|
||||
KE(APOSTROPHE)
|
||||
KE(GRAVE)
|
||||
KE(COMMA)
|
||||
KE(PERIOD)
|
||||
KE(SLASH)
|
||||
|
||||
KE(CAPSLOCK)
|
||||
KE(CAPSLOCK)
|
||||
|
||||
KE(F1)
|
||||
KE(F2)
|
||||
KE(F3)
|
||||
KE(F4)
|
||||
KE(F5)
|
||||
KE(F6)
|
||||
KE(F7)
|
||||
KE(F8)
|
||||
KE(F9)
|
||||
KE(F10)
|
||||
KE(F11)
|
||||
KE(F12)
|
||||
KE(F1)
|
||||
KE(F2)
|
||||
KE(F3)
|
||||
KE(F4)
|
||||
KE(F5)
|
||||
KE(F6)
|
||||
KE(F7)
|
||||
KE(F8)
|
||||
KE(F9)
|
||||
KE(F10)
|
||||
KE(F11)
|
||||
KE(F12)
|
||||
|
||||
KE(PRINTSCREEN)
|
||||
KE(SCROLLLOCK)
|
||||
KE(PAUSE)
|
||||
KE(INSERT)
|
||||
KE(HOME)
|
||||
KE(PAGEUP)
|
||||
KE(DELETE)
|
||||
KE(END)
|
||||
KE(PAGEDOWN)
|
||||
KE(RIGHT)
|
||||
KE(LEFT)
|
||||
KE(DOWN)
|
||||
KE(UP)
|
||||
KE(PRINTSCREEN)
|
||||
KE(SCROLLLOCK)
|
||||
KE(PAUSE)
|
||||
KE(INSERT)
|
||||
KE(HOME)
|
||||
KE(PAGEUP)
|
||||
KE(DELETE)
|
||||
KE(END)
|
||||
KE(PAGEDOWN)
|
||||
KE(RIGHT)
|
||||
KE(LEFT)
|
||||
KE(DOWN)
|
||||
KE(UP)
|
||||
|
||||
KE(NUMLOCKCLEAR)
|
||||
KE(KP_DIVIDE)
|
||||
KE(KP_MULTIPLY)
|
||||
KE(KP_MINUS)
|
||||
KE(KP_PLUS)
|
||||
KE(KP_ENTER)
|
||||
KE(KP_1)
|
||||
KE(KP_2)
|
||||
KE(KP_3)
|
||||
KE(KP_4)
|
||||
KE(KP_5)
|
||||
KE(KP_6)
|
||||
KE(KP_7)
|
||||
KE(KP_8)
|
||||
KE(KP_9)
|
||||
KE(KP_0)
|
||||
KE(KP_PERIOD)
|
||||
KE(NUMLOCKCLEAR)
|
||||
KE(KP_DIVIDE)
|
||||
KE(KP_MULTIPLY)
|
||||
KE(KP_MINUS)
|
||||
KE(KP_PLUS)
|
||||
KE(KP_ENTER)
|
||||
KE(KP_1)
|
||||
KE(KP_2)
|
||||
KE(KP_3)
|
||||
KE(KP_4)
|
||||
KE(KP_5)
|
||||
KE(KP_6)
|
||||
KE(KP_7)
|
||||
KE(KP_8)
|
||||
KE(KP_9)
|
||||
KE(KP_0)
|
||||
KE(KP_PERIOD)
|
||||
|
||||
KE(NONUSBACKSLASH)
|
||||
KE(APPLICATION)
|
||||
KE(POWER)
|
||||
KE(KP_EQUALS)
|
||||
KE(F13)
|
||||
KE(F14)
|
||||
KE(F15)
|
||||
KE(F16)
|
||||
KE(F17)
|
||||
KE(F18)
|
||||
KE(F19)
|
||||
KE(F20)
|
||||
KE(F21)
|
||||
KE(F22)
|
||||
KE(F23)
|
||||
KE(F24)
|
||||
KE(EXECUTE)
|
||||
KE(HELP)
|
||||
KE(MENU)
|
||||
KE(SELECT)
|
||||
KE(STOP)
|
||||
KE(AGAIN)
|
||||
KE(UNDO)
|
||||
KE(CUT)
|
||||
KE(COPY)
|
||||
KE(PASTE)
|
||||
KE(FIND)
|
||||
KE(MUTE)
|
||||
KE(VOLUMEUP)
|
||||
KE(VOLUMEDOWN)
|
||||
KE(KP_COMMA)
|
||||
KE(KP_EQUALSAS400)
|
||||
KE(NONUSBACKSLASH)
|
||||
KE(APPLICATION)
|
||||
KE(POWER)
|
||||
KE(KP_EQUALS)
|
||||
KE(F13)
|
||||
KE(F14)
|
||||
KE(F15)
|
||||
KE(F16)
|
||||
KE(F17)
|
||||
KE(F18)
|
||||
KE(F19)
|
||||
KE(F20)
|
||||
KE(F21)
|
||||
KE(F22)
|
||||
KE(F23)
|
||||
KE(F24)
|
||||
KE(EXECUTE)
|
||||
KE(HELP)
|
||||
KE(MENU)
|
||||
KE(SELECT)
|
||||
KE(STOP)
|
||||
KE(AGAIN)
|
||||
KE(UNDO)
|
||||
KE(CUT)
|
||||
KE(COPY)
|
||||
KE(PASTE)
|
||||
KE(FIND)
|
||||
KE(MUTE)
|
||||
KE(VOLUMEUP)
|
||||
KE(VOLUMEDOWN)
|
||||
KE(KP_COMMA)
|
||||
KE(KP_EQUALSAS400)
|
||||
|
||||
KE(INTERNATIONAL1)
|
||||
KE(INTERNATIONAL2)
|
||||
KE(INTERNATIONAL3)
|
||||
KE(INTERNATIONAL4)
|
||||
KE(INTERNATIONAL5)
|
||||
KE(INTERNATIONAL6)
|
||||
KE(INTERNATIONAL7)
|
||||
KE(INTERNATIONAL8)
|
||||
KE(INTERNATIONAL9)
|
||||
KE(LANG1)
|
||||
KE(LANG2)
|
||||
KE(LANG3)
|
||||
KE(LANG4)
|
||||
KE(LANG5)
|
||||
KE(LANG6)
|
||||
KE(LANG7)
|
||||
KE(LANG8)
|
||||
KE(LANG9)
|
||||
KE(INTERNATIONAL1)
|
||||
KE(INTERNATIONAL2)
|
||||
KE(INTERNATIONAL3)
|
||||
KE(INTERNATIONAL4)
|
||||
KE(INTERNATIONAL5)
|
||||
KE(INTERNATIONAL6)
|
||||
KE(INTERNATIONAL7)
|
||||
KE(INTERNATIONAL8)
|
||||
KE(INTERNATIONAL9)
|
||||
KE(LANG1)
|
||||
KE(LANG2)
|
||||
KE(LANG3)
|
||||
KE(LANG4)
|
||||
KE(LANG5)
|
||||
KE(LANG6)
|
||||
KE(LANG7)
|
||||
KE(LANG8)
|
||||
KE(LANG9)
|
||||
|
||||
KE(ALTERASE)
|
||||
KE(SYSREQ)
|
||||
KE(CANCEL)
|
||||
KE(CLEAR)
|
||||
KE(PRIOR)
|
||||
KE(RETURN2)
|
||||
KE(SEPARATOR)
|
||||
KE(OUT)
|
||||
KE(OPER)
|
||||
KE(CLEARAGAIN)
|
||||
KE(CRSEL)
|
||||
KE(EXSEL)
|
||||
KE(ALTERASE)
|
||||
KE(SYSREQ)
|
||||
KE(CANCEL)
|
||||
KE(CLEAR)
|
||||
KE(PRIOR)
|
||||
KE(RETURN2)
|
||||
KE(SEPARATOR)
|
||||
KE(OUT)
|
||||
KE(OPER)
|
||||
KE(CLEARAGAIN)
|
||||
KE(CRSEL)
|
||||
KE(EXSEL)
|
||||
|
||||
KE(KP_00)
|
||||
KE(KP_000)
|
||||
KE(THOUSANDSSEPARATOR)
|
||||
KE(DECIMALSEPARATOR)
|
||||
KE(CURRENCYUNIT)
|
||||
KE(CURRENCYSUBUNIT)
|
||||
KE(KP_LEFTPAREN)
|
||||
KE(KP_RIGHTPAREN)
|
||||
KE(KP_LEFTBRACE)
|
||||
KE(KP_RIGHTBRACE)
|
||||
KE(KP_TAB)
|
||||
KE(KP_BACKSPACE)
|
||||
KE(KP_A)
|
||||
KE(KP_B)
|
||||
KE(KP_C)
|
||||
KE(KP_D)
|
||||
KE(KP_E)
|
||||
KE(KP_F)
|
||||
KE(KP_XOR)
|
||||
KE(KP_POWER)
|
||||
KE(KP_PERCENT)
|
||||
KE(KP_LESS)
|
||||
KE(KP_GREATER)
|
||||
KE(KP_AMPERSAND)
|
||||
KE(KP_DBLAMPERSAND)
|
||||
KE(KP_VERTICALBAR)
|
||||
KE(KP_DBLVERTICALBAR)
|
||||
KE(KP_COLON)
|
||||
KE(KP_HASH)
|
||||
KE(KP_SPACE)
|
||||
KE(KP_AT)
|
||||
KE(KP_EXCLAM)
|
||||
KE(KP_MEMSTORE)
|
||||
KE(KP_MEMRECALL)
|
||||
KE(KP_MEMCLEAR)
|
||||
KE(KP_MEMADD)
|
||||
KE(KP_MEMSUBTRACT)
|
||||
KE(KP_MEMMULTIPLY)
|
||||
KE(KP_MEMDIVIDE)
|
||||
KE(KP_PLUSMINUS)
|
||||
KE(KP_CLEAR)
|
||||
KE(KP_CLEARENTRY)
|
||||
KE(KP_BINARY)
|
||||
KE(KP_OCTAL)
|
||||
KE(KP_DECIMAL)
|
||||
KE(KP_HEXADECIMAL)
|
||||
KE(KP_00)
|
||||
KE(KP_000)
|
||||
KE(THOUSANDSSEPARATOR)
|
||||
KE(DECIMALSEPARATOR)
|
||||
KE(CURRENCYUNIT)
|
||||
KE(CURRENCYSUBUNIT)
|
||||
KE(KP_LEFTPAREN)
|
||||
KE(KP_RIGHTPAREN)
|
||||
KE(KP_LEFTBRACE)
|
||||
KE(KP_RIGHTBRACE)
|
||||
KE(KP_TAB)
|
||||
KE(KP_BACKSPACE)
|
||||
KE(KP_A)
|
||||
KE(KP_B)
|
||||
KE(KP_C)
|
||||
KE(KP_D)
|
||||
KE(KP_E)
|
||||
KE(KP_F)
|
||||
KE(KP_XOR)
|
||||
KE(KP_POWER)
|
||||
KE(KP_PERCENT)
|
||||
KE(KP_LESS)
|
||||
KE(KP_GREATER)
|
||||
KE(KP_AMPERSAND)
|
||||
KE(KP_DBLAMPERSAND)
|
||||
KE(KP_VERTICALBAR)
|
||||
KE(KP_DBLVERTICALBAR)
|
||||
KE(KP_COLON)
|
||||
KE(KP_HASH)
|
||||
KE(KP_SPACE)
|
||||
KE(KP_AT)
|
||||
KE(KP_EXCLAM)
|
||||
KE(KP_MEMSTORE)
|
||||
KE(KP_MEMRECALL)
|
||||
KE(KP_MEMCLEAR)
|
||||
KE(KP_MEMADD)
|
||||
KE(KP_MEMSUBTRACT)
|
||||
KE(KP_MEMMULTIPLY)
|
||||
KE(KP_MEMDIVIDE)
|
||||
KE(KP_PLUSMINUS)
|
||||
KE(KP_CLEAR)
|
||||
KE(KP_CLEARENTRY)
|
||||
KE(KP_BINARY)
|
||||
KE(KP_OCTAL)
|
||||
KE(KP_DECIMAL)
|
||||
KE(KP_HEXADECIMAL)
|
||||
|
||||
KE(LCTRL)
|
||||
KE(LSHIFT)
|
||||
KE(LALT)
|
||||
KE(LGUI)
|
||||
KE(RCTRL)
|
||||
KE(RSHIFT)
|
||||
KE(RALT)
|
||||
KE(RGUI)
|
||||
KE(LCTRL)
|
||||
KE(LSHIFT)
|
||||
KE(LALT)
|
||||
KE(LGUI)
|
||||
KE(RCTRL)
|
||||
KE(RSHIFT)
|
||||
KE(RALT)
|
||||
KE(RGUI)
|
||||
|
||||
KE(MODE)
|
||||
KE(AUDIONEXT)
|
||||
KE(AUDIOPREV)
|
||||
KE(AUDIOSTOP)
|
||||
KE(AUDIOPLAY)
|
||||
KE(AUDIOMUTE)
|
||||
KE(MEDIASELECT)
|
||||
KE(WWW)
|
||||
KE(MAIL)
|
||||
KE(CALCULATOR)
|
||||
KE(COMPUTER)
|
||||
KE(AC_SEARCH)
|
||||
KE(AC_HOME)
|
||||
KE(AC_BACK)
|
||||
KE(AC_FORWARD)
|
||||
KE(AC_STOP)
|
||||
KE(AC_REFRESH)
|
||||
KE(AC_BOOKMARKS)
|
||||
KE(MODE)
|
||||
KE(AUDIONEXT)
|
||||
KE(AUDIOPREV)
|
||||
KE(AUDIOSTOP)
|
||||
KE(AUDIOPLAY)
|
||||
KE(AUDIOMUTE)
|
||||
KE(MEDIASELECT)
|
||||
KE(WWW)
|
||||
KE(MAIL)
|
||||
KE(CALCULATOR)
|
||||
KE(COMPUTER)
|
||||
KE(AC_SEARCH)
|
||||
KE(AC_HOME)
|
||||
KE(AC_BACK)
|
||||
KE(AC_FORWARD)
|
||||
KE(AC_STOP)
|
||||
KE(AC_REFRESH)
|
||||
KE(AC_BOOKMARKS)
|
||||
|
||||
KE(BRIGHTNESSDOWN)
|
||||
KE(BRIGHTNESSUP)
|
||||
KE(DISPLAYSWITCH)
|
||||
KE(KBDILLUMTOGGLE)
|
||||
KE(KBDILLUMDOWN)
|
||||
KE(KBDILLUMUP)
|
||||
KE(EJECT)
|
||||
KE(SLEEP)
|
||||
KE(BRIGHTNESSDOWN)
|
||||
KE(BRIGHTNESSUP)
|
||||
KE(DISPLAYSWITCH)
|
||||
KE(KBDILLUMTOGGLE)
|
||||
KE(KBDILLUMDOWN)
|
||||
KE(KBDILLUMUP)
|
||||
KE(EJECT)
|
||||
KE(SLEEP)
|
||||
|
||||
KE(APP1)
|
||||
KE(APP2)
|
||||
KE(APP1)
|
||||
KE(APP2)
|
||||
};
|
||||
|
||||
static char const *lookup_key_name(int kc)
|
||||
|
Loading…
Reference in New Issue
Block a user