;блок знакогенератора и вывода символа и строки
        .LA     100000
; модуль линкуется с адреса 100000, подключается в окно1,
; экран при этом подключается в окно0.

; массив фонта находится в файле BKFONTW.FNT, линкуется с именем BKFONT, это
; стандартный шрифт БК11М, расширенный с байта до слова
; массив BKFONT содержит для простоты все 256 знаков размером 2 байта х 8
; строк, первые 040 из них - пустые. размер каждого знака 16. байтов или 8 слов.
; знаки с 040 по 0377 существуют.
PG1BGN:
; рисуем символ уже поверх нужного фона. часть оконной процедуры
; Вход: R0 - адрес вывода
;       R1 - код
; портит R5
DRWCHW: mov     R1, -(SP)
        mov     R0, -(SP)
        bic     #177400, R1
        asl     R1
        asl     R1
        asl     R1
        asl     R1
        add     #BKFONT, R1
        mov     #10, R2
1$:     mov     (R1)+, R5
        beq     2$
        bic     R5, (R0)
        bic     @#COLMSK, R5
        bis     R5, (R0)
2$:     add     #100, R0
        sob     R2, 1$
        mov     (SP)+, R0
        mov     (SP)+, R1
        return

; Вывод символа.
; Вход: R2 - код символа, R1 - адрес вывода
OUTCHR: mov     R0, -(SP)
        mov     R2, -(SP)
        mov     R3, -(SP)
        bic     #177400, R2
        asl     R2
        asl     R2
        asl     R2
        asl     R2          ;умножаем на 16.
        add     #BKFONT, R2
        mov     #10, R3

1$:     mov     @#BGCOLR, (R1)
        mov     (R2)+, R0
        beq     2$          ;если 0, то следующие 3 команды делать необязательно.
        bic     R0, (R1)
        bic     @#COLMSK, R0
        bis     R0, (R1)
2$:     add     #100, R1
        sob     R3, 1$
        mov     (SP)+, R3
        mov     (SP)+, R2
        mov     (SP)+, R0
        sub     #776, R1
        return


        .END
;после прилинковать массив BKFONTW.FNT с именем BKFONT
;а затем прилинковать метку PG1END
Распределение памяти.
Стр0 - основной код
Стр1 - дополнительный код. страница подключается в окно1.
       но код по возможности должен иметь возможность работать и в окне0.
       так же буфер для скомпилированного SND файла (если он туда полезет)
Стр2 - буфер экрана
Стр3 - TSN файл
Стр4 - Андос, МКдос и т.п.
Стр5 - экран основной
Стр6 - экран редактора сэмплов.

