Rev 543 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed
06.01.2012, lvd:NMI from ROM: execute M1 at 0066, then swap to ram page FF (savelij request)DONE and tested. Need to add somewhere DOSON bit to distinguish ROM NMIsfrom usual ROM page and from DOSed ROM page.DONE and tested a bit.overscreen AVR display: юзаем 1 штуку памяти. Всего 512*8 = 4096 бит.64x64, 128x32, 256x16? Выдача сверху на бордюре белым по чёрному. Запись:со стороны АВРки, сразу весь массив. Биты включения и обнуления адреса (2 регистра).AVR access to SDcard: делаем бит в SPI-контроллере для avr, что мол захватитьдоступ. Доступ захватывается, как только Z80 поднимет CS на sdкарту. После этогоконтроль над CS и отправкой-приёмом данных переходит к AVR. Z80 ничего сделатьне может: записи в игнор, чтения - говно. Софты должны диагностировать такое,как отсутствие sdкарты. АВРка работает так: бит для залочки (чтение-запись),бит для поднятия-опускания CS (запись), регистр чтения-записи, аналогичный пофункциональности Z-контроллеровскому.DONE and tested!!!!readback fontrom: читать symbyte в порт. Для считывания надо руками на экранеустраивать "мультиколор" с перебиранием всех байтов pixbyte. Так как за 8 строчекпроходит только 1 ряд символов, то за это время можно считать ну пусть 16 символов.за 25 строчек - 400. Итого вполне можно считать фонтрому за кадр. На каждую группуиз 5 символов придётся 20 тактов 7мгц (nowait), вполне достаточно для считывания(INI:INC B).DONE!!!! Z80 routine done!03.01.2012, lvd:x640 ham mode:00rrggbb load two pixels colors (x320 truъ color)0101RRrr modify (XOR or ADD) color components of adjacent x640 pixels0110RRgg0111RRbb1001GGrr1010GGgg1011GGbb1101BBrr1110BBgg1111BBbb0100xxxx ?1000xxxx ?1100xxxx ?screen format ?320x200 or 256x192if 320x200, which organization?320x200 variants: 320 bytes per line, 512 bytes per line, ???in parallel, we can have paletted x640 16c mode with byte formatlike current x320 or x256 16cВопрос с форматом -- что делать для 3 кодов?Нужен ли вообще такой ХАМ.Вопрос с алонекодером - делать ли ему префетч скроллок каждую строкуиз рамы?Скроллки: ворд Х-скролла (9 бит: 0..511), ворд Y скролла (0..511 или сколько там).Алоний ещё хочет dual playfield по 16 цветов каждый - надо ли и как?11.06.2011, lvd:(в порядке бреда)про кэш:1. 2 кусочка по 256 байт из 1 штуки памяти2. на каждый кусочек - тэг 8бит и общий бит валидности3. на каждый ворд из всех 256 - свой бит валидности. при необходимости можно играться -делать больше кусочков, но в сумме меньше вордов, чтобы сэкономить биты валидности накаждый ворд.4. условия заполнения кеша:1) чтение по M1 - если теги не совпадают, выбирается одна из 2 половинок (по какой-либометодике), переписывается тэг, инвалидируются все ворды, новый ворд пишется, половинкамаркируется в целом валидной.2) чтение не по М1 - если попадает в кеш, то слово валидируется, если не попадает - игнор.3) запись, попадая в кеш, инвалидирует слово5. условия инвалидации кеша1) любая запись в порты (или в некоторые порты) инвалидирует весь кеш2) исполнение из пзу инвалидирует кеш