π Discover this insightful post from Hacker News π
π **Category**:
β **What Youβll Learn**:
A small but heartfelt demo celebrating the 50th birthday of the legendary MOS KIM-1 π₯οΈβ¨
The KIM-1 first became available in January 1976 β
three months before the Apple I π and one month after its sibling, the TIM.
An incredible milestone in early microcomputer history!
For this demo, Iβve gathered and connected a few components that were scattered across my repositories π§©.
The goal is not just to look back, but to celebrate, experiment, and build together.
I warmly invite fellow retro-computing enthusiasts and comrades-in-arms π€
to jump in, contribute ideas, add modules, demos, or improvements, and help this project grow.
Letβs keep the spirit of early computing alive π
π HAPPY BIRTHDAY, KIM-1! π
Wishing you β and all of us β a fantastic and hacky Year 2026 π₯³β¨
kim-1_demo.mp4
Things that are very useful in this code:
Take any coordinates in HEX out of the memory and use them to place your cursor.
The problem is, that to position your cursur, you need to send the x/y coordinates as single chars to the terminal program, like (ESC)[xx;yyH – Imagine just having hex data, i.e. $20 (32 dec) and you need to send a 3 and a 2 separated to your terminal… This routine will do it – seperate the tens from the ones. Now you can like draw a rectangle, a circle or whatever. You can start a painting program if you like.
; ANSI Cursor positionieren (Row ; Col)
GOTOXY:
LDA #$1B ; ESC
JSR CHOUT
LDA #$5B ; '['
JSR CHOUT
LDA CURY ; Row zuerst
JSR PUTDEC
LDA #$3B ; ';'
JSR CHOUT
LDA CURX ; Column danach
JSR PUTDEC
LDA #$48 ; 'H'
JSR CHOUT
RTS
; Dezimalzahl ausgeben (A-Register, 0-99)
; Benutzt TEMP als temporΓ€re Variable
PUTDEC:
STA TEMP ; Wert sichern
LDY #0 ; Zehner-ZΓ€hler
PUTDEC_T: CMP #10
BCS PUTDEC_S ; >= 10
JMP PUTDEC_D
PUTDEC_S: SEC
SBC #10
INY
JMP PUTDEC_T
PUTDEC_D: ; A enthΓ€lt Einer
TAX ; Einer nach X retten
TYA ; Zehner
BNE PUTDEC_Z ; Wenn nicht 0
JMP PUTDEC1
PUTDEC_Z: CLC
ADC #$30 ; In ASCII umwandeln
JSR CHOUT
PUTDEC1: TXA ; Einer zurΓΌck
CLC
ADC #$30 ; In ASCII umwandeln
JSR CHOUT
LDA TEMP ; Original wiederherstellen
RTS
π¬ **Whatβs your take?**
Share your thoughts in the comments below!
#οΈβ£ **#netzherpesKIM1Demo #demo #KIM1 #50th #birthday**
π **Posted on**: 1768144118
π **Want more?** Click here for more info! π
