Simple Graphics mode
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.
I know only that which I know, but I do not know what I know.
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
~~~~~~~~~~
Martee
Edited by - Martee on June 27, 2001 7:06:18 PM
ReactOS - an Open-source operating system compatible with Windows NT apps and drivers
June 27, 2001 06:06 PM
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
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
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:
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.
(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
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
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement