Super High Resolution
graphics on an Apple //e
While programming the Carte Blanche card in my Apple IIgs to display super hires graphics (SHR), it occurred to me that there didn’t seem to be any reason that this function couldn’t be added to an Apple //e. In fact I wonder if the designers at Apple Computer originally intended to add SHR to a //e. On an Apple IIgs all the video data resides in bank 01 which is the same as the auxiliary bank on a //e. This is true even though the IIgs supports up to 8 MB of RAM. Of course a //e doesn’t have the circuitry to handle SHR but if you add a Carte Blanche card you can add your own circuitry. The 12 bit color mod is necessary as well so that all the SHR colors are available. So basically I took the SHR code I’d written for the IIgs and with a few minor changes made it work in my Apple //e.
Why would anyone want SHR on their //e? After all there are few, if any, 8 bit programs designed to work with SHR. Here are three reasons:
1. If you enjoy programming you can write your own programs that use SHR. There won’t be many others to share the programs with but since the Apple //e SHR has been implemented to be nearly the same as the Apple IIgs SHR, a program written for the //e should also work in a IIgs.
2. View pictures created for the IIgs. I see this as the most likely reason most people would want SHR.
3. Its just plain neat seeing your Apple //e doing Super High Resolution Graphics. Here are some pictures taken of Super High Resolution graphics screen images on an old 17" Dell LCD monitor, model E172FPt connected to my Apple //e. My camera doesn't do them justice. They are much better live. Click on each to enlarge.
The resulting bitstream is a big departure from the from original JAT bitstream and my earlier //e modifications. It resembles my IIgs bitstream version 9.20 in that it has all the JAT functions removed except the VGA video. My previous JAT bitstream modification had the ability to set the colors of text, background & border. That ability remains with the added feature that a program can now read the softswitch $C022 for text & background color and $C034 for the border (before you could only write to them). Text, both 40 & 80 column and LORES graphics remain the same and DHR is the same as on the IIgs bitstream (which isn't very good). I have added a IIgs type setting to allow Grayscale DHR for what its worth. I have slightly modified the HIRES graphics to output every color pixel in a line instead of every other pixel.
The main video difference of course is the addition of SHR (Super High Resolution) graphics. From the user's point of view SHR functions in virtually the same way as on an Apple IIgs. The video memory area is the same and controlled by softswitch $C029. 640 and 320 horizontal resolution modes are the same although the number of lines is doubled to 400. Fill mode is there as well. At this time the only SHR thing not supported is scan line interrupts. Video modes supported:
|TEXT 40 Column||Super High Resolution Graphics 640 - 4 colors per line|
|TEXT 80 Column||Super High Resolution Graphics 320 - 16 colors per line|
|Low Resolution Graphics||Super High Resolution Graphics 320 - 15 colors per line with color Fill|
|Double Low Resolution Graphics 1|
|High Resolution Graphics|
|Double High Resolution Graphics||Double High Resolution - Grayscale|
|Mixed mode (Graphics & Text)|
1 has not been tested.
Another addition is the ability to save settings and retrieve them on startup. This is similar to the battery RAM on an Apple IIgs only without the need for a battery. With this bitstream version there are four settings that can be saved; Text color, background color, border color & DHR Grayscale (enable/disable). An Applesoft BASIC control (CBCONFIG) is included to set and/or save these settings.
Finally, the ability to flash the Carte Blanche onboard non-volatile RAM chip from the Apple //e is embedded in the bitstream. This is needed because the original JAT flashing function has been removed. An Applesoft BASIC program (FASTFLASH) is included to handle the Apple //e end of the procedure.
An 128K Apple //e (enhanced).
|A Carte Blanche card (250 version).|
|The 12 bit color mod (cable or board). 2|
|A VGA monitor.|
|An Apple //e storage device large enough to hold the 170K bitstream file. 3|
|A way to get the bitstream and related utilities into the storage device.|
|2 SHR will work with the Carte Blanche 6 bit color but you will only have 64 colors.|
|3 Only needed if you don't have another way to program the Carte Blanche card (JTAG).|
The next page has general information on Super High Resolution graphics.