Page 2 of 2

Re: Вопрос про BIOS

PostPosted: 22 Aug 2011, 09:59
by DimkaM
остановился на первом варианте, только в начало добавил прямой доступ к устройствам(от Савелия).
вызов идёт по RST #18, регистр A=№ функции, аргументы на стеке. Стек должен быть в пределах #8000-#FFFF, переменные(если на них есть указатель в аргументах, а также глобальные переменные типа FATFS) должны быть в пределах #8000-#FFFF.
По RST #38 лежит драйвер опроса клавы, стыренный из Бейсика. А также счетчик прерываний. Но т.к. ОЗУ, то можно будет заменить на свой CALL.
По RST #10 будет(пока только пишется) лежать драйвер TEXTMODE'а.
По RST #0(#6000) лежит самокопирование в нужные пейджи(30 и 31). После копирования наверно нужно заменить на RESET в сервисROM, но я незнаю как. И идентификатор бы надо добавить.

Если оно кому нибудь нужно, то активно участвуем. А то я сделаю как считаю нужным и будете потом выёбыватся.

Как всё проверю в работе, так выложу.

Re: Вопрос про BIOS

PostPosted: 22 Aug 2011, 20:17
by deathsoft
DimkaM wrote:А то я сделаю как считаю нужным и будете потом выёбыватся.

Или, что скорее, забьем и сделаем как считаем нужным (как я писал в соседнем треде).

Re: Вопрос про BIOS

PostPosted: 22 Aug 2011, 20:33
by DimkaM
deathsoft wrote:Или, что скорее, забьем и сделаем как считаем нужным
Я так не умею, ума не хватает. Тырю у всех по чуть-чуть.

PostPosted: 23 Aug 2011, 05:11
by SfS
DimkaM, ты архив исходников и как их компилить выложи:) А то по таблице джампов что-то оценить и попробовать трудно:)
Кстати, не помешает и краааатенький коммент - в какую функцию чего и как передавать и чего и как оттуда вернётся)

Re: Вопрос про BIOS

PostPosted: 23 Aug 2011, 07:44
by DimkaM
SfS wrote:Кстати, не помешает и краааатенький коммент - в какую функцию чего и как передавать и чего и как оттуда вернётся)
Щас постараюсь какой нить примерчик сообразить. В основном бьюсь с сервером на COM-порт, уже три раза всё переписывал. Как надоедает, в этот топик перехожу.

Re: Вопрос про BIOS

PostPosted: 23 Aug 2011, 15:17
by DimkaM
SfS wrote:DimkaM, ты архив исходников и как их компилить выложи:)

Нда. Исходники самого FatFs ща выложить не могу, до дому надо добратся. Под рукой только бинарь щас.
Собрал кое чего в кучу, пробовал под эмулем, компилится и работает. На реале чуть позже опробую, отпишусь.

За говнокодинг не ругать и не смеятся, во первых кодить не умею, во вторых на работе постоянно отвлекают, работать заставляют.
Ошибки не обрабатываются, времени не было.
Описал только часть функций. Остальное - позже.

Компилить Сясмом.

Самое интересное в main_h и sample, остальное не комментировал.

Re: Вопрос про BIOS

PostPosted: 23 Aug 2011, 15:46
by DimkaM
Проверил на Еве - работает.

Re: Вопрос про BIOS

PostPosted: 26 Aug 2011, 10:23
by DimkaM
Исходники fatfs.
Компилятор z88dk.
По умолчанию компилит с адреса 0х8000 и соответственно по этому адресу идет инициализация(которая юзает бейсик), потом ещё какаято фигня,потом запускает майн() из майн.с. Соответственно нужно удалить ассемблерную вставку из майн(). И вы получите запускаемое приложение с адреса 0х8000.

Но лично мне эта фигня не нужна. И если вы хотите получить либу в таком виде как у меня, то нужно в папке z88dk\lib заменить файлик spec_crt0.asm. В этом файлике есть переменная myzorg которая указывает с какого адреса компилить(0х2008 в моём случае). И вы получите либу в начале которой идёт таблица вызовов.
И советую не трогать файл ffconf, так как я мог чёнить править и поудалять из ff.c. В этом случае качайте оригиналы исходников

Re: Вопрос про BIOS

PostPosted: 29 Aug 2011, 16:36
by DimkaM
TS-Labs wrote:Посмотри в сторону IAR z80. Он компилит намного лучший код, чем этот з88.

Может в 16кило запихает, тогда стоит попробовать.
TS-Labs wrote:Если нужен сабж, могу дать.

Давай, а то что то везде пропал. И доки, ежли какие есть по нему, тоже давай.