cpu 8048 ; asl needs this to know how to assemble
org 0410h ; start of ROM, but bypass interrupts, etc.
start call 00f1h ; BIOS reset
call 011ch ; BIOS display off
mov r0,#10h ; starting character pointer for VDC
mov r2,#01h ; 02 characters
mov r3,#28h ; x position
mov r4,#70h ; y position
mov r6,#03h ; color start with grey
startv mov a,#0ffh
movp a,@a
add a,#5ah
mov r7,a
mov r1,#10h
findc inc r1
inc r1
inc r1
djnz r7,findc
mov r5,#01h
call 03eah ; print character BIOS routine
mov a,r1 ;grab current pointer to string
jmp disp
startd call 0127h
mov r7, #0ffh
lp1 jmp 0700h
lp2 djnz r7, lp1
call 011ch ; BIOS display off
jmp start
org 04ffh ; force the location of hello world
db 0a7h
org 0500h
disp movp a,@a ; move mem at r1 to accumulator
mov r5,a
call 03eah ; print character BIOS routine
mov r5,#27h
call 03eah ; print character BIOS routine
inc r1
mov a,r1 ;grab current pointer to string
movp a,@a ; move mem at r1 to accumulator
mov r5,a
call 03eah ; print character BIOS routine
inc r1
mov a,r1 ;grab current pointer to string
movp a,@a ; move mem at r1 to accumulator
jmp restvid
org 0513h
db 00h,00h,00h
db 00h,00h,06h
db 00h,01h,02h
db 00h,01h,08h
db 00h,02h,04h
db 00h,03h,00h
db 00h,03h,06h
db 00h,04h,02h
db 00h,04h,08h
db 00h,05h,04h
db 00h,06h,00h
db 00h,06h,06h
db 00h,07h,02h
db 00h,07h,08h
db 00h,08h,04h
db 00h,09h,00h
db 00h,09h,06h
db 01h,00h,02h
db 01h,00h,08h
db 01h,01h,04h
db 01h,02h,00h
db 01h,02h,06h
db 01h,03h,02h
db 01h,03h,08h
db 01h,04h,04h
db 01h,05h,00h
db 01h,05h,06h
db 01h,06h,02h
db 01h,06h,08h
db 01h,07h,04h
db 01h,08h,00h
db 01h,08h,06h
db 01h,09h,02h
db 01h,09h,08h
db 02h,00h,04h
db 02h,01h,00h
db 02h,01h,06h
db 02h,02h,02h
db 02h,02h,08h
db 02h,03h,04h
db 02h,04h,00h
db 02h,04h,06h
db 02h,05h,02h
db 02h,05h,08h
db 02h,06h,04h
db 02h,07h,00h
db 02h,07h,06h
db 02h,08h,02h
db 02h,08h,08h
db 02h,09h,04h
db 03h,00h,00h
db 03h,00h,06h
db 03h,01h,02h
db 03h,01h,08h
db 03h,02h,04h
db 03h,03h,00h
db 03h,03h,06h
db 03h,04h,02h
db 03h,04h,08h
db 03h,05h,04h
db 03h,06h,00h
db 03h,06h,06h
db 03h,07h,02h
db 03h,07h,08h
db 03h,08h,04h
db 03h,09h,00h
db 03h,09h,06h
db 04h,00h,02h
db 04h,00h,08h
db 04h,01h,04h
db 04h,02h,00h
db 04h,02h,06h
db 04h,03h,02h
db 04h,03h,08h
db 04h,04h,04h
db 04h,05h,00h
db 04h,05h,06h
db 04h,06h,02h
db 04h,06h,08h
org 0600h
restvid mov r5,a
call 03eah ; print character BIOS routine
mov r5,#0ch
call 03eah ; print character BIOS routine
mov r5,#24h
call 03eah ; print character BIOS routine
mov r5,#17h
call 03eah ; print character BIOS routine
mov r5,#0Eh
call 03eah ; print character BIOS routine
mov r5,#14h
call 03eah ; print character BIOS routine
mov r5,#19h
call 03eah ; print character BIOS routine
jmp startd
org 0700h
org 07f0h
jmp lp2
|