Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ScanTarget subsystem improvements #1242

Open
TomHarte opened this issue Dec 4, 2023 · 0 comments
Open

ScanTarget subsystem improvements #1242

TomHarte opened this issue Dec 4, 2023 · 0 comments

Comments

@TomHarte
Copy link
Owner

TomHarte commented Dec 4, 2023

A bit of a megaticket, but issues to address if reopening that box:

  • a ScanTarget should be able to request true horizontals if being given CRT-style input;
  • support for a new pixel format as suggested below would open the door for 1990s-era LCD-type machines such as the Lynx, Game Gear, etc;
  • new modal fields of a tint colour and persistence would greatly broaden the range of old displays that can be modelled without having to load context improperly into pixels. Possibly also helpful to specify CRT vs LCD and/or something about the underlying grid — is it true per-pixel LCD, possibly with only some small proportion of each pixel box being the actual pixel, or else is this more of a shadow mask-type situation?

Suggested new pixel format:

One byte per pixel; two bits for channel plus six for intensity. Channel is any of red, green or blue. White is a potential fourth value, but I'm not sure it's valuable given that Luminance8 is already specified and I'm unaware of any vintage machines with an RGBW LCD.

The intention is that machines with an LCD with visible subpixels can tag samples based on which subpixel they fall within. I think this is easiest handled in a per-pixel form rather than trying to provide it as out-of-band modal state due to irregularities like the PC Engine GT and Game Gear when running Master System titles, both of which use less than a whole triplet per pixel.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant