Archived

This topic is now archived and is closed to further replies.

Daishim

Simple Graphics mode

Recommended Posts

I''m looking for a super simple graphics mode to use while learning C++. I''m just changing languages so I''ve got the concepts but I would like to use a simple graphics mode while learning C++ to allow for expanding the C++ knowledge to graphics/games while learning. I''ve looked into OpenGL but it''s a little too complex right now. I''m using MSVC++ and Borland Turbo C++ so new or old, any simple mode will do.

Share this post


Link to post
Share on other sites
There aren't really any simple graphics modes (except for mode 13h, I suppose), but there are numerous libraries which make doing graphics much easier. I would recommend Allegro.
~~~~~~~~~~
Martee

Edited by - Martee on June 27, 2001 7:06:18 PM

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
I would suggest mode 13h, its great for learning c++ in console mode. I am not sure what OS your using, but with a few simple BIOS interrupts you have access to writing to the vga memory.. You dont need any knowledge on interrupts, just a tad bit on computer memory. check out this site ->
http://www.brackeen.com/home/vga/

Also you can go to unchained mode, which is a bit more complex, but you get higher resolutions. If you need source to any simple games written in it, email me hell_barbarian@yahoo.com

Share this post


Link to post
Share on other sites
Mode 13h under DOS is the easiest in my opinion. You should be able to use it with your Turbo C++ compiler. Use assembly language to setup the videomode.

IIRC:
      
asm {
mov ax, 0x13
int 0x10
};


It's been years since I used it, so I might remember incorrectly. After you have setup mode 13h you have a 320x200x8 framebuffer linearly arranged in the segment 0xA000.

ex.
        
void putpixel(unsigned int x, unsigned int y, unsigned char color)
{
asm {
mov es, 0xA000
mov ax, y
mov di, ax
shl ax, 8
shl di, 6
add di, ax
add di, x
mov al, color
stosb
};
};

(Remember, It's been years since I actually used this stuff, and since I wrote the above off the top of my head it's probably incorrect )

Etc etc....

I can recommend learning SDL (under Windows), or some other simple API though. Using it is very straightforward and you don't need to bother about setting up a window etc. Of course eventually you should learn to do it "by hand" (I mean setting up your own window and such), and some might argue that you should begin by doing stuff the hard way to really learn how it works "under the hood".... But do whatever feels good for you

Edited by - Dactylos on June 27, 2001 7:10:20 PM

Share this post


Link to post
Share on other sites