A short little BASIC game 
31.8.21, 08:11 - retro & C64
gepostet von web doc
I was a little bored yesterday in my lunchbreak, so I read old magazines on archive.org. Creative Computing, to be precise, a magazin for computer hobbyists, published from '74 to '85 by David Ahl.
I found a short BASIC program in issue 1-77 called STRIKE 9 - a little dice game.
It was typed in fast and worked out of the box in vintage basic.
Proud as oscar I showed the result on twitter, and the original author, Bruce Grembowski stated:

Another piece of software restored. Grab it here: https://drive.google.com/file/d/1mFb7QHregk4Rs53HDGboMERwMhcgm-3u/view?usp=sharing

have fun,
Software Archaeology 
8.8.21, 07:29 - retro & C64
gepostet von web doc
There was this small entry on hansotten.nl about a line editor for the KIM-1 called Ledip. Not much infos were given, except some scanned pages of Dr.Dobbs journal issue 29. including the manual and sourcecode (see the end of the page)

Sadly the scans were, well, not very usable.
8 and B and D and 0 were indistinguishable. Litterally.
The author of the program, Kiumi Akingbehin, meanwhile Professor at the Michigan University, was so kind to send me another scan. Slightly better, but still far away from being readable.

But I gave it a try anyway and needed like three days to type this little program in and compile it.
There were lots of tons of Typos by myself, but with the help of hjm and Hans Otten and their eagle eyes, all errors were found and now this 43 year old piece of software history is revived again, ready to play with.


Load the papertape into your KIM-1, clone or the fabulous iOS Emulator "VirtualKIM"
Start the Program at place 2000 (mem expansion required)
It will now ask for a starting adress, where the text should be stored. any free space is possible, like $3000. This Value is very important later and wil be stored in the Zero Page. MbegL $d5 and MbegH $d6 The End adresses (MendL $d3 and MendH $d4) are updated with every line you type, modify, delete, insert. A lot of Memory shuffeling is going on, when you insert a line in between two existing lines of text: Copy the upfollowing lines exact the ammount of bytes upwards as the inserted text is long and change the end address... Brainf*ck if you look at the sources. Amazing and perfect RAM saving when memory was rare.

The Folowing commands are accepted:

- Add text with a 4 digit line number: 0010 Hello World!
- LIST lists the text with line numbers
- TEXT lists the text without line numbers
- FILE gives you all needed memory locations to save the text: Zero pages, the program itself and the textarea.
- EXIT ... guess.
- CLEAR delete everything

Thanks to: Kiumi Akingbehin, HJM and Hans Otten for their Help,

Have fun, stay childish,

let's say you have an existing text on your pc and want to convert it in a way, that LEDIP can process it. The syntax in linux or cygwin is as follows:

nl -nrz -w4 -s\  text_in.txt > text_out.txt

(important are the 2 spaces after -s\)

Pro Tipp:
Good textfiles can be found here


Demo for the piGFX Terminal 
1.8.21, 15:11 - retro & C64
gepostet von web doc
Here is a short Demo for the piGFX Terminal Emulator, written in Basic ;)

