Resurrected Entertainment

Archive for March, 2008

TheDraw for DOS

March 10, 2008

There are two ways to display graphics in DOS. The first involves getting out of text mode and setting the desired graphics mode and then drawing pixels on the screen via the BIOS or writing directly to video memory; the second method involves drawing with the set of ASCII or extended ASCII characters. You can also make use of ANSI escape sequences to control the cursor, display coloured or blinking text, etc. DOS requires an ANSI driver in order to translate these escape sequences. These character codes are non-intuitive and look something like this: ESC[=5;7h. I swear my cat coughed up a fur ball which looked exactly like that the other day.

The set of extended ASCII characters provides an easy way to draw connected lines within the grid of displayable characters. This grid changes in size depending on the video mode set. With the default video mode in DOS, the dimensions of this grid is usually 80 characters wide by 25 characters high and covers the entire screen. Naturally, these characters can be connected to form anything from boxes to mazes. It’s how all those menus and dialogs are drawn when using a program like QBasic.

TheDRAW is a program which allows you to paint a picture using a variety of special characters. It’s not like painting individual pixels, you are limited by the set of characters available. However, this hasn’t stopped ASCII artists from creating fantastic content. The most stunning examples I found were on Bulletin Board Systems which used them to attract new and repeat visitors alike. The ANSI art found on those systems were often themed according to design of the on-line system or the whim of the system operator. Using TheDRAW, these pictures could be exported as ANSI-compliant or ASCII text files, or as header files to be used in other programming languages. There are a number of small tools available for translating these files into other formats used by other programming languages.

ANSI art drawn using the TheDRAW

Many of my programs in QuickBasic took on a more professional and uniform look because of this spectacular drawing tool. I still find it the best tool available for doing this sort of work in DOS, although I’m sure many of you may prefer other programs.

When I began to write software using The C Programming Language, I used TheDRAW to create a title screen in a number of small programs (the concept of a splash screen hadn’t been introduced yet). Although most dialogs and windows I used were crafted in code using a custom built user interface library, the more complex dialogs were created using this application. To allow for input or interaction, the fields were marked by a special character, followed by a small series of alpha-numeric characters. These markers would be found by the interface library and the characters following the marker would correspond to a header file which linked the “names” to constants and then to user interface controls and data structures.

The output from TheDRAW was compressed and archived in a separate resource file to keep them from being easily pillaged by unworthy scavengers. I’m not an artist so it may have been overkill.

Portable Computer Console

March 9, 2008

AcerPower 1000Computers like the Atari 800, Commodore 64, or Amiga 500 share a special place on my gaming mantle. The specialized sound and video hardware can make all the difference when experiencing old and new games alike. However, there are times when they really begin to show their age. Of course, being old is never a problem here, but it is when you’re trying to mesh the old with the new. Take the Atari 2600 console, for example. I just recently installed a nice little hardware upgrade which provides the console with the technology to output a composite or s-video signal. The composite signal looks good on a normal television; the colours are clear and sharp and the signal is strong and healthy. When I  plug the cable into my high-definition television, suddenly things start to go very wrong.This doesn’t necessairily mean it’s the console’s fault or a poorly installed hardware mod. In this case, it’s probably something the television is doing. Most high-definition televisions have electronics which pre-process the video signal before it is sent to the display. These processes, or filters, can help clean up the signal or enhance it to make it look good on your high-definition screen. The hardware is normally tuned to your specific display, so the number and quality of the filters can vary from television to television. One of the downsides to this technology can be increased blurring, shifting, or muted color when you’re trying to view a low-definition signal, or a signal that the hardware deems to be unclean or poorly formed. The filters kick in to help fix the problem but it really only serves to exacerbate the situation. Some of the filters seem to designed for higher resolutions, and only serve to degrade the visual quality of the lower-definition signal coming from your console.

Wouldn’t it be nice to have crisp, clean, beautiful colours shown on your high-definition television? Of course it would, and there are options available to you. One option is to support the services which provide these games to you on your high-definition console. The Nintendo Wii and Microsoft’s Xbox 360 both provide on-line shops for you to buy these titles. However, when compared to the sheer number of classic games available, the companies simply do not have the money, desire, or the ability to offer anything more than the most popular titles for the most popular consoles. Sometimes I like to play games which will never be discussed in the forums, and I would bet one of my cats that these titles will never see the light of day through these services. It’s not a case of simply choosing one over the other; I support these services whenever I see a title I would enjoy playing, but the release cycles are too few to satisfy my gaming needs.

The solution for me was the personal computer and hardware emulation. I had specific requirements for the physical size, number of available ports, and driver compatibility. Those were the three biggies. I could ramble on about the time I spent searching and testing different machines, but I won’t bore you with that. No, you’re reading this blog for results. The machine I chose to go with is the AcerPower 1000 computer. It’s smaller than your average DvD player, performs well using under low power consumption, and runs very quietly. It also  has oodles of USB ports for lot’s of expansion possibilities. I needed the machine to support at least two joysticks (along with the USB keyboard and mouse), and I wanted those ports easily accessible. The AcerPower has four high-speed ports right in the front of the machine which was perfect for my needs. It also has 3D support using an nVidia GeForce 6150 chipset and full environmental audio; I tested the graphics chipset with the Ion Storm’s  Deus Ex and it ran very well at 1024×768. So long as the software can support one of your television’s video modes, everything should work out alright.