![]() |
|
|
|
|
|
#1 | |
|
Activist
Join Date: 7th December 2006
Location: Минск
Posts: 214
Thanks: 65
Thanked 18 Times in 11 Posts
![]() |
Quote:
. у тя очень окуратненькие клавиши получились
__________________
U9EP3C![]() БЭМЗ ПЭВМ БАЙТ 48к (1995.03) CAHTAKA.002 48k(1991.06) CAHTAKA.002 48k(1992.08) SPECCY.2007 48k(2008.09)Б-1 (расширение памяти до 128к (РУ5+РУ5)и YM2149F) aSPECT[/URL]- miniZXDevBOARD (v1.02) |
|
|
|
|
|
|
#2 |
|
Banned
Join Date: 18th September 2006
Location: Москва
Posts: 838
Thanks: 30
Thanked 51 Times in 34 Posts
![]() ![]() |
C разрешения автора, я захостил картинку, pdf и кореловый исходник у себя
http://znoxx.wordpress.com/projects/speccy-2007/ См. в конце страницы |
|
|
|
|
|
#3 |
|
Member
Join Date: 12th December 2007
Location: Moscow
Posts: 145
Thanks: 5
Thanked 9 Times in 7 Posts
![]() |
Можно ещё на ESC CS+BREAKSPACE заделать.
В key_matrix.c размер массива увеличиваем с 72 до 73 и в конце перед элементом со всеми нулями добавляем { 0, 0x76, 0x0, 0x1, 0x7, 0x1 } |
|
|
|
|
|
#4 |
|
Banned
Join Date: 18th September 2006
Location: Москва
Posts: 838
Thanks: 30
Thanked 51 Times in 34 Posts
![]() ![]() |
denisv, я правильно понял, что беру ТЕКУЩИЙ исходник с первой страницы, подкладываю эти патчи (плюс патч для ESC), собираю, и должно быть счастье с A4Tech клавиатурой ?
|
|
|
|
|
|
#5 | |
|
Member
Join Date: 12th December 2007
Location: Moscow
Posts: 145
Thanks: 5
Thanked 9 Times in 7 Posts
![]() |
Quote:
Да и ещё, после проделывания вышеперечисленных действий желательно в main.c подправить размер массива key_matrix: extern byte PROGMEM key_matrix[59][6]; 59 изменить на 73. |
|
|
|
|
|
|
#6 |
|
Member
Join Date: 12th December 2007
Location: Moscow
Posts: 145
Thanks: 5
Thanked 9 Times in 7 Posts
![]() |
Совсем закопался в сигналах, тупо не могу понять.
Суть вот в чем (привожу кусок кода VHDL из прошивки CPLD): TRDOS_ENTRY <= '1' when M1 = '0' and MREQ = '0' and IOREQ = '1' and VideoRead = '1' and (A15 = '0' and A14 = '0' and VA(13 downto 8) = "111101") else '0'; Данный сигнал выведен наружу в CPLD-шке: По идее когда процессор производит исполняет команду с адресов 0x3d00-0x3dff, этот сигнал должен быть в единице, и в 0 в противном случае. На деле же получается, что сигнал периодически устанавливается в 1, даже когда команды оттуда не выбираются. Подскажите это я туплю или так и должно быть? |
|
|
|
|
|
#8 |
|
Member
Join Date: 12th December 2007
Location: Moscow
Posts: 145
Thanks: 5
Thanked 9 Times in 7 Posts
![]() |
Ок, спасибо. Сегодня вечером попробую.
Та же фигня. Вставил в процесс, который формирует INT для AVR-ки, следующий код: if M1 = '0' and MREQ = '0' and RD = '0' and VideoRead = '1' and (A15 = '0' and A14 = '0' and VA(13 downto 8) = "111101") then TRDOS_ENTRY <= '1'; else TRDOS_ENTRY <= '0'; end if; После прошивки PLD-шки четко видны обращения. Last edited by denisv; 19th February 2008 at 21:09. |
|
|
|
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
|
|