Giter Club home page Giter Club logo

x16-speedscript's Introduction

SpeedScript X16 Fork

SpeedScript is a very small but full-featured word processor, originally written by Charles Brannon, and published in Compute Magazine for various 8-bit computers. This project is a port of the Commodore 64 version of SpeedScript to the Commander X16.

I'm using SpeedScript 3.1 for the Commodore 64 as my starting point. It is one patch away from being SpeedScript 3.2, but this is the version which had the source code published in print. You can read the original book on archive.org. I had to copy everything from hand and verify it against a working binary I had downloaded, and I've included that version in this repository, with some but not all of the comments from the book.

Working features

The program will work in either 40 or 80 column mode, and probably any other text mode supported in the future, as long as the convention of saving the row to V_M and the column times two to V_L works, and the row and column count is readable.

You can load and save; it is currently locked to device #1. Printing might work, it's unmodified.

The following functions work:

  • Ctrl-I to toggle between overwrite mode (black header) and insert mode (blue header).
  • F7 to load and F8 to save. Only device #1 is supported.
  • Ctrl-D to delete a sentence, word, or paragraph to the left.
  • Ctrl-E to erase one or more sentences, words, or paragraphs to the right.
  • Ctrl-F to erase one character to the right. (supposed to be Ctrl-Left Arrow)
  • Ctrl-C to insert five spaces.
  • Ctrl-X to swap letter under the cursor with letter to the right.
  • Ctrl-B and Ctrl-L to change the color of the background and letters.

Missing features

  • Doesn't recognize any Shift-Ctrl keys yet
  • Clearing memory with CLR/HOME crashes the machine.
  • Memory access beyond the first 32K
  • Faster screen drawing in 80 column mode
  • Disk directory (Ctrl-4) comes up blank.
  • Ctrl-H just puts up "Not Found"
  • Ctrl-R just puts up garbage.
  • Ctrl-P just turns the screen black until you press Ctrl-B or Ctrl-L

x16-speedscript's People

Contributors

unbibium avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

gillham

x16-speedscript's Issues

Fix color

Storing the current color in location 646 no longer changes the cursor color, so things like the top line status bar are all the wrong color.

we either need to find the POKE that works, or we need to rework everything that sets 646 to instead use the KERNAL and control codes to change color.

change column detection to work with r38

previous versions would use LDA $D9 to load the number of columns so that it can build the screen.

this value is always 0 so the whole thing breaks

either find the real way to detect screen geometry, or figure out how to force 40x25 mode (80x50 mode is too slow anyway)

In r32 emulator, starts in ASCII mode.

Even though the INIT routine sends the $8F character to CHROUT, the program starts up with the ASCII character set. as a result, it is very confused about which characters are being typed or displayed.

figure out why it's doing that, and make it start in PETSCII instead.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.