Отвечал по этой теме и теперь по поиску не могу ее найти. Ответил немного неточно и теперь открываю новую тему для уточнения.
1. Выделение памяти программ
В файле линкера было
Код:
|
CODEPAGE NAME=page START=0x102A END=0x7FFF |
Вырезаем для фонтов участок памяти длиной 0х600, добавляем строчку
Код:
|
CODEPAGE NAME=page START=0x102A END=0x79FF
CODEPAGE NAME=font_code START=0x7A00 END=0x7FFF PROTECTED |
Обратите внимание на PROTECTED, мы защищаем свой участок памяти от компилятора
В конце файла линкера добавляем
Код:
|
SECTION NAME=FONT_CODE ROM=font_code |
Обращаемся из своей программы
Код:
|
#pragma romdata font_code =0x7A00
const rom char font5[] = |
2. Выделение оперативной памяти
Было
Код:
|
DATABANK NAME=usb6 START=0x600 END=0x6FF PROTECTED
DATABANK NAME=usb7 START=0x700 END=0x7FF PROTECTED |
Объединяем 2 страницы в одну
Код:
|
DATABANK NAME=ekran START=0x600 END=0x7FF PROTECTED
SECTION NAME=EKRAN RAM=ekran |
Обращаемся из программы
Код:
|
#pragma udata ekran=0x600
unsigned char ekran[128][4]; |