Важная информация

User Tag List

Страница 3 из 7 ПерваяПервая 1234567 ПоследняяПоследняя
Показано с 21 по 30 из 62

Тема: ЮТ-88: Реализация на ПЛИС (DE1)

  1. #21
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,846
    Спасибо Благодарностей отдано 
    83
    Спасибо Благодарностей получено 
    227
    Поблагодарили
    166 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Santechnik Посмотреть сообщение
    Запущенная же как положено с адреса 3100 она похоже удаляет содержимое адресов 100-3FF куда была загружена программа CH.COM.
    Вот поэтому и написано "предварительно загруженная" Я бы так сделал:
    1. загрузил CP/M и запустил как положено с адреса 3100
    2. нажал сброс
    3. загрузил CH.COM
    4. запустил CP/M с адреса DA00 (это холодный старт CP/M)

  2. #22
    Master Аватар для L Juriy
    Регистрация
    29.11.2009
    Адрес
    г. Бийск
    Сообщений
    521
    Спасибо Благодарностей отдано 
    31
    Спасибо Благодарностей получено 
    39
    Поблагодарили
    30 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Santechnik,
    1 Загружаешь СРМ в адрес 3100 и запускаешь ее.
    2 Выходишь в монитор и грузишь с магнитофона СН.СОМ в 100 адрес
    3 Запускаешь СРМ с адреса DA00
    Дальше по инстукции сахраняешь её командой SAVE
    Вроде как то так
    Микро-80, Радио-86РК, Океан 240, Ириша, Спектрум-48, NEC PC-8201, ЮТ-88(2017) .

  3. #23
    Member Аватар для Santechnik
    Регистрация
    08.05.2010
    Адрес
    Brisbane, AU
    Сообщений
    193
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Спсибо всем за совет по запуску CP/M. Все заработало. Только вот квази-диск не работает. Видимо я неправильно понял логику его работы. Буду разбираться дальше. Только сейчас времени опять нет - новогодние/рождественские каникулы на носу и дел невпроврот - все выходные расписаны. Так что небольшая пауза пока
    А пока вот вопрос по программному обеспечению. Там утилиты всякие в СР/М должны быть типа STAT.COM, POWER.COM и т.д. Где их взять? А то я скачал что-то из и-нета от какого-то Xerox, работать-то работает, но все надписи на "русском" (типа вместо SPACE - СПАЦЕ ).Какая-то кодовая таблица другая.

  4. #24
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,846
    Спасибо Благодарностей отдано 
    83
    Спасибо Благодарностей получено 
    227
    Поблагодарили
    166 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Это просто у ЮТ-88 вместо маленьких латинских большие русские. Собственно, в 7-битный набор больше и не влезет - либо то, либо другое. Можно в любом HEX-редакторе исправить маленькие латинские на большие

  5. #25
    Member Аватар для Santechnik
    Регистрация
    08.05.2010
    Адрес
    Brisbane, AU
    Сообщений
    193
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А-ааа! Понятно! Ну это не долго переделать. Займусь потом. Вообще хочу наборчик таких программ на квазидиске собрать, чтобы потом через DE1 Control Panel просто образ памяти в SRAM заливать и вся система вместе с квазидиском загружена (вот еще один пункт в to do: "Прикрутить для этого интерфейс").
    Ввиду "популярности" компа приделывать SD видимо бессмысленно, и квазидиска с программами должно хватить на поиграться и пощупать

  6. #26
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,105
    Спасибо Благодарностей отдано 
    772
    Спасибо Благодарностей получено 
    643
    Поблагодарили
    398 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В адаптированных биосах обычно были какие-то способы настроить монитор для работы в разных режимах: latin1 и koi7 так, что все программы могли работать без переделок -- и английские и русские. К сожалению, не могу ничего вспомнить про это, поищи документацию.
    Больше игр нет

  7. #27
    Member Аватар для Santechnik
    Регистрация
    08.05.2010
    Адрес
    Brisbane, AU
    Сообщений
    193
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    О! Отличная идея! Поставлю второй знакогенератор и выведу переключение на один из выключателей на борде. Где только прошивку взять, чтобы не рисовать? Может от Радио подойдет? Посмотрю попозже.

  8. #28
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,846
    Спасибо Благодарностей отдано 
    83
    Спасибо Благодарностей получено 
    227
    Поблагодарили
    166 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Возьми файл symgen.bin (из эмулятора Пыхонина, он-же и в моём эмуляторе лежит). Там куча разных вариантов. Посмотреть можно сделав конфиг для моего эмулятора

    Код:
    main.Caption="Test"
    
    font : Memory {
      rom="symgen.bin"
    }
    
    vid : orion-video {
      plane[0][0]=font
    }
    Первый килобайт, по-моему, тебе как раз подойдёт (максимум, придётся инвертировать, если у тебя инвертированный знакогенератор, как в РК).

    ---------- Post added at 15:23 ---------- Previous post was at 15:15 ----------

    А если добавить ещё и CPU:
    Код:
    CPU : K580wm80a {
    }
    то можно будет запускать отладчик, и выбрав в нём ПЗУ (по Ctrl+M), редактировать его и наблюдать изменения (после закрытия отладчика).

    ---------- Post added at 15:24 ---------- Previous post was at 15:23 ----------

    Сохранять - Ctrl+S.

  9. #29
    Member Аватар для Santechnik
    Регистрация
    08.05.2010
    Адрес
    Brisbane, AU
    Сообщений
    193
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Спасибо, b2m! То что надо! Сегодня прикрутил по быстрому - работает как часы. Только проинвертировать предварительно файл пришлось. Зашил в 2К ПЗУ на ПЛИС вторым килобайтом, а А10 повесил на выключатель. Работы на 5 минут. Одним пунктом из todo меньше

    Потестировал подольше - неидеально все же. Например какие-то ноты там где перевод строки вставляет. Надо чистить прошивку по всей видимости...
    Последний раз редактировалось Santechnik; 15.12.2010 в 14:14.

  10. #30
    Member Аватар для Santechnik
    Регистрация
    08.05.2010
    Адрес
    Brisbane, AU
    Сообщений
    193
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Знакогенератор подчистил. Теперь работает нормально. Не нравятся некоторые символы из новой таблицы (например $), так что в todo записал пройтись по всем основным символам и заменить их со старой таблицы если выглядят хуже.

    Бьюсь с квазидиском. Видимо что-то недопонимаю в принципе его работы. Нужна помощь зала

    Вот такой код у меня за память и квазидиск отвечает:

    Код:
    process (clk20, sync_cpu)			--	эмуляция контроллера памяти КР580ВК38
    	begin
    		if (clk20'event and clk20 = '0' and sync_cpu = '1') then
    			db_status <= d_bus_O;
    		end if;	
    end process;
    
    mem_rd <= '1' when (sync_cpu = '0' and db_status(7) = '1' and rd_en = '1' and wr_n = '1') else '0'; -- разрешение чтение из памяти
    io_rd <= '1' when (sync_cpu = '0' and db_status(6) = '1' and rd_en = '1' and wr_n = '1') else '0';	-- разрешение чтение из порта
    mem_wr <= '1' when (sync_cpu = '0' and db_status(1) = '0' and wr_n = '0' and rd_en = '0') else '0';	-- разрешение записи в память
    io_wr <= '1' when (sync_cpu = '0' and db_status(4) = '1' and wr_n = '0' and rd_en = '0') else '0';	-- разрешение записи в порт
    io_stack <= '1' when (sync_cpu = '0' and db_status(2) = '1') else '0';	-- разрешение обращения к стэку
    
    ..............................
    здесь вырезан неинтересный блок распределения адресов
    ..............................
    
    SRAM_DQ(7 downto 0) <= d_bus_O when (ram_wr = '0' or (io_stack = '1' and wr_n = '0')) else "ZZZZZZZZ";			
    SRAM_WE_N <= ram_wr;			
    SRAM_CE_N <= '0';
    SRAM_LB_N <= kvazi_block(2);
    SRAM_UB_N <= not kvazi_block(2);
    SRAM_OE_N <= '0';
    SRAM_ADDR <= kvazi_block(1 downto 0) & a_bus;
    
    process (clk20)
    	begin
    		if (clk20'event and clk20 = '0') then
    			if (io_wr = '1' and a_bus (15 downto 12) = "0100" and sync_cpu = '0') then
    				case d_bus_O(3 downto 0) is
    					when "1110" => kvazi_block <= "100";  -- если старший бит 1, то квазидиск включен
    					when "1101" => kvazi_block <= "101";
    					when "1011" => kvazi_block <= "110";
    					when "0111" => kvazi_block <= "111";
    					when OTHERS => kvazi_block <= "000";
    				end case;
    			end if;
    		end if;
    end process;
    a_bus[15..0] - адресная шина, d_bus_O[7..0] и d_bus_I[7..0] - выходная и входная шины данных. sync_cpu - сигнал SYNC процессора.

    Что я недопонял?

Страница 3 из 7 ПерваяПервая 1234567 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Радио-86РК: Реализация компьютера на ПЛИС
    от Santechnik в разделе Радио-86РК
    Ответов: 162
    Последнее: 06.10.2018, 05:51
  2. Ответов: 65
    Последнее: 14.11.2014, 08:05
  3. реализация JavaScript-a на ZX-Spectrum-48k
    от bigral в разделе Программирование
    Ответов: 4
    Последнее: 10.01.2010, 12:02
  4. Лучшая реализация игры
    от Nerzool в разделе Игры
    Ответов: 19
    Последнее: 05.07.2007, 05:35

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •