initial commit
This commit is contained in:
9
.claude/settings.local.json
Normal file
9
.claude/settings.local.json
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"permissions": {
|
||||
"allow": [
|
||||
"Bash(brew list *)",
|
||||
"Bash(brew search *)",
|
||||
"Bash(brew info *)"
|
||||
]
|
||||
}
|
||||
}
|
||||
62
hello.asm
Normal file
62
hello.asm
Normal file
@@ -0,0 +1,62 @@
|
||||
; -----------------------------------------------------------
|
||||
; hello.asm - C64 demo: szoveg kiiratas + keret villogtatas
|
||||
; Forditas: acme -f cbm -o hello.prg hello.asm
|
||||
; -----------------------------------------------------------
|
||||
|
||||
!to "hello.prg", cbm
|
||||
|
||||
* = $0801
|
||||
|
||||
; ---- BASIC stub: 10 SYS 2064 ----
|
||||
; igy a LOAD"*",8,1 utan eleg RUN-t irni
|
||||
!byte $0c, $08 ; kovetkezo sor cime
|
||||
!byte $0a, $00 ; sorszam: 10
|
||||
!byte $9e ; SYS token
|
||||
!byte $20, $32, $30, $36, $34 ; " 2064"
|
||||
!byte $00 ; sor vege
|
||||
!byte $00, $00 ; program vege
|
||||
|
||||
* = $0810 ; = 2064 decimalisan
|
||||
|
||||
; ---- KERNAL rutinok ----
|
||||
CHROUT = $ffd2 ; karakter kiiras
|
||||
BORDER = $d020 ; keret szin regiszter
|
||||
BG = $d021 ; hatter szin regiszter
|
||||
|
||||
start:
|
||||
lda #14 ; vilagoskek hatter
|
||||
sta BG
|
||||
lda #6 ; sotetkek keret
|
||||
sta BORDER
|
||||
|
||||
lda #$93 ; CLR/HOME - kepernyo torles
|
||||
jsr CHROUT
|
||||
lda #$05 ; feher karakter szin
|
||||
jsr CHROUT
|
||||
|
||||
ldx #0
|
||||
print_loop:
|
||||
lda message,x
|
||||
beq color_loop ; ha 0 -> kesz a szoveg
|
||||
jsr CHROUT
|
||||
inx
|
||||
jmp print_loop
|
||||
|
||||
; vegtelen szinvillogtato
|
||||
color_loop:
|
||||
inc BORDER ; novelje a keret szinet
|
||||
ldy #0
|
||||
delay_outer:
|
||||
ldx #0
|
||||
delay_inner:
|
||||
dex
|
||||
bne delay_inner
|
||||
dey
|
||||
bne delay_outer
|
||||
jmp color_loop
|
||||
|
||||
message:
|
||||
!text "HELLO, COMMODORE 64!"
|
||||
!byte 13, 13
|
||||
!text "UDV TASI - JO PROGRAMOZAST!"
|
||||
!byte 13, 0
|
||||
Reference in New Issue
Block a user