improved resolution algorithm.

uses rounds to nearest integer of 4:3 aspect ratio.
This commit is contained in:
Kelvin Sherlock 2023-11-13 22:29:22 -05:00
parent 3f05793466
commit cbf3fd5a34
51 changed files with 89 additions and 79 deletions

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1024</integer>
<integer>1728</integer>
<integer>864</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1024</integer>
<integer>1728</integer>
<integer>864</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1280</integer>
<integer>2048</integer>
<integer>1024</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1024</integer>
<integer>1536</integer>
<integer>768</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1024</integer>
<integer>1536</integer>
<integer>768</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1280</integer>
<integer>2048</integer>
<integer>1024</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1280</integer>
<integer>2048</integer>
<integer>1024</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1280</integer>
<integer>2048</integer>
<integer>1024</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1280</integer>
<integer>2048</integer>
<integer>1024</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1024</integer>
<integer>1536</integer>
<integer>768</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1280</integer>
<integer>2048</integer>
<integer>1024</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1024</integer>
<integer>1536</integer>
<integer>768</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1024</integer>
<integer>1536</integer>
<integer>768</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1280</integer>
<integer>2048</integer>
<integer>1024</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1280</integer>
<integer>2048</integer>
<integer>1024</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1280</integer>
<integer>2048</integer>
<integer>1024</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1184</integer>
<integer>1768</integer>
<integer>884</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1184</integer>
<integer>1768</integer>
<integer>884</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1184</integer>
<integer>1768</integer>
<integer>884</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1184</integer>
<integer>1768</integer>
<integer>884</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1184</integer>
<integer>1768</integer>
<integer>884</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1184</integer>
<integer>1768</integer>
<integer>884</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1184</integer>
<integer>1768</integer>
<integer>884</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1664</integer>
<integer>2496</integer>
<integer>1248</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1664</integer>
<integer>2496</integer>
<integer>1248</integer>
</array>
<key>slots</key>
<array>

View File

@ -569,12 +569,6 @@
<key>value</key>
<string>macqd610</string>
</dict>
<dict>
<key>description</key>
<string>Macintosh Quadra 630</string>
<key>value</key>
<string>macqd630</string>
</dict>
<dict>
<key>description</key>
<string>Macintosh Quadra 650</string>
@ -648,12 +642,6 @@
<key>value</key>
<string>maclc575</string>
</dict>
<dict>
<key>description</key>
<string>Macintosh LC/Performa 580</string>
<key>value</key>
<string>maclc580</string>
</dict>
<dict>
<key>description</key>
<string>Macintosh Centris 610</string>

View File

@ -569,12 +569,6 @@
<key>value</key>
<string>macqd610</string>
</dict>
<dict>
<key>description</key>
<string>Macintosh Quadra 630</string>
<key>value</key>
<string>macqd630</string>
</dict>
<dict>
<key>description</key>
<string>Macintosh Quadra 650</string>
@ -648,12 +642,6 @@
<key>value</key>
<string>maclc575</string>
</dict>
<dict>
<key>description</key>
<string>Macintosh LC/Performa 580</string>
<key>value</key>
<string>maclc580</string>
</dict>
<dict>
<key>description</key>
<string>Macintosh Centris 610</string>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1120</integer>
<integer>1560</integer>
<integer>780</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1280</integer>
<integer>2048</integer>
<integer>1024</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1280</integer>
<integer>2048</integer>
<integer>1024</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1024</integer>
<integer>1536</integer>
<integer>768</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1024</integer>
<integer>1536</integer>
<integer>768</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1152</integer>
<integer>1800</integer>
<integer>900</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1280</integer>
<integer>2048</integer>
<integer>1024</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1152</integer>
<integer>1800</integer>
<integer>900</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1152</integer>
<integer>1800</integer>
<integer>900</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1152</integer>
<integer>1800</integer>
<integer>900</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1152</integer>
<integer>1800</integer>
<integer>900</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1152</integer>
<integer>1800</integer>
<integer>900</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1600</integer>
<integer>2200</integer>
<integer>1100</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1152</integer>
<integer>1800</integer>
<integer>900</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1600</integer>
<integer>2200</integer>
<integer>1100</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1152</integer>
<integer>1800</integer>
<integer>900</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1152</integer>
<integer>1800</integer>
<integer>900</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1152</integer>
<integer>1800</integer>
<integer>900</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1152</integer>
<integer>1800</integer>
<integer>900</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1152</integer>
<integer>1800</integer>
<integer>900</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1152</integer>
<integer>1800</integer>
<integer>900</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>1152</integer>
<integer>1800</integer>
<integer>900</integer>
</array>
<key>slots</key>
<array>

View File

@ -12,7 +12,7 @@
<key>resolution</key>
<array>
<integer>800</integer>
<integer>960</integer>
<integer>480</integer>
</array>
<key>slots</key>
<array>

View File

@ -594,6 +594,46 @@ def file_changed(path, data):
return 'updated'
def find_machine_resolution(machine):
name = machine.get("cloneof")
if not name: name = machine.get("name")
# node = machine.find('display[@tag="screen"]')
node = machine.find('./display')
width = int(node.get("width"))
height = int(node.get("height"))
hscale = 1
wscale = 1
# mame height is often garbage.
# raster screens have a default aspect ratio of 4 : 3
# pre-calc something like that, but integer-based.
hscale = round((width * 3 / 4 ) / height)
if hscale < 1 : hscale = 1
return [width, height * hscale]
# if height * 2 < width:
# hscale = 2
# if name in (
# "apple1", "apple2", "apple2e", "apple2c", "apple2gs", "apple3",
# "las3000",
# "st", "ste", "tt030",
# "ceci", "cece", "cecg", "cecm", "cec2000", "zijini"):
# hscale = 2
#print('display:', node.get('tag'))
#hscale = 2
#if m[0:3] == "mac": hscale = 1
#return [int(node.get("width")), int(node.get("height")) * hscale]
devices = {}
@ -629,13 +669,7 @@ for m in machines:
data["media"] = find_machine_media(machine)
# node = machine.find('display[@tag="screen"]')
node = machine.find('./display')
#print('display:', node.get('tag'))
hscale = 2
if m[0:3] == "mac": hscale = 1
data["resolution"] = [int(node.get("width")), int(node.get("height")) * hscale]
data["resolution"] = find_machine_resolution(machine)
# submachines.clear()
# for x in root.findall("machine[@isdevice='yes']"):