1 PRINT CHR$(27);"[2J";
2 PRINT CHR$(27);"[50;60H";
3 PRINT "piGFX TEST on a PAL-1"
4 FOR K=1 TO 100
6 PRINT CHR$(27);"[=1m"
9 FOR I=1 TO 50
10 GOSUB 80:X$=D$
11 GOSUB 80:Y$=D$
12 GOSUB 80:W$=D$
13 GOSUB 80:H$=D$
14 GOSUB 80:CO$=D$
29 PRINT CHR$(27);"[38;5;";CO$;"m";
30 PRINT CHR$(27);"[#";X$;";";Y$;";";W$;";";H$;"r";
41 PRINT CHR$(27);"[2J"
49 FOR J = 1 TO 50
50 GOSUB 80:X$=D$
51 GOSUB 80:Y$=D$
52 GOSUB 80:W$=D$
54 GOSUB 80:CO$=D$
59 PRINT CHR$(27);"[38;5;";CO$;"m";
60 PRINT CHR$(27);"[#";X$;";";Y$;";";W$;"c";
62 PRINT: PRINT CHR$(27);"[20;20H";
63 PRINT "Thats it folks. Greetings to"
64 GOSUB 80:X$=D$:GOSUB 80:Y$=D$
65 PRINT: PRINT CHR$(27);"[";X$;";";Y$;"H";"JOHN, LIU"
66 GOSUB 80:X$=D$:GOSUB 80:Y$=D$
67 PRINT: PRINT CHR$(27);"[";X$;";";Y$;"H";"HANS, HJM"
68 GOSUB 80:X$=D$:GOSUB 80:Y$=D$
69 PRINT: PRINT CHR$(27);"[";X$;";";Y$;"H";"And all the rest of the ";
70 PRINT "KIM-1 Crew"
71 PRINT CHR$(27);"[=0m"
79 END
80 REM Random Generator wo leading Space
81 A=RND(2):A=RND(2)*300
82 B=INT(A):C$=STR$(B):D$=MID$(C$,2)

A Graphics Card for my KIM-1 Clone 
29.7.21, 14:31 - retro & C64
gepostet von web doc
I've talked a lot lately about my newest achievement, my PAL-1, a KIM-1 clone.
(here), here, here and (here)...
Now I've got what it takes to Convert him into a real usable desktop computer:

The Graphics Card for my PAL-1

It is basically a Raspberry Pi Zero with the fabulous PiGFX system, a bare metal terminal emulator with HDMI output and support for USB and PS/2 Keyboards as well as rudimentry file transfers from the sd card.

From the Website:
PiGFX is a bare metal kernel for the Raspberry Pi that implements a basic ANSI terminal emulator with the additional support of some primitive graphics functions. It can be driven by pushing characters to the raspi UART. Additional functions like changing text color, moving the cursor or clear the screen can be invoked via ANSI escape codes. The result is that you can easily add an HDMI display output to your embedded project without the hassle of directly generate the video signal.

Means: You can load sprites, draw circles or triangles or rectangles. You can change the font, and change foreground and background colors and paint whereever you want on the screen.

What do you need?
a Raspberry Pi (10€) and a Level shifter 232 to ttl (2€)

Occuring problems during the build:
- The selection of the sd card is tricky. The website states it has to be an older and smaller card, I bought a 32gb card, which did not work. (I've found an abandoned card in my drawer later with only 8 gig, which did the job). Patition it to 1gb! FAT or FAT32. The bare metal sd driver is more than picky.

- The level shifter I ordered (https://www.pollin.de/p/rs232-ttl-wandler-mit-max3232-810358 ) had already crossed TX - RX lines, so a direct connection did not work. I rewired the RS232 connector on the levelshifter board, and it workd immediately (a real dirtyhack)

- The config file needs the following values:
baudrate = 2400
replaceLFwithCR = 1
and last but not least, if you use the pigfx version from the filetransfer branch
fileSendCharDelay = 50
fileSendLineDelay = 200

I hope someone follows me and we can set up loading routines for the normal monitor.

Stay childish,
Basic Games for your KIM-1 
20.6.21, 20:14 - retro & C64
gepostet von web doc
Since Apple Basic has been ported to the KIM-1, there are three working Basic interpreters:

Tiny Basic,
MS Basic and
Apple Basic

I found some old Basic games for old interpreters in the Book
"Basic Computer Games"
and "More Basic Computer games"
by David H. Ahl
(All available on my g.drive)

These games have to be fitted for the KIM-1 and its restrictions, but I got at least 2 working:


So if you own a KIM-1 or a clone and you are able to run MS Basic, go on and try out the games...

Have fun,

| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | Weiter> omega>>