Initial Work

Bootstrapping

I was able to write programs and run them in the emulator but I had no way of transferring the program to the Tiki-100. I looked at several options including a floppy emulator. I got my hands on a bunch of old floppies and hoped to find something that could be used to transfer data using the serial port. I found Turbo Pascal and ended up with a nice little bootstrapping process:

  • First I wrote a very simple serial transfer program in Pascal on the Tiki itself which could transfer text files to the Tiki.
  • Then I wrote a bit more complex Pascal program on my laptop which supported binary files and transferred the source to the Tiki.
  • Finally I wrote a C program which I transferred to the Tiki. This is the program I've been using ever since (with more and more additions).
The program has a few features which makes development and testing easier:
  • Read/write files
  • Read/write disk images
  • Read/write memory
  • Jump to memory

I've also written a mini-version (181 bytes) of this program which supports a subset of the commands (write and jump to memory).

HSYNC/VSYNC

I decided early on that I wanted to sync to at least the vertical sync to avoid tearing and to get smooth animation. I read and re-read the documentation and experimented with different methods to see if it was possible to sync to the screen without hardware modifications.

I tried to use the timer, but I was unable to get stable sync. I also checked if it was faster to access the video RAM during VSYNC, but it wasn't.

Ultimately I decided to find a VSYNC/HSYNC signal and connect it to the printer port which can be used as an IO port. I looked at the signals from the external video ports, but
after some probing and more reading I found the signals I needed on the internal video expansion port. I made a small cable which connected these pins to the printer port and soon I had rasterbars.

Later Frode van der Meeren made an external device which generates VSYNC and HSYNC signals from the analog or the digital RGB port, but this device was not ready when I wrote the demo.
The first rasterbars

Ingen kommentarer:

Legg inn en kommentar