Synchronet v3.21e-Win32 (install) has been released (Mar-2026).

You can donate to the Synchronet project using PayPal.

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
ref:xbin [2018/02/05 16:53] – [Character Height] A little EGA/VGA clarity digital manref:xbin [2025/10/09 05:30] (current) – [Definition] NoHigh is expected to disable bright backgrounds enabled with NoBlink as well it appears deuce
Line 1: Line 1:
 ====== XBin ====== ====== XBin ======
  
-XBin (''.xb'') is an ANSI/block art file format created by Tasmaniac of [[http://www.acid.org|ACiD]]. The main "image data" portion of the file is identical in format to that of a BIN (''.bin'') file: an IBM CGA text mode memory dump consisting of pairs of 8-bit character (e.g. alphanumeric or symbolic/graphic) data accompanied by 8-bit attribute (e.g. color) data.+XBin (''.xb'') is an ANSI/block art file format created by Tasmaniac of [[http://www.acid.org|ACiD]]. The main "image data" portion of the file is identical in format to that of a "Binary Text" (''.bin'') file: an IBM CGA text mode memory dump consisting of pairs of 8-bit character (e.g. CP437 alphanumeric or symbolic/graphic) data accompanied by 8-bit attribute (e.g. color) data.
  
 In addition to the "image data", the file may optionally contain: In addition to the "image data", the file may optionally contain:
Line 7: Line 7:
   - One or two font (character set) definitions   - One or two font (character set) definitions
  
-===== Example =====+===== Examples =====
 ==== CT-XBIN.XB ==== ==== CT-XBIN.XB ====
 {{:ref:xbin.png?400|An ACiD XBin demonstration file (CT-XBIN.XB) displayed in SyncTERM v1.1b}} {{:ref:xbin.png?400|An ACiD XBin demonstration file (CT-XBIN.XB) displayed in SyncTERM v1.1b}}
Line 13: Line 13:
 ==== The same file displayed without embedded font or palette data ==== ==== The same file displayed without embedded font or palette data ====
 {{:ref:xbin_without_font_or_palette.png?400|Does your terminal display XBin's like this?}} {{:ref:xbin_without_font_or_palette.png?400|Does your terminal display XBin's like this?}}
 +
 +==== cx-unnamed.xb ====
 +{{:ref:unnamed.png?400|A spectacular XBin demonstration displayed in SyncTERM v1.1b (in development)}}
 +
 +==== tcf - 22 - amidala.XB ====
 +{{:ref:amidala.png?400|Another outrageous example of the art possible through the XBin format}}
 +
 ===== Fonts ===== ===== Fonts =====
  
Line 45: Line 52:
 SyncTERM supports up to **4 active fonts** simultaneously (selected by the 4 possible combinations of bits 3 and 7 of each displayed character's attribute byte). And depending on the size and complexity of the original image and the target character height, 1-4 custom fonts might be needed to replicate the original bitmap image (and in some cases, 4 fonts isn't even enough). SyncTERM supports up to **4 active fonts** simultaneously (selected by the 4 possible combinations of bits 3 and 7 of each displayed character's attribute byte). And depending on the size and complexity of the original image and the target character height, 1-4 custom fonts might be needed to replicate the original bitmap image (and in some cases, 4 fonts isn't even enough).
  
-In any case, initial experiments using an ad hoc file format were encouraging. I was using SAUCE fields for most of the additional data needed (character height, number of fonts, etc.) and the basic BIN file format with additional data defining the font characters/glyphs. At the same time I was discussing the possibility of custom palette definitions with [[person:Deuce]] (the BBS could dynamically control the SyncTERM display palette), so I was considering adding that as well.+In any case, initial experiments using an ad hoc file format were encouraging. I was using SAUCE fields for most of the additional data needed (character height, number of fonts, etc.) and the basic BIN file format with additional data defining the font characters/glyphs. At the same time I was discussing the possibility of custom palette definitions with [[person:Deuce]] (the BBS could dynamically control the SyncTERM display palette), so I was considering adding an alternate/custom palette to the file format as well.
  
-I don't like reinventing the wheel, so I looked through the existing BIN file format variants (Artworx/ADF, IceDraw/IDF, etc.) and the only format which supported multiple custom font definitions was: XBin. XBin also supports a custom palette definition, so that was a plus as well.+I don't like reinventing wheels, so I looked through the existing "Binary Text" file format variants (Artworx/ADF, IceDraw/IDF, etc.) and the only format which supported multiple custom font definitions was: XBin. XBin also supports a custom palette definition, so that was a plus as well.
  
 However, XBin only supports a maximum of 2 fonts (the so-called "512 char" mode detailed earlier). Some of my experimental XBin images required more than 2 custom font definitions (especially in 8-pixel character height video modes), even 4 custom fonts could be required at times. However, XBin only supports a maximum of 2 fonts (the so-called "512 char" mode detailed earlier). Some of my experimental XBin images required more than 2 custom font definitions (especially in 8-pixel character height video modes), even 4 custom fonts could be required at times.
  
-So rather than create another file format that many useful software tools may never fully support, I decided to move forward using the XBin format, but add the functionality that I needed for my XBin Image ("XBimage") [[ftp://vert.synchro.net/main/bbs/xbimgs01.zip|demonstration project]]:+So rather than create yet another file format that many useful software tools may never fully support, I decided to move forward using the XBin format, but add the functionality that I needed for my XBin Image ("XBimage") [[ftp://vert.synchro.net/main/bbs/xbimgs01.zip|demonstration project]]:
  
-{{:xbin_sync_disks.png?400|}}+{{:ref:xbin_sync_disks_bright.png?400|}}
 {{:xbin_einstein.png?400|}} {{:xbin_einstein.png?400|}}
-{{:xbin_marilyn.png?400|}}+{{:ref:xbin_marilyn_bright.png?400|}}
 {{:xbin_starman.png?400|}} {{:xbin_starman.png?400|}}
  
Line 101: Line 108:
 The originally //unused// flags (bit positions 5 and 6) have been redefined to indicate the presence of font definitions for the normal-intensity-blinking (//BlinkFont//) characters and/or the high-intensity-blinking characters (//HighBlinkFont//). The originally //unused// flags (bit positions 5 and 6) have been redefined to indicate the presence of font definitions for the normal-intensity-blinking (//BlinkFont//) characters and/or the high-intensity-blinking characters (//HighBlinkFont//).
  
-The originally //unused// flag (bit position 7) is now redefined (as //NonHigh//) to indicate that the high-intensity attribute flag (bit 3) in the //Image Data// should **not** be used to select the color for the character cell (presumably, the attribute flag is being used to select the font set instead and the effective desired color of the character is expressed **only** in the low 3 bits of each character's attribute value).+The originally //unused// flag (bit position 7) is now redefined (as //NonHigh//) to indicate that the high-intensity attribute flag (bits and 7) in the //Image Data// should **not** be used to select the foreground or background color for the character cell (presumably, the attribute flag is being used to select the font set instead and the effective desired color of the character is expressed **only** in the low 3 bits of each character's attribute value).
  
 === Parsing === === Parsing ===
Line 122: Line 129:
 ===== See Also ===== ===== See Also =====
   * [[https://web.archive.org/web/20120212201856/http://www.acid.org/info/xbin/xbin.htm|Archived copy of The Official XBIN Homepage]]   * [[https://web.archive.org/web/20120212201856/http://www.acid.org/info/xbin/xbin.htm|Archived copy of The Official XBIN Homepage]]
-  * [[module:xbimage]]+  * [[https://www.acid.org/images/0896/XBIN.TXT|Original Xbin specification]] 
 +  * [[module:xbimage]] module
   * [[ftp://vert.synchro.net/main/BBS/xbimgs01.zip|XBimages Demo Pack #1]]   * [[ftp://vert.synchro.net/main/BBS/xbimgs01.zip|XBimages Demo Pack #1]]
 +  * [[https://blog.glyphdrawing.club/moebius-ansi-and-ascii-art-editor-with-custom-font-support/|Moebius XBIN]]
   * [[:ref:|Reference Library]]   * [[:ref:|Reference Library]]
  
 {{tag>ansi syncterm sauce xbin graphics fonts}} {{tag>ansi syncterm sauce xbin graphics fonts}}