From 3d23229a38e7c843289569d12fd0deb7ea5d7a17 Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Fri, 3 Nov 2023 17:28:41 +0200 Subject: Implement more mmio for text mode --- asm/bootstrap.atk16 | 4 ++++ asm/text_mode.atk16 | 28 +++++++++++++++++++++++++++- 2 files changed, 31 insertions(+), 1 deletion(-) (limited to 'asm') diff --git a/asm/bootstrap.atk16 b/asm/bootstrap.atk16 index 47f411e..9d69872 100644 --- a/asm/bootstrap.atk16 +++ b/asm/bootstrap.atk16 @@ -8,6 +8,8 @@ @let vt_term_pp_addr 0x15 ; Terminal peripheral address @let vt_kb_pp_addr 0x16 ; Keyboard peripheral address @let vt_gr_mode_addr 0x17 ; Graphics mode setting address +@let vt_sprite_mem 0x18 ; Sprite memory address +@let vt_text_mem 0x19 ; Text memory buffer address ; memory segments @let stack_segment 0x8000 @@ -34,6 +36,8 @@ terminal_addr ; 0x15 keyboard_addr ; 0x16 gr_mode_addr ; 0x17 + sprite_mem ; 0x18 + text_mem ; 0x19 @label hlt_isr ldi 0x55 RE diff --git a/asm/text_mode.atk16 b/asm/text_mode.atk16 index 8fbdb83..f560c68 100644 --- a/asm/text_mode.atk16 +++ b/asm/text_mode.atk16 @@ -2,11 +2,37 @@ @opt csr_scratch RH @use ext_std:* -; bootstrap code (must be called to setup mandatory data) +; bootstrap code (must be called to set up mandatory data) ; will jump to label main @include bootstrap @label main + ldi vt_text_mem RA + ldr RA RA + ldi 4 RB ; letter D + str RB RA + addi RA 1 RA + ldi 5 RB ; letter E + str RB RA + addi RA 1 RA + ldi 1 RB ; letter A + str RB RA + addi RA 1 RA + ldi 4 RB ; letter D + str RB RA + addi RA 1 RA + ldi 2 RB ; letter B + str RB RA + addi RA 1 RA + ldi 5 RB ; letter E + str RB RA + addi RA 1 RA + ldi 5 RB ; letter E + str RB RA + addi RA 1 RA + ldi 6 RB ; letter F + str RB RA + ; set graphics mode to sprite mode ; set_graphics_mode gr_sprite_mode set_graphics_mode gr_text_mode -- cgit v1.3