Jump to content

Productivity Apps

8 files

  1. X16 Edit - a text editor

    X16 Edit is a text editor for the Commander X16 platform.
    Design goals:
    Use plain text files Store text buffer in banked RAM (512KB to 2 MB)  Handle large text buffers efficiently Simple modeless user interface inspired by GNU Nano Implement basic editing functions well - refrain from making the program too feature-rich Support both ISO and PETSCII modes The current version of the program is made for X16 ROM version R41. Run with the following command:
    x16emu -sdcard sdcard.img -prg X16EDIT-x.x.x.PRG -run, where x.x.x is the program version. X16EDIT-HI.xxx.PRG is assembled to be loaded and run at memory address $6000.
    To run ROM version you need to setup a custom ROM image. Please read the attached file romnotes.pdf to learn how to do that.
    For instructions on how to use the editor, please read the attached manual.
    Source files available at https://github.com/stefan-b-jakobsson/x16-edit
    Released under GNU General Public License v 3 or later.

    manual.pdf
    romnotes.pdf

    2301 downloads

       (3 reviews)

    Updated

  2. File based assembler

    File-based assembler.  Requires r39 or newer
    Source code and list of features is here https://github.com/irmen/cx16assem
    The instructions are fairly self-explanatory, a simple manual will come later

    assem-2021-12-14_01.26.48.mp4  

    181 downloads

       (1 review)

    Updated

  3. Dos Shell

    A "unix" like Dos Shell with a bunch of builtin commands to make day to day file operations (much) more convenient than via a Basic prompt. Requires R41.
    Tip: save this as AUTOBOOT.X16 to your sdcard and it will load every time you start the emulator.
    Short description of the commands and Source code (Prog8) available here https://github.com/irmen/cx16shell/

    153 downloads

       (2 reviews)

    Updated

  4. Menu program (WIP)

    This is an unofficial concept program for a CX16 menu. Modify the DATA statements to add your submenus and commands. 
    This is currently just a demo to explore the look and and feel of a basic, BASIC menu. Since it does not clear the screen, it is useful as an autoboot menu. 
    New: uses a new API to push keys into the keyboard buffer. This allows the LOAD and RUN to operate outside of the running program, preventing problems that occur when chaining programs in BASIC. 

    141 downloads

       (0 reviews)

    Updated

  5. ux16vt (Unicode Terminal for X16)

    ux16vt is a UTF-8 and somewhat ANSI compatible terminal emulator for
    Commander X16.
    Currently the only useable "serial" port uses LOAD & SAVE to communicate between
    the X16 emulator and a glue process that moves data in and out of a POSIX
    pseudo-terminal.
    In the emulator LOAD "UX16VT.PRG" & RUN. On the host, compile and run
    emulator_glue.c.
    ## Unicode Support
    ux16vt supports up to 4096 1-bit 8x16 pixel glyphs selected at compile time from
    the Unicode Basic Multilingual Plane. Unknown characters are displayed as blank.
    Currently 672 of these glyphs are used covering 862 different code points. The
    following blocks are mapped:
    - Basic Latin (00-7f)
    - Latin-1 Supplement (80-ff)
    - Greek & Coptic (370-3ff)
    - Cyrillic (400-4ff)
    - Box Drawing (2500-257f)
    - Block Elements (2580-259f)
    Limitations:
    - no support for right-to-left text
    - characters are represented internally as 16-bit values, making any characters
      outside the basic multilingual plane complete inaccessible
    - completely mono-spaced text. full-width glyphs are not available
    ## ANSI Support
    Only sequences beginning with ^[[ are supported (Control Sequence Introducer).
    Only numeric parameters are read. A control sequence with more than four
    parameters will cause an unchecked buffer overflow.
    The following functions are available:
        A   CUU Cursor Up
        B   CUD Cursor Down
        C   CUF Cursor Forward
        D   CUB Cursor Back
        E   CNL Cursor Next Line
        F   CPL Cursor Previous Line
        G   CHA Cursor Character Absolute [column]
        H   CUP Cursor Position
        J   ED  Erase in Display
        K   EL  Erase in Line
        S   SU  Scroll Up
        T   SD  Scroll Down
        d   VPA Vertical Position Absolute [row]
        f   HVP Horizontal Vertical Position
        m   SGR Select Graphics Rendition
    The only available modes for SGR are 31 to set foreground colour to red and
    30,32-39 set the foreground colour to black.

    84 downloads

       (0 reviews)

    Updated

  6. META/L assembly language editor

    The META/L editor is a direct assembly language editor.  It shares some features of a Monitor program, with extensive use of metadata to take it well beyond anything a Monitor can do.
    Unlike a text editor that later compiles your code, META/L interprets it as assembly language opcodes as you type it.  Unlike a Monitor, you can do things like copy and paste code, move it around, or insert or delete bytes in the middle of your code; the metadata allows the editor to adjust parameters as labels move.  Every byte of RAM and ROM is accessible to you on the fly.
    Download the zip file, unzip it somewhere, and copy everything into the same folder as your r41 emulator.  Full documentation is in the file docs/edit.html
    This software is released under an MIT license.
    There are also a number of videos in the forum here 
     
     

    74 downloads

       (0 reviews)

    Updated

  7. FASTMATH

    When programming in assembly language, quite often you will need to do calculations that would normally require
    floating point math.  Those subroutines are available, the same ones that BASIC uses, but they are very slow.  And
    if you're programming in assembly, you're doing so because it's much faster than BASIC, so using those routines can
    defeat the purpose, particularly if you need to do a lot of such calculations.
    Ideally in assembly language you want to have most of your variables consisting of single bytes, not the five used
    for floating point.  It's having to move all those bytes around and doing calculations involving all of them
    that makes the floating point subroutines slow.  And if you're going for speed, you can make a tradeoff: increased
    speed at the expense of accuracy.  A function involving a single byte can just be a lookup table.
    Over the last several years I have developed a number of lookup tables and subroutines that enable some very fast
    math on the 6502 and now 65c02. FASTMATH.BIN is many of them compiled into a single 8kb file that can be loaded into 
    banked RAM.
     
    These lookup tables and functions will work on all revisions of the X16 emulator, and indeed will work on any 65c02
    system as long as the file is loaded at $A000.  The functions are all called through JMP redirects in page BF, and
    those JMP table locations will not change if I do revisions on the code.  I'm pretty sure I killed all the bugs, but
    some might have slipped through.
    This is probably going to be the final revision of FASTMATH, barring some sneaky bug hiding in the code.  There's
    only 6 bytes left anyhow.
    The file fastmath.txt contains detailed information about each lookup table and function and how to use them.
    The file FASTMATH.BIN is the binary that must be loaded into banked RAM.

    69 downloads

       (0 reviews)

    Updated

  8. LED - A Line-Oriented Text Editor

    Story time.
    I was reading @gavinhaslehurst's post about implementing floating point numbers based on an article in COMPUTE! magazine.  So, I headed over to archive.org and looked up that  issue  and read the article.  Then I flipped through the rest of the issue.  On page 16, there was this program, LED - A Line-Oriented Text Editor, written by Arnie Lee of Abacus Software, in BASIC, for the Commodore PET (also mentioned is an APPLE II version, but I didn't see that listing in there).
    So, I typed it in and ran it under VICE.  Works on the PET, works on the C-64, works on the C-128.... works on the X-16!
    The only changes from the original is to comment out the 2 POKEs to disable/enable RUN/STOP and changed the line-endings from CHR$(255) to CHR$(10) so  the files would have regular UNIX-style newlines ending the lines.
    Is it useful?  Debatable.
    Is it retro?  For sure.
    https://archive.org/details/1981-02-compute-magazine/page/n17/mode/2up
    COMPUTE! Magazine
    February 1981
    Issue 9
    Vol. 3, No. 2
    Page 16.

    45 downloads

       (2 reviews)

    Submitted

×
×
  • Create New...

Important Information

Please review our Terms of Use