Skip to content

Commit

Permalink
change font API
Browse files Browse the repository at this point in the history
  • Loading branch information
frstudent committed Mar 17, 2024
1 parent 08b15d7 commit 2437b1e
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 9 deletions.
10 changes: 5 additions & 5 deletions demo.asm
Original file line number Diff line number Diff line change
Expand Up @@ -232,13 +232,13 @@ include lib/asm/tty/tty.asm
include lib/asm/emulate/div.asm
include demos/visual.asm

$dosfont1 import lib/asm/vga/fonts/CYRTHIN-Nesterenko-8x16.utf8.fnt
;$dosfont1 import lib/asm/vga/fonts/CYRTHIN-Nesterenko-8x16.utf8.fnt
;$dosfont2 import lib/asm/vga/fonts/DK-Feoktistov-8x16.utf8.fnt
$dosfont3 import lib/asm/vga/fonts/beta-Chi-Sovt-8x16.utf8.fnt
$dosfont4 import lib/asm/vga/fonts/EDFN-Anry-VGA3-8x16.utf8.FNT
;$dosfont3 import lib/asm/vga/fonts/beta-Chi-Sovt-8x16.utf8.fnt
;$dosfont4 import lib/asm/vga/fonts/EDFN-Anry-VGA3-8x16.utf8.FNT
;$dosfont5 import lib/asm/vga/fonts/MYFONT-8x16.utf8.FNT
$dosfont6 import lib/asm/vga/fonts/Goryachev-UNI_8X16.utf8.fnt
$dosfont7 import lib/asm/vga/fonts/MYFONT-8x16.utf8.fnt
;$dosfont6 import lib/asm/vga/fonts/Goryachev-UNI_8X16.utf8.fnt
;$dosfont7 import lib/asm/vga/fonts/MYFONT-8x16.utf8.fnt

function _test_chars
push r15
Expand Down
1 change: 1 addition & 0 deletions demos/visual.asm
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
function visual_test
load r14, 0x8000 ; установка вершины стека
call _vertical_scroll_demo
xor r0, r0
send
end

Expand Down
11 changes: 7 additions & 4 deletions lib/asm/vga/draw_char.asm
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
; --- Точка входа при отладке. Она должна быть первой в файле
; Не должна вызываться программой и служит как тестовый заголовок
function _test_char
function test_char
load r14, 0x2000 ; set stack
load r0, 32
load r1, 0x80000000
Expand All @@ -10,6 +10,7 @@ function _test_char
send
end

$font_selector equ 0xfffeffd0

; --- Функция вывода символа на VGA экран по координатам и нужным цветом
; Вход: R0 - код символа
Expand All @@ -28,7 +29,7 @@ function _draw_char
push r1
load r10, 2528 ; Размер следующая строка (640 - 8) * 4

lea r7, $font_selector
load r7, $font_selector ; Читает из регистра адрес текушего шрифта в памяти
mov r7, (r7)
shl r0, 4
clc
Expand Down Expand Up @@ -65,14 +66,16 @@ next:
return
end

$font_selector dq 0
;$font_selector dq 0


; Устанавливает указатель на начало шрифта 8x16
; Вход:
; R7 - адрес памяти шрифта

function _select_font
lea r6, $font_selector
; lea r6, $font_selector
load r6, $font_selector
mov (r6), r7
return
end
Expand Down

0 comments on commit 2437b1e

Please sign in to comment.