Graphicsmode: Difference between revisions

From Color 64 BBS Wiki
Created page with "When a caller first logs on, the system determines what type of general terminal they are using with the "Backspace/DEL" test. Commodore graphics terminals send a CHR$(20) code when the caller hits the DEL key, while ANSI and ASCII callers will send a CHR$(8) or CHR$(127) code when they hit the backspace or delete keys. If they are using ANSI or ASCII, the system then asks the caller if their terminal supports ANSI graphics. If they answer "Y", then the computer will..."
 
No edit summary
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
When a caller first logs on, the system determines what type of general terminal they are using with the "Backspace/DEL" test.  Commodore graphics terminals send a CHR$(20) code when the caller hits the DEL key, while ANSI and ASCII callers will send a CHR$(8) or CHR$(127) code when they hit the backspace or delete keys.
{{DISPLAYTITLE:BBS Graphics Mode}}
[[bbs operation|BBS Operation]] - <strong>Graphics Mode</strong>


If they are using ANSI or ASCII, the system then asks the caller if their terminal supports ANSI graphics.  If they answer "Y", then the computer will make full use of ANSI color and graphics characters.  If they answer "N” then they will also be asked if their terminal requires line feeds to work correctly.  This is for ASCII terminals that may already attach a linefeed to each carriage return received.  
== Graphics Mode Design ==
When a caller first logs on, the system determines the type of terminal being used through the Backspace/DEL test. Commodore graphics terminals send a CHR$(20) code when the DEL key is pressed, while ANSI and ASCII terminals typically send CHR$(8) or CHR$(127).


<strong>Commodore Graphics Mode </strong>
If the caller is using ANSI or ASCII, the system will ask whether ANSI graphics are supported. If the caller answers "Y", full ANSI color and graphic translation will be enabled. If "N" is selected, the caller will then be asked whether their terminal requires line feeds appended to carriage returns. This accommodates ASCII terminals that automatically add line feeds.


Commodore graphics terminal programs can get the full effect of all the various color changes and graphics characters used in the BBS system.  This is primarily the reason this BBS system was named Color 64, because it was one of the first to fully support the new line of Commodore graphics term programs such as CCGMS.
=== Commodore Graphics Mode ===


Color 64 supports the background color change that was standardized in the early term programs. A background color change is achieved though the CTRL/B character; if a color is typed after a CTRL/B character, then the background will change to that color.  This does not function for Commodore 128 80 column term programs, because CTRL/B is used to turn on underlining.  Color 64 will allow you to print files specifically designed for the 80 column C128 screen because it will "pass through" the control characters used for underlining and flashing modes.  
Commodore graphics terminals experience the system as originally designed, with full PETSCII graphics and color control. This capability is the reason the system was named Color 64, as it was among the first BBS systems to fully support advanced Commodore terminal programs such as CCGMS.


<strong>ASCII Mode </strong>
Background color changes are supported using the CTRL/B sequence. When a color key is pressed immediately after CTRL/B, the background color changes accordingly. On Commodore 128 80-column terminals, CTRL/B enables underline mode instead, so background changes do not function the same way. Color 64 properly passes through 80-column control codes such as underline and flashing attributes when appropriate.


Color 64 will attempt the best translation possible when the caller is calling using a plain ASCII terminal program, although use of these programs is decreasing because of the greater availability of color terminal programs for Commodore and non-Commodore computer callers.  
The ASCII and ANSI translation routines are handled in part by machine language routines located beginning at memory area $C044+ (via calls to $FFD5).


All the Commodore graphics characters will be converted to a suitable substitution, and Color 64 will even consider the current uppercase/lowercase mode of the text screen.
=== ASCII Mode ===


{| class="wikitable
When a caller connects using a plain ASCII terminal, Color 64 performs the best possible character translation. PETSCII graphic characters are converted to readable ASCII equivalents, and the system respects the current uppercase/lowercase state of the display.
 
{| class="wikitable"
|-
|-
|+ASCII Conversion Example  
|+ASCII Conversion Example
! Commodore Graphics (PETSCII)
! Commodore Graphics (PETSCII)
! ASCII Translation by Color 64  
! ASCII Translation by Color 64
|-
|-
| [[File:petscii.jpeg|center|200px]]
| [[File:petscii.jpeg|center|200px]]
Line 25: Line 29:
|}
|}


