[ R.I.P. ]
MSX Utilities
 by Oleg Alferov aka Secoh 
     

Uplink...

in Russian...


Windows
Utilities



MSX
Emulator...



About...

Links...

Friends...

Mailing List...
 
BASIC Editors    BASIC Visual effects    BASIC Games    Programming studies    File converters

BASIC Editors

SPRITE.ALF
DRAW!.ALF
EDI.BX1


thoroughness: 5+/5
faultlessness: 5/5
SPRITE.ALF screenshot, small

SPRITE.ALF
Download (47.2K).

The sprite editor is one of my most developed projects. I was working on it since 1990 to almost 1993. In 1993, it was used as a sample BASIC program for junior students course in Moscow State University, the department of Computer Sciences.

The sprite editor allows user to draw and modify sprites (16x16 bit images), store them in 10 slots, view decimal codes, combine sprites in preview window, save to and load from disk, print to printer. While saving, the editor tries to optimize the sprite declaration to reduce its length.

The load function actually interprets the BASIC code searching for sprites assignment so it is able to read all the editor saves and most of BASIC programs with sprites. This function is the most sophisticated one in the project and was written at the very last.

User controls (keys and explanations):

  • p — PSET mode, pixel inverses on hit to space bar;
  • d — DRAW mode, pixel inverses when cursor moves;
  • w — write to slot (enter slot number), with submodes SAVE (s key, keeps drawing field) or CLEAR (c key, erases drawing field);
  • c — call sprite from slot (enter slot number). Available submodes are:
    ModeKeyDescription
    NORMnnormal, as is (default)
    HORIZhflip horizontally
    VERTvflip vertically
    LINVShift+Lflip around right-inclined axis (as slash)
    RINVShift+Rflip around left-inclined axis (as backslash)
    RIGHTrrotate counterclockwise by 90 degrees
    LEFTlrotate clockwise by 90 degrees
    COMBcrotate by 180 degrees
    ANTIanormal orientation, but inverted
     
  • o — print sprites to printer. Enter slot number or press * key for all sprites, or l key for the view window;
  • k — kill sprite, i.e. remove it from the slot (enter slot number or press * key for all sprites);
  • r — restore all killed sprites that weren't overwritten;
  • s — save sprites to disk (enter slot number or press * key for all sprites, then enter file name);
  • i — input sprite as a sequence of decimal digits;
  • l — LOOK mode. Enter slot number to call sprite to the view window, use arrows to move sprite, press Space bar to fix it, or press c key to clear the view. To quit LOOK mode, press F5;
  • Shift+L — enter LOOK mode without erasing screen;
  • Shift+C — clear drawing field;
  • Shift+R — read sprites from disk (enter 0 when asked for first sprite, then enter file name);
  • Shift+Q — quit program.


thoroughness: 5/5
faultlessness: 4/5
DRAW!.ALF screenshot, small

DRAW!.ALF
Download (31.9K).

A simple graphics editor combined with vector compiler. The program provides drawing primitives such as lines and circles, and then tries to recognize and compile the drawing into DRAW statements, as they used in BASIC. User can save the recognition results into file, that is a BASIC program executable in the interpreter.

DRAW!.ALF is not as well developed as the sprite editor is, so loading from file or different colors are not implemented. The recognition algorithm is very primitive that allows it, on one hand, to successfully process the most of drawings, but on other hand, without any optimization.

User controls: first of all, press Space key twice to feed all the comments in Russian to the program. While in menu, use Up end Down arrows to move marker, and Right arrow to select the option. In the drawing mode, use:

  • Space — switch color: 14 is for drawing, 4 is for erasing;
  • arrows — move the cursor, and draw/erase if the trace mode is set;
  • Enter — start translation. After translation, program will return to the main menu. (You may need to switch to the emulator's command mode by Ctrl+Break and turn on the top speed mode by P key. Decrease speed back after translation finishes);
  • F1 — mark a point (the point itself is not a part of image);
  • F2 — turn ON/OFF the drawing mode;
  • F5 — put circle with center in the marked point and radius to the current position;
  • F6 — put line from the marked point to the current position;
  • F7 — put box from the marked point to the current position;
  • F8 — put filled block from the marked point to the current position;
  • F9 — paint from the current position by the current color (calls actual PAINT operator in BASIC);
  • F10 — clear all the screen.

Note that there is no real F6-F10 keys on the MSX platform. They are virtual, i.e. press Shift+F1 for F6, Shift+F2 for F7, etc.

After the start, enter EDIT option, then select OLD. In the drawing mode, where you will enter, create an image and compile it.

After translation, the program will display the main menu again. Enter SAVE from the main menu, then select User option. The line that the program displays at this point is the request for the file name in Russian. Enter the file name, followed by Enter key, then press Space bar to start writing.

To quit this program, ether select BASIC option from the main menu, or press Ctrl+C combination while saving file, followed by Esc key.

Programs made by DRAW!.ALF can be executed in QBasic.


thoroughness: 4/5
faultlessness: 4/5
EDI.BX1 screenshot, small

EDI.BX1
Download (36.0K).

EDI is the line editor, found on earlier computer systems like PDP/RSX. Earlier displays were capable only to output a character in the cursor position, or start a new line. They were unable to return or to draw in arbitrary position, and worked extremely slow. The intention of EDI editor was to allow user to enter and edit text on such a display.

This version of EDI was supposed to be used on diskless MSX stations. The only thing user can access there was the BASIC interpreter, and I didn't have access to the editing/saving tools for this kind of equipment at that time. This package can be considered as quick-fix to the problem. It consists of two files: EDI.BX1 is and editor that loads to the workplace — it can edit text and transmit it to the MSX network. The EDISAVE.BA1 program runs on the central computer that usually has disk, listens network and save all transmissions to a file.

EDI has two modes: Input and Line. In the input mode, user enters text line by line. Although some version of the editors (including mine) allow to edit the current line, the previous lines cannot be edited in the input mode. The line, or command, mode is intended to alter entered text by the set of special commands. It doesn't allow to enter text.

As started, EDI automatically enters the input mode. To exit to line mode, press Enter key at the beginning of the empty line. (Despite the first impression, EDI allows to enter empty lines. You can enter something dummy to that lines and then replace it by the empty string.)

User controls (optional number after the command is depicted by # sign):

  • i — switch to Input mode and start to input from the current position;
  • b — position to the top of file;
  • n# — shift file position by #, the number may be negative;
  • d# — delete # lines, or one line if number is omitted;
  • l# — print # lines, or till EOF if number is omitted;
  • e — send the text to COM: (network);
  • c/in/out — search for the first occurrence of in substring in the current line, and replace in by the out substring;
  • Enter — move to the next line and display it.

Warning: since the emulator doesn't have a network, you will be unable to save files in this version of EDI.
 


© 2002,
Oleg Alferov
aka Secoh
secoh@anl.gov