• rswindell's avatar
    Support bright background colors: · 48e7520e
    rswindell authored
    - for PETSCII, this is automatic and you don't lose blink, but you do lose
      colored foreground when enabling a bright background ("reverse video")
    - for ANSI, this mode is typically referred to as "iCE colors" and disables
      blinking-text support
    - Ctrl-AE (^AE) is the new attribute code to enable bright-background
      (will have no effect on ANSI terminals that are not iCE color enabled)
      "E" is now valid in the ctrl/attr.cfg file and string values for JS
      console.attributes assignments, as well
    - Ctrl-AI (^AI) - blink - now does nothing for ANSI/ICE color terminals
      (blinking is not supported in combination with bright-background)
    - Using a new/non-standard CGA attribute bit-flag to indicate the selection of
      bright-background colors (BG_BRIGHT, bit 10), separate from BLINK.
      This change required all/most char/uchar attribute representations to be
      converted to int/uint.
    New text.dat strings:
    - PetTerminalDetected (renamed from PetTermDetected)
    - PetTerminalQ
    - TerminalAutoDetect
    - TerminalColumns
    - TerminalRows
    - TerminalMonochrome
    - TerminalColor
    - TerminalIceColor
    - IceColorTerminalQ
    This also moved the MsgCarbonCopyList definition to the end of the file
    for now.
    PETSCII reverse-video attribute fix:
    When a CR is sent to the terminal, the reverse-video attibute is auto-disabled
    so update our "current attribute" (curatr) value to match the remote.
    Support new printfile/putmsg mode flag: P_WRAP to force an ungraceful
    line-wrap (splitting) to the specified column width. If no column width is
    specified (0), then this mode will force an ungraceful wrap before the last
    terminal column where some terminals *may* auto-wrap.
    JS console.printfile() and printtail() methods now support an optional
    "orig_columns" argument, similar to console.putmsg(). Must specify P_WORDWRAP
    or P_WRAP for this argument to have any effect.
    Much improved terminal-type selection/configuration in the user defaults
    menu and abort (^C) at any of the yes/no prompts is now detected/handled much
    better (to answers to the prompted questions are not saved to the user