Последний раз редактировалось lisica; 26.02.2011 в 20:04.
Робик 1024(пентагоновские тайминги),+ 7Мц+, 2AY(TS),+ контроллер дисковода,+ 3.5,+ 5.25 флоп,+CMOS,+ mouse(caro),+ Flash.
Pentagon 128(1991г.)+YМ
программатор 2732-27512.
Вот мое решение проблемы
Резисторы на:
R - 470е
G - 0е
B - 1к2
Syn (13) - 100е
Соединил выходы с резисторов и подал на видеовход тюнера.
Земля - к земле.
Включение/выключение ТВ/VGA - ножка GPI. Посадил туда перемычку чтобы не тыркать клавиатуру лишний раз, а отключать ТВ просто снятием перемычки.
Прошивку класть смысла нет, у меня она "особенная" изза клавиатурного модуля, поэтому по кускам:
signal videoout_mode : std_logic;
signal hsync : std_logic;
signal hsync_buf : std_logic;
signal vsync_buf : std_logic;
.........................
process(clk_cnt,vid_h_cnt)
begin
if clk_cnt(0)'event and clk_cnt(0) = '1' then
if vid_h_cnt = 328 then hsync <= '0'; end if;
if vid_h_cnt = 356 then hsync <= '1'; end if;
end if;
end process;
...........................
VGA_R2 <= vid_sin_bus(5) when videoout_mode = '0' else vid_sout_reg(5);
VGA_G2 <= vid_sin_bus(4) when videoout_mode = '0' else vid_sout_reg(4);
VGA_B2 <= vid_sin_bus(3) when videoout_mode = '0' else vid_sout_reg(3);
VGA_R1 <= vid_sin_bus(2) when videoout_mode = '0' else vid_sout_reg(2);
VGA_G1 <= vid_sin_bus(1) when videoout_mode = '0' else vid_sout_reg(1);
VGA_B1 <= vid_sin_bus(0) when videoout_mode = '0' else vid_sout_reg(0);
VGA_R0 <= 'Z';
VGA_G0 <= 'Z';
VGA_B0 <= 'Z';
hsync_buf <= vid_hsync;
vsync_buf <= vid_vsync;
VGA_HSYNC <= hsync_buf when videoout_mode = '0' else not(hsync xor vsync_buf);
VGA_VSYNC <= vsync_buf;
videoout_mode <= '0' when GPI = '1' else '1';
Собственно, всё.
Последний раз редактировалось Ewgeny7; 26.02.2011 в 20:43.
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
Робик 1024(пентагоновские тайминги),+ 7Мц+, 2AY(TS),+ контроллер дисковода,+ 3.5,+ 5.25 флоп,+CMOS,+ mouse(caro),+ Flash.
Pentagon 128(1991г.)+YМ
программатор 2732-27512.
Код изменил, хотя толку от этого мало. Прикрути лучше UDMA SC.
Код:process(CLK, ENA) begin if (ENA = '0') then outa <= (others => '0'); outb <= (others => '0'); outc <= (others => '0'); outd <= (others => '0'); elsif (CLK'event and CLK = '1') then if ((A = X"0F" or A = X"79") and nIORQ = '0' and nWR = '0' and DOS = '0') then outa <= DI; elsif ((A = X"1F" or A = X"7B") and nIORQ = '0' and nWR = '0' and DOS = '0') then outb <= DI; elsif ((A = X"4F" or A = X"F9") and nIORQ = '0' and nWR = '0' and DOS = '0') then outc <= DI; elsif ((A = X"5F" or A = X"FB") and nIORQ = '0' and nWR = '0' and DOS = '0') then outd <= DI; end if; end if; end process;
---------- Post added at 21:46 ---------- Previous post was at 21:41 ----------
Можно переделать с маской, для одиночной записи сразу в 1/2/3/4 регистра.
Робик 1024(пентагоновские тайминги),+ 7Мц+, 2AY(TS),+ контроллер дисковода,+ 3.5,+ 5.25 флоп,+CMOS,+ mouse(caro),+ Flash.
Pentagon 128(1991г.)+YМ
программатор 2732-27512.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Вроде заработала клавиатура с модулем Влада. Выясняю детали...
ScorpEvo ZS 1024 turbo+ CF-HDD/FDD/Mouse/SMUC 3.1/ProfROMse/NeoGS/ZC
Speccy-2007 128/AY/TR-DOS
Сайт с документацией к "Scorpion ZS 256"
извиняюсь, что вмешиваюсь, но можно я свои пять копеек вставлю... возможно в конфиг soundrive добавить порт #B3 (GS-covox, который почему-то выкинул БК-0010 из своей схемы) и порт Scorpion`a #DD.
to БК-0010, по твоей схеме, второй режим soundrive полезен только портом #FB, ну и теоретически лучшей дешифрацией (хотя, я так понял на практике не проверялось)... откуда взялись порты #79, #7B? зачем они вообще нужны, если стандартные для второго режима были (лет этак 10-12) #F1, #F3 (на который отзывался порт #B3 GS-Covox), ну и конечно #F9 и #FB?.. но это уже не в этой теме обсуждать...
Profi must live!
Моё железо...
1. Profi 5.06/1Mb(DRAM)+Profi5.06(UP)/HDD/3`5FDD/CF512Mb/SD-CARD
3. Profi 6.2 Rev. B/1Mb/3`5FDD/HDD3.2Gb
4. Profi 5.05(down)/1Mb+Profi 5.03(UP)/Pentagon_Fix
Все укомплектованы:
Profi_ZX-BUS/ZXMC2/NemoIDE/SounDrive[свернуть]
Ссылка на Telegram-канал поддержки пользователей Profi.
не надо этот огород городить. Есть два наиболее распространённых стандарта - Covox (одноканальный) - для всего мира, и SounDrive (четырёхканальный) - в нашем узком кругу. Всё остальное - это конверсии из этих стандартов. Нет ничего ценного и уникального, чего нет на ковоксе и соунддрайве, в других реализациях портов, и поддерживать их нет смысла. Таких портов не два, их есть куча, и под них никто ничего не пишет, в лучшем случае существуют старые конверсии с ковокса. Ты предлагаешь все их прикрутить? Вобщем FPGA большая, можно весь хлам в неё запихать если задаться целью..
---------- Post added at 03:20 ---------- Previous post was at 02:55 ----------
vlad, лучше проясни всёж вопрос на счёт 8237, она реально влезет в FPGA, ..и ещё пара таймеров 8254?
Последний раз редактировалось Black_Cat; 27.02.2011 в 03:17.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)