3H-GDC m.V: Something Special (winner: BeanDog)

Started by
213 comments, last by capn_midnight 18 years, 1 month ago
And I just ran into another snag - my technique will produce completely different results if you are running an LCD screen that is stretching the image. (CRT monitors are just fine since they never "scale" the image to another resolution)

LCD running text mode at it's native 640x400 resolution (no LCD scaling)



LCD running text mode scaled to the screens native 1024x768




(And yes, these had to be taken with a digital camera. Unless DOSBox can perfectly emulate the VGA standard [even things that wouldn't seem important for a software emulator], there is no way to make a digital screenshot of what you are seeing)
Advertisement
Quote:Original post by Michalson
I can't get the timing to work properly on my 6400 color (no dithering) mode 3 text mode, so at the moment I'm not in.
How does text mode support 6400 colours without dithering?!

scgrn:Didn't you enter last time?
I'd like to submit a basic frame app working with the windows console buffer, but i'm having some problems.

Since i've never used the windows console before i took several parts from other code i found. I got a screen buffer working but i can't eliminate some flickering in windowed mode.

I have a CHAR_INFO array for the characters and every frame i'm using WriteConsoleOutput to copy the complete array to the console buffer. There is some flickering although i'm writing the same content again and again.

Basically i'd like to

A) approve the framework for the GDC contest (yes, there is a movement sample inside, but that's just for showing how to implement it)

B) eliminate the flicker

Anybody could take a peek and fix the flickering problem?

The framework can be found here. It contains a VS 2003 solution file together with the source code and a binary.

The base class is from Apoch but modified to use the array. There're still some old functions inside that will be removed yet.

Fruny: Ftagn! Ia! Ia! std::time_put_byname! Mglui naflftagn std::codecvt eY'ha-nthlei!,char,mbstate_t>

Good idea to offer up your framework - you are saying we can use it once it's fixed, right?

I'm approaching from a D3D angle and am currently throwing together a small framework (well a class really) which I might release in a day or two if anybody cares - although if you're going to use someone else's base I reckon you'd choose a well-known library like the ones capn_midnight suggested, instead of my ropey attempt! I'm only doing it because I think the framework is likely to be useful for future application.
Quote:Original post by Endurion
B) eliminate the flicker
Press Alt+Enter? Fullscreen mode should eliminate flicker...

[Website] [+++ Divide By Cucumber Error. Please Reinstall Universe And Reboot +++]

Yeah, the framework would be for all to use for the contest (and beyond if you wish).

benryves: I've read through your pages as well. I know the flicker is gone with fullscreen (pressing Alt-Enter), but seriously, this got to be possible in windowed mode as well. After all it's an emulated display.

Fruny: Ftagn! Ia! Ia! std::time_put_byname! Mglui naflftagn std::codecvt eY'ha-nthlei!,char,mbstate_t>

Quote:Original post by Endurion
Yeah, the framework would be for all to use for the contest (and beyond if you wish).

benryves: I've read through your pages as well. I know the flicker is gone with fullscreen (pressing Alt-Enter), but seriously, this got to be possible in windowed mode as well. After all it's an emulated display.


It's not a very well emulated display - or rather it was designed to be a scrolling console for plain text that uses little CPU, not an accurate emulation of VGA text mode [for example palette and character font changes don't affect the windowed console].
Well, i cleaned up the framework and added nice color enums. I'm not going to enhance this framework anymore, but i'd like to have it certified for the contest.

It contains functions to set a character/color, writing a text string and provides (very) basic input facilities.

Everybody is free to use it for the contest, so you can start at the game content asap.

It is Windows based, and comes with a VS 2003 solution file. The link is the same as before: Click me!

Have fun!

Fruny: Ftagn! Ia! Ia! std::time_put_byname! Mglui naflftagn std::codecvt eY'ha-nthlei!,char,mbstate_t>

Quote:Original post by Endurion
Well, i cleaned up the framework and added nice color enums. I'm not going to enhance this framework anymore, but i'd like to have it certified for the contest.

It contains functions to set a character/color, writing a text string and provides (very) basic input facilities.

Everybody is free to use it for the contest, so you can start at the game content asap.

It is Windows based, and comes with a VS 2003 solution file. The link is the same as before: Click me!

Have fun!


looks good, thanks for the generosity.

In your example app you didn't have any different foreground colors. Is this a limitation of your framework, or just an oversight for the example?

[Formerly "capn_midnight". See some of my projects. Find me on twitter tumblr G+ Github.]

Just an oversight of the example actually. Pass in the combined enums for the bg color and fg color.

Upon inspection i found that i managed to take the wrong defines for the color enums. I fixed the enums and also added the samples for the other display variants.

URL stays the same: Here.

Sorry for the inconvenience.

Fruny: Ftagn! Ia! Ia! std::time_put_byname! Mglui naflftagn std::codecvt eY'ha-nthlei!,char,mbstate_t>

This topic is closed to new replies.

Advertisement