<strong>ANSI Graphics Mode</strong>
=== ANSI Graphics Mode ===
ANSI callers should be quite satisfied with the conversion made by Color 64. Color 64 supports 15 ANSI colors (dark grey does not work on some ANSI terms, so it is translated to medium grey) and makes the best possible conversion of Commodore graphics characters.  
 
ANSI callers receive a high-quality conversion of Commodore graphics and color. Color 64 supports 15 ANSI foreground colors. Dark grey may not function properly on some ANSI terminals and is therefore translated to medium grey when necessary.


{| class="wikitable
{| class="wikitable"
|-
|-
|+ANSI Conversion Example  
|+ANSI Conversion Example
! Commodore Graphics (PETSCII)
! Commodore Graphics (PETSCII)
! ANSI Translation by Color 64  
! ANSI Translation by Color 64
|-
|-
| [[File:petscii2.jpeg|center|200px]]
| [[File:petscii2.jpeg|center|200px]]
| [[File:ansi.jpeg|center|200px]]
| [[File:ansi.jpeg|center|200px]]
|}
|}
ANSI users should configure their terminal with a default black background for best compatibility. Additionally, the terminal should not automatically append a carriage return after a line feed, since the line feed character is used by the system as a cursor-down control in ANSI mode.
Because many ANSI terminals support only eight background colors, bold color variants may not display correctly in reverse mode. As a result, certain graphic translations may appear slightly different than their Commodore equivalents.
ANSI callers may manually change the active cursor color by pressing the ESC key followed by two digits. The first digit controls bold mode (0 = normal, 1 = bright), and the second digit selects the ANSI color (0–7). This provides access to the full range of color combinations available to Commodore graphics users.
Next Section: [[userapplication|The User Application]]
[[bbs operation|BBS Operation]]

Latest revision as of 18:08, 23 February 2026

BBS Operation - Graphics Mode

Graphics Mode Design

When a caller first logs on, the system determines the type of terminal being used through the Backspace/DEL test. Commodore graphics terminals send a CHR$(20) code when the DEL key is pressed, while ANSI and ASCII terminals typically send CHR$(8) or CHR$(127).

If the caller is using ANSI or ASCII, the system will ask whether ANSI graphics are supported. If the caller answers "Y", full ANSI color and graphic translation will be enabled. If "N" is selected, the caller will then be asked whether their terminal requires line feeds appended to carriage returns. This accommodates ASCII terminals that automatically add line feeds.

Commodore Graphics Mode

Commodore graphics terminals experience the system as originally designed, with full PETSCII graphics and color control. This capability is the reason the system was named Color 64, as it was among the first BBS systems to fully support advanced Commodore terminal programs such as CCGMS.

Background color changes are supported using the CTRL/B sequence. When a color key is pressed immediately after CTRL/B, the background color changes accordingly. On Commodore 128 80-column terminals, CTRL/B enables underline mode instead, so background changes do not function the same way. Color 64 properly passes through 80-column control codes such as underline and flashing attributes when appropriate.

The ASCII and ANSI translation routines are handled in part by machine language routines located beginning at memory area $C044+ (via calls to $FFD5).

ASCII Mode

When a caller connects using a plain ASCII terminal, Color 64 performs the best possible character translation. PETSCII graphic characters are converted to readable ASCII equivalents, and the system respects the current uppercase/lowercase state of the display.

ASCII Conversion Example
Commodore Graphics (PETSCII) ASCII Translation by Color 64

ANSI Graphics Mode

ANSI callers receive a high-quality conversion of Commodore graphics and color. Color 64 supports 15 ANSI foreground colors. Dark grey may not function properly on some ANSI terminals and is therefore translated to medium grey when necessary.

ANSI Conversion Example
Commodore Graphics (PETSCII) ANSI Translation by Color 64

ANSI users should configure their terminal with a default black background for best compatibility. Additionally, the terminal should not automatically append a carriage return after a line feed, since the line feed character is used by the system as a cursor-down control in ANSI mode.

Because many ANSI terminals support only eight background colors, bold color variants may not display correctly in reverse mode. As a result, certain graphic translations may appear slightly different than their Commodore equivalents.

ANSI callers may manually change the active cursor color by pressing the ESC key followed by two digits. The first digit controls bold mode (0 = normal, 1 = bright), and the second digit selects the ANSI color (0–7). This provides access to the full range of color combinations available to Commodore graphics users.

Next Section: The User Application

BBS Operation