Commit Graph

19 Commits

Author SHA1 Message Date
feos c5807662b6 uae: a game requiring empty input port found
see #4213
2025-02-08 14:46:21 +03:00
feos 74fcbc28eb uae: include more scanlines into image
fixes #4204

RANT TIME

visible area is largely nonsense when it comes to CRT TVs, because they may cover different amounts of the screen based on model, and you can adjust some of them also based on model to show more or less of it.

4:3 aspect ratio is also somewhat nonsense because TVs don't automatically rescale your video input to the entire screen like modern computers do. they just stretch or shrink it based on pixel frequency of the input and how it relates to whatever the given TV is configured to.

Rec601 was created in order to somewhat standardize this but it only contained RECOMMENDATIONS (hence the name) on how to digitize analog video, not how analog devices should be configured. so a lot of TVs looked different from what it would be digitized to based on this spec.

in gaming it's a common misconception that console output is meant to be resized to 4:3 DAR of the TV. in reality it's stretched according to PAR - pixel shape which comes from differences between color frequency of the input and standard NTSC or PAL color frequency.

if the console updates color more often than the standard, analog signal with higher pixel density will be put on the screen as is, and pixel will look "squished", sometimes up to 2x for 512px resolution modes (PS1). if the console updates color rarer, pixels will look stretched (A2600).

Amiga PAL mode has 1:1 PAR, no stretching is needed, so whatever aspect we're outputting will just go to encodes as is. NTSC Amiga PAR is 6:7, so we're shrinking a bit in encodes and when hawk is configured to device aspect.

this all means that it doesn't matter how many pixels we take of the rendered image, all we care about is stretching it to proper PAR. whether it contains overscan only affects fullscreen because extra blank area means less of useful data. and since some exceptional games decide to render AT THE VERY BOTTOM there's little to no harm in showing all 574 rendered scanlines. who hates it and wants 568 can crop it, but I don't expect anyone to care (or even notice).

so while nominal internal res for Amiga is 576 and canonical UAE default is 568 (tho it lets you adjust visible area and we don't), I think we can safely output our heretical number at all times.
2025-02-06 19:43:32 +03:00
feos 18078c8764 rename puae to uae
while libretro initially ported original puae (which is long dead), they switched to just pulling updates from winuae every once in a while (and renamed to libretro-uae), because it's still active and is kinda considered golden standard these days
2024-12-14 19:01:31 +03:00
feos 48913b4653 puae: led light 2024-12-09 20:35:24 +03:00
feos 2cd22490e9 uae: print slot/drive contents (#4138)
fix wrong const in the core
2024-12-08 14:54:27 +03:00
feos 118e2876a4 puae: fix framerate and resolutions, cleanup
todo: av dumper dies in ntsc mode on frame 11...
2024-11-20 22:10:56 +03:00
feos 0818e97fee puae: it's unclear if mouse_deltanoreset helps with anything currently
it seems to always be true in winuae...

also cleaned up our fork a bit
2024-11-19 21:31:26 +03:00
feos ef307c1e69 puae input: fixed? 2024-11-16 22:04:52 +03:00
feos 9e07c85027 wip2 2024-11-11 00:16:31 +03:00
feos ea5f3f601c wip 2024-11-10 23:22:32 +03:00
feos f1fa82702e what the fuck
what the fuck

if I send my ports to puae's 0 and 1, both go to port 0
if I send my ports to puae's 1 and 2, they go to ports 1 and 2
if I send both of my ports to puae's 0, they go to ports 0 and 1

what the fuck
2024-11-10 15:53:59 +03:00
feos 4c3b59c39c puae: fix something 2024-11-08 20:28:53 +03:00
feos a2d401d670 puae: wip 2024-11-07 23:25:50 +03:00
feos 869bef4989 puae: controller config wip 2024-11-06 20:56:22 +03:00
feos 90287b3396 puae: support region changes
by user at the start and by the game on the fly
todo: ntsc par (pal par is 1:1)
2024-10-25 01:17:52 +03:00
feos 737e9ca73b puae: writable memory 2024-10-07 19:26:19 +03:00
feos d3c560b0df uae: eject when inserting
less repeated magic
2024-06-14 10:58:42 +03:00
feos a01a7bb61e uae: swapper 2024-06-13 23:13:42 +03:00
feos 472f881f24
PUAE core (#3941)
* puae wbx submodule
export symbols
load core
firmware and command line args to core
input
settings
2024-06-11 16:02:38 +03:00