VOGONS


First post, by BlueSkullKey

User metadata
Rank Newbie
Rank
Newbie

Hello.
Please tell me if there are any standard ways in any emulators to emulate a monochrome monitor. 😕 😅
I've mostly used DOSBox (will setting machine to hercules in .conf do it?) and briefly PCem, but am interested in this in any PC emulators, especially ones like later.

Also, as I see people trying to achieve CRT looks in emulation, I wonder if anyone tried to do something like that, which would imitate the old notebook computers display looks? Those greyscale TFT LCDs and DSTNs and such. They've had a very peculiar looks, I think, maybe because of backlight, I don't know. Like these
https://imgur.com/a/80AScua
https://imgur.com/a/dkXW1jj
https://imgur.com/a/ALLNPK7
https://imgur.com/a/1IgTqGZ

Reply 1 of 11, by superfury

User metadata
Rank l33t++
Rank
l33t++

UniPCemu also supports monochrome monitors using MDA and VGA palettes. Simply set it to either device and set the black/white setting to either amber, green or white(in the video settings). Although the setting won't have any effect on CGA and SVGA modes(since they don't use any color palettes).

Although UniPCemu doesn't support any shaders or the like, like Dosbox does.

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io

Reply 2 of 11, by leileilol

User metadata
Rank l33t++
Rank
l33t++

I tried to hack up a Compaq mono LCD shader for PCem once in 2017. It was just a rough color gradient blend + drop shadow shader. It hadn't looked right because PCem doesn't emulate many laptop video chips that do 640-wide text on VGA and etc, and I didn't hack in the shade reduction

(I would upload a filtered shot but that'd be a 900kb png, so here's an aliasy shot)

Attachments

  • sharrier.png
    Filename
    sharrier.png
    File size
    198.08 KiB
    Views
    2148 views
    File license
    Fair use/fair dealing exception

apsosig.png
long live PCem

Reply 4 of 11, by BlueSkullKey

User metadata
Rank Newbie
Rank
Newbie

superfury
It's awesome that it has those settings. Sadly I couldn't try them out yet, because I can't get the emulator to work for some reason.
First I couldn't quite figure out ROM filenames (is BIOSROM.BIN right?), it would be better if there was a table with them somewhere in your wiki, because I don't think filenames for video ROMs are mentioned anywhere there.
But then I just get a black screen with access to settings, if I set it to show CPU speed, the speed changes sometimes, but that's all. I've tried various ROMs, tried to use internal ROMs, tried changing different settings, all the same. It's 64-bit version on W10. Either I miss something obvious, or something goes wrong in a weird way on my system.

leileilol
Nice. At least makes me think that it's possible. Too bad I don't know much about shaders yet.

Mr_Blastman
It's close, but not exactly there. Maybe it's hard to judge the ghosting thing by video though, seems too little 🤣 . There were also several types of those displays, and they've had it to a different extent. I mostly remember the mouse pointer having a trail, and it was Ok to play some DOS platformers on my notebook with greyscale screen, while on others picture in those could become seriously blurry. Well one of their main uses was something like MS Office 4 rather than games probably 😀 Notebooks like these
https://www.youtube.com/watch?v=j6AjBX-xOgw
https://www.youtube.com/watch?v=JzfIzx4ofpo
https://www.youtube.com/watch?v=vETjEH0Vo9I
https://youtu.be/rptMKmN7ljw?t=3m39s

Reply 5 of 11, by superfury

User metadata
Rank l33t++
Rank
l33t++

@BlueSkullKey: I've placed some information about the ROMs to place in the ROM subdirectory on the Settings menu page, https://bitbucket.org/superfury/unipcemu/wiki … Settings%20menu .

Under Advanced menu, for the option Boot with BIOS ROMS it lists the filename structure for normal BIOS ROMs(the machine's main BIOS ROM at the end of the memory).

I've added the video ROM information as a seperate section directly under that.

Now it lists all possible BIOS and Option ROMs that UniPCemu supports.

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io

Reply 6 of 11, by Mr_Blastman

User metadata
Rank Member
Rank
Member
BlueSkullKey wrote:

Funny enough, that is the exact laptop I had for college. 😀 I remember it well.

I think there's a way to increase the ghosting in the shader I made a video of by tweaking a few things. Unfortunately I'm not a shader expert, so it would be through trial and error.

Reply 8 of 11, by Xfing

User metadata
Rank Newbie
Rank
Newbie

I'm also interested in emulating grayscale, but with the particular flavor of Samtron SM-470. It was not perfect monochrome - much warmer and sicklier, and it rendered dark blues, reds and purples as black. Don't think exact specs of the display are still available online, much less an emulation of it 🙁

Reply 9 of 11, by Jo22

User metadata
Rank l33t++
Rank
l33t++

I'm interested, too. I can still fondly remember my papa's old 486 notebook with that grayscale screen.
Not sure how many shades it had (64 ?), since I cannot find any meaningful specs to that model (noname product ?).
In case you wonder, I mentioned it in another thread a while ago. Back in the 90s, this was about my first contact with a flat screen monitor I think.
What I loved was also the slow response time, too, this soft kind of "fading away". It made the notebook look graceful and professional.
Maybe this part (sort of motion blur) could be emulated, too ? 😀

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 10 of 11, by superfury

User metadata
Rank l33t++
Rank
l33t++

Slightly related: I've just added some changes to UniPCemu's video card emulation. Now all cards(thus now including 32K/64K color modes and CGA also convert to b/w(as specified in the settings) as 256-color b/w shades) support the b/w setting for their rendering.

The update is in the repository (but not released yet). So if you can compile it yourself it'll be available right away. Otherwise, it'll be in the next emulator update.

Edit: Just made a few optimizations(besides adding GPL license). Now, b/w are handled a bit optimized using the lookup tables with less code. The VGA 256-color palette is precalculated in b/w as needed, all other modes(CGA/MDA/32K/64K) perform conversion using a function(one of two: one that performs b/w conversion using the currently selected(precalculated) pointer to the used b/w lookup table(in one of the gretscales), the other simply returns the input value(color mode)).
Thus a fast b/w conversion and color mode(b/w adding the cost of 3 byte sum(r+g+b) and a lookup table from a pointer to the precalc table used(either white,green or amber lookup tables)) is archieved now.

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io

Reply 11 of 11, by superfury

User metadata
Rank l33t++
Rank
l33t++

I've just adjusted the grayscale to use conversion of weighted RGB to greyscale conversion. It now weighs the R,G and B as follows:
Red: 0.2126
Green: 0.7152
Blue: 0.0722

The old method essentially had all set to 1.0 and finally dividing by 3(therefore being a simple ADD and DIV). The ADD itself is weighted as seen above now, so the input R,G,B are weighted by multiplying by the RGB factors above, then added together for the greyscale R, G and B value.

Is that correct behaviour? Or are other factors supposed to be used when emulating a monitor? It's now using the Luma method (See https://en.wikipedia.org/wiki/Luma_%28video%29 and http://www.tannerhelland.com/3643/grayscale-i … -algorithm-vb6/ ).

In all emulated cases, said grayscale conversion is applied to the rendered pixel when rendering it(using some greyscale precalc tables), except with the VGA 256-color palette, which is precalculated(to speed up DAC operations).

Author of the UniPCemu emulator.
UniPCemu Git repository
UniPCemu for Android, Windows, PSP, Vita and Switch on itch.io