RPUFOS X710 Graphic Simulator

alpha version


Explain

This project demonstrates the X710 protocol using a virtual plotter with four pens to draw and test basic commands (see below).
Only for Graphic Mode.
Compatible plotters: Tandy CGP-115, Commodore VIC‑1520, Atari 1020, ...
Upper case is mandatory for commands.
JavaScript must be finished:


File to load

A text file with commands. Typically saved as a .plt file.



No file loaded!

Cmds X710

1 Cmd by line please.




⚠️ x,y are mathemathical ⚠️









Canvas

480x2048 by X710 definition (-999<= y <= 999)




⚠️ Origin is Up Left on Canvas and Y is reversed (-Y) on the canvas.

Origin (canvas): x,y  Last x,y: x,y  Pen selected: c



Source of documentation : X710 Manual.
Need to be improved.

This is a work in progress, use at your own risk.

The canvas is 2048px long, to simulate the roll of paper.
Max y is 999 and it's Min is -999, so within the middle of the paper you can draw picture.
x is between 0 and 480.
You can use comments in the command textarea, use ";".

The resolution for the PNG is 127dpi (1px=0,2mm), you have to set it manualy.

📘 X710 Commands
1. Setup of Plotter
  • CHR$(17) – Text mode.
  • CHR$(18) – Graphic mode.
  • A – END. Set Text mode and move pen to the full left.
2. Graphic Commands
  • C – Select Pen: Select the active pen by number [0-3].
    [0] Black; [1] Blue; [2] Green; [3] Red
  • D – Draw: Draw to coordinate x,y.
  • F – Next Line: Line feed.
  • H – Return to Origin
    Origin is set by "I", or first position when printer start.
  • I – Set Origin
    Define the origin of drawing.
  • J – Draw relative
    Relative to x,y.
  • L – Line Type
    Sets line style (solid, dashed) [0-15].
  • M – Move: Move to x,y (no draw).
  • P – Print characters
    Example: "PHello World!".
  • Q – Angle for P: [0-3].
    • 0: 0° - LTR, normal mode
    • 1: -90° - (270°) to bottom
    • 2: 180° - RTL inverse
    • 3: 90° - Up
  • R – Move Relative
    Move to x,y (no draw).
  • S – Character size
    [0-15].
3. Text Commands

The simulator accept "chr$(n)" or "CHR$(n)", but this commands are not implemented.

  • CHR$(8) – 1 char to left
  • CHR$(10) – New line
  • CHR$(11) – Previous line
  • CHR$(13) – Carriage Return (move full left)
  • CHR$(17) – Text mode