Skip to content

A java control that displays as an ascii terminal using code page 437.


Notifications You must be signed in to change notification settings


Folders and files

Last commit message
Last commit date

Latest commit



76 Commits

Repository files navigation


Build Status

AsciiPanel simulates a code page 437 ASCII terminal display. It supports all 256 characters of codepage 437, arbitrary foreground colors, arbitrary background colors, and arbitrary terminal sizes.

The default terminal size is 80x24 characters and default colors matching the Windows Command Prompt are provided. The default font is 9x16 pixel CP437 (CP437_9x16.)

This should be useful to roguelike developers.


AsciiPanel supports the customization of fonts. The following system fonts are provided:

  • CP437_9x16
  • CP437_8x8
  • CP437_10x10
  • CP437_12x12
  • CP437_16x16

In addition, the following fontsets from the Dwarf Fortress Tileset are also included:

  • DRAKE_10x10
  • QBICFEET_10x10
  • TALRYTH_15x15

The AsciiPanel class provides a special three-parameter constructor to support font customization. Simply pass the desired AsciiFont as the third parameter as follows.

AsciiPanel myPanel = new AsciiPanel(80, 24, AsciiFont.DRAKE_10x10);

Build instructions

AsciiPanel is a Maven project, compatible with Maven 2 and Maven 3. It can be built using the following command:

mvn install

This will build the project, run the unit tests, and copy the resulting jar into your local Maven repository. Once the jar is deployed to your repository, you can include it in your projects by including the following dependency in your pom:


Or you can add the jitpack repository to your pom:


which provides AsciiPanel as dependency at:


where <version/> describes the git commit you want to use.

For Gradle users:

repositories {
    allprojects {
        repositories {
            maven { url '' }

dependencies {
    compile 'com.github.trystan:AsciiPanel:master-SNAPSHOT'


This project is built with Java 8. However the code itself does not require Java 8. If you are supporting a project running an earlier version of Java, you can change the pom file and rebuild the jar using your chosen version of Java without having to modify the code.


A java control that displays as an ascii terminal using code page 437.







No releases published


No packages published