Telestrat works with stratsed and telemon. Telemon contains a lot of primitives (graphics, sounds, math and minitel function).
Stratsed load in overlay ram and provide operation for floppy disks.
There is many keyboard shortcut in telemon bank
* Where can i have source code of telemon ?
Keyboard shortcut (telemon)
CTRL+A : produce a tab (add 8 spaces)
CTRL+C : break
CTRL+G : produce a sound (oups)
CTRL+H : move cursor one space left
CTRL+I : XX
CTRL+J : XX
CTRL+K : move cursor one space up
CTRL+L : clear the window
CTRL+N : Delete current line
CTRL+Q : Switch on videotex cursor
CTRL+R : echo on (sends data also on printer)
CTRL+S : Launch hard copy (printer)
CTRL+T : Switch off video tex cursor
CTRL+X : Delete the end of the line (after sur cursor)
How to code on Oricutron with telemon
The famous Hello world ! with telemon and crossdevel
At this step, you have in oric folder, an osdk folder
At this step, you have in oric folder, an osdk and oricutron folder
create in oric folder a directory “projects”
in this folder (projects), create a folder “hello_telemon”
in this folder (hello_telemon), create a folder “include”
in hello_telemon folder, create a file “hello.asm” and open it in an editor. Copy and paste this :
#define XWSTR0 $14
.asc "Hello world !",0
at this step, you have to build with assembler : open a command line window (cmd.exe)
go to your project directory (oric/projects/hello_world) and execute xa :
..\..\osdk\bin\header.exe -a1 a.o65 hello.tap
you have now hello.tap file. Now we need to put it on disk !
use tap2dsk from osdk to generate the disk
use old2mfm to convert .dsk file into new format
insert stratsed.dsk into telestrat start Oricutron
insert your new disk genetated in oricutron, runs your code.
mouse and joysticks
For information on the Telestrat mouse and joystick ports go here.
How to write code compatible with Telemon and the Atmos
The same source code can be used to generate a Telestrat and Atmos executable by detect the machine at runtime.
It is useful to know that:
Telemon uses different IRQ vectors
than the Atmos OS
(Atmos: $244/$245/$246, Telemon: $2fa,$2fb,$fc).
Hires routines live at different addresses on both OSes (Atmos: jsr $ec33, Telemon: brk $1a).
If the IRQ vectors used by Telemon are redirected (where?) brk calls will cease to work since they rely on these vectors to have their original values. Thus, the IRQ vectors must be restored before calling any Telemon ROM routines.
Zero page : in order for Telemon to be functional after program exit, you should use “#define VARAPL $D0” to use all zero page bytes (44) after $d0.
: Telemon initializes the VIA1 differently than the Atmos OS
. For example, the T2 timer is enabled. If you execute this instruction in your code : “lda VIA_T1CL”
, you should also execute “lda VIA_T2CL”
: You can also disable T2 timer.
#define SYS_IRQLO $2fb
#define SYS_IRQHI $2fc
#define SYS_IRQLO $245
#define SYS_IRQHI $246
How to switch over banks
Used it if you want to do a bit crap
#define MYBANK 3
; SET IRQ vectors
You can do it better with telemon routines.