User Tag List

Страница 10 из 22 ПерваяПервая ... 67891011121314 ... ПоследняяПоследняя
Показано с 91 по 100 из 215

Тема: Восстановление Специалистов.

  1. #91

    Регистрация
    01.12.2010
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,657
    Записей в дневнике
    21
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию



    Ура загружается!

    В качестве тактового сигнала пока используется линия PC0, а не CS. Я решил постепенно двигаться, но у меня закончились чистые ПЗУ-хи.

    Так же пока МК поддерживает лишь одну команду, загрузку файла \boot.rks. Этого пока хватит, а потом будут все команды файловой системы.

    ---------- Post added at 23:42 ---------- Previous post was at 23:40 ----------

    Принимается критика по коду загрузчика:

    Код:
    ; Загрузчик с SD-карты для компьютера Специалист
    
         .org 0C800h
    
    ;----------------------------------------------------------------------------
    
    BUS_PORT  = 0F000h
    SEND_MODE = 10001010b ; Настройка: 1 0 0 A СH 0 B CL   1=ввод 0=вывод
    RECV_MODE = 10011010b
    
    ;----------------------------------------------------------------------------
    
    Restart:     
         ; Инициализация стека (аналогично стандартному монитору)
         LXI  SP, 08EE0h
    
         ; Начало передачи
         MVI  A, SEND_MODE
         STA  BUS_PORT+3      
    
         ; Передаем код команды
         LXI  H, 0F000h
         MVI  M, 013h
         CALL Pulse ; Этой команды не будет, когда будет использоваться CS в качестве тактового сигнала
         MVI  M, 0B4h
         CALL Pulse ; Этой команды не будет
         MVI  M, 057h
         CALL Pulse ; Этой команды не будет
         MVI  M, 001h
         CALL Pulse ; Этой команды не будет
    
         ; Переключаемся в режим приема
         MVI  A, RECV_MODE
         STA  BUS_PORT+3
    
         ; МК должен ответить кодом 32h
         CALL PulseAndRecv ; Вместо CALL PulseAndRecv будет LDA 0FF00h или MOV A, M
         CPI  032h
         JNZ  Error
    
         ; Ждем пока МК прочитает файл
         CALL WaitForReady
    
         ; Если файл найден и прочитан, МК должен ответить кодом 0EAh
         CALL PulseAndRecv
         CPI  0EAh
         JNZ  Error
    
         ; Принимаем длину файла в DE
         call RecvWord
         MOV  D, B
         MOV  E, C
    
         ; Эти данные уже из файла - принимаем адрес загрузки в BC
         CALL RecvWord
         PUSH B
    
         ; Игнорируем длину из файла
         CALL RecvWord
         POP  B
         PUSH B
    
         ; Если размер файла <=512, то принять остаток X-4 байт и запустить
         LXI  H, 65535-512
         DAD  D
         JNC  L5
    
         ; Если размер файла был >512 байт, то принять остаток 512-4 байта
         LXI  H, 512-4
         
    L3:  CALL RecvBlock
    
         ; Уменьшаем счетчик на 512 байт
         DCR  D
         DCR  D
    
         ; Подождать
         CALL WaitForReady
    
         ; Если DE<=512, то принять остаток и запустить
         LXI  H, 65535-512
         DAD  D
         JNC  L4
    
         ; Принять 512 байт
         LXI  H, 512
         JMP  L3
    
    ;----------------------------------------------------------------------------
    
    L5:  ; Приём файла размером меньше 512 байт. 4 байта уже принято.
         DCX  D
         DCX  D
         DCX  D
         DCX  D
    
    L4:  ; Принимаем остаток файла размером <=512 байт.
         XCHG
         CALL RecvBlock
          
         ; Принимаем контрольный байт
         CALL PulseAndRecv
         CPI  0E1h
         JNZ  Error
    
         ; Запуск загруженной программы
         RET 
    
    ;----------------------------------------------------------------------------
    
    Error:
         ; Что бы не было конфликтов
         MVI  A, RECV_MODE
         STA  BUS_PORT+3      
     
         ; Добавить сброс МК
    
         ; Пауза и пропуск данных
         LXI  D, 1000h
    E2:  CALL Pulse
         DCR  E
         JNZ  E2
         DCR  D
         JNZ  E2
    
         JMP  Restart
    
    ;----------------------------------------------------------------------------
    ; Принять слово в BC. 
    ; Портим A.
    
    RecvWord:
        CALL PulseAndRecv
        MOV  C, A
        CALL PulseAndRecv
        MOV  B, A
        RET
        
    ;----------------------------------------------------------------------------
    ; Принять HL байт по адресу BC.
    ; Портим A.
    
    RecvBlock:
         INR H
         XRA A
         ORA L
         JZ RecvBlock2
    RecvBlock1:
         CALL PulseAndRecv
         STAX B             ; 7
         INX  B             ; 5
         DCR  L             ; 5
         JNZ  RecvBlock1    ; 10
    RecvBlock2:
         DCR  H             ; 5
         JNZ  RecvBlock1    ; 10
         RET
         
    ;----------------------------------------------------------------------------
    ; Ожидание готовности МК.
    ; Портим A.
    
    WaitForReady:
         CALL PulseAndRecv
         ORA  A
         JZ   WaitForReady
         DCR  A
         JNZ  Error         ; Нарушение протокола
         RET
    
    ;----------------------------------------------------------------------------
    ; Принять байт в A. Или отправить байт из регистра BUS_PORT.
    ; Эта подпрограмма будет исключена. Вмеcто PC0 будет использоваться CS.
    
    Pulse:
    PulseAndRecv:
         MVI  A, 1        
         STA  BUS_PORT+2
         XRA  A
         STA  BUS_PORT+2
         LDA  BUS_PORT
         RET
    
    .End
    Последний раз редактировалось vinxru; 23.01.2013 в 00:47.

  2. #91
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #92

    Регистрация
    01.12.2010
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,657
    Записей в дневнике
    21
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию



    Собрал два контроллера клавиатуры, запял преобразовать в -5 Вольт, запял разъемы и подключил их. Осталось:

    1) Контроллер цвета (DataSoft презентовал PAL-кодер, спасибо ему большое, завтра пойду забирать посылку. Теперь у моего монитора-телевизора будет RGB вход. А то делать цвет в компе, когда нет возможности это увидеть, крайне странно)

    2) Контроллер SD (Ждем разъемы под SD карту по почте и пишем софт)

    3) Допаять один блок загрузки с магнитофона и проверить оба.

    4) Выпаять панельку под ПЗУ в одном компе, добавить микросхему 155ЛА8 для поддержки ПЗУ на 16 Кб. Ну и проверить, будут ли работать ПЗУ на 16 Кб (ждем программатор по почте) (сделано)

    5) Допаять кондеров.

    6) Может быть вернуть 155КП2 вместо 155КП12. Я когда проверял, заменил пару КП2 на КП12

    Ну и корпус попробую сделать из оргстекла.
    Последний раз редактировалось vinxru; 11.02.2013 в 14:05.

  4. #93

    Регистрация
    01.12.2010
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,657
    Записей в дневнике
    21
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я считаю, что "Специалист Линевской" был рассчитан в том числе под РУ3. Так как печатная плата нарисована так, что на все 1-ые выводы приходит -5 Вольт.

    ---------- Post added at 16:34 ---------- Previous post was at 15:43 ----------



    Адаптер SD будет выглядеть так. Паять буду, когда придут разъемы.

  5. #94

    Регистрация
    10.02.2012
    Адрес
    г. Челябинск
    Сообщений
    118
    Спасибо Благодарностей отдано 
    13
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    [QUOTE=vinxru;574612]



    У меня глюки или на одной из плат фотошаблоны верх-низ перепутаны?

  6. #95

    Регистрация
    01.12.2010
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,657
    Записей в дневнике
    21
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от dmluk Посмотреть сообщение
    У меня глюки или на одной из плат фотошаблоны верх-низ перепутаны?
    Перепутаны

  7. #96

    Регистрация
    01.12.2010
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,657
    Записей в дневнике
    21
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Как бы мне не хотелось, но Специалист потихоньку обрастает МГТФ-ом



    1) Поддержка ПЗУ на 16 Кб (Добавлена 155ЛА1 для формирование сигнала ROM, к ПЗУ подведены дополнительные линии адреса).
    2) Около процессора обрыв дорожки -5 Вольт.
    3) Контроллер PS/2 клавиатуры к ножкам ВВ55 и разъему.
    4) Питание к разъему.
    5) Кнопка сброса на плате.
    Последний раз редактировалось vinxru; 11.02.2013 в 16:07.

  8. #97

    Регистрация
    30.05.2007
    Адрес
    г. Лянтор, Сургутского р-на, ХМАО
    Сообщений
    4,436
    Спасибо Благодарностей отдано 
    163
    Спасибо Благодарностей получено 
    190
    Поблагодарили
    121 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    vinxru, как дело движется в сторону загрузки в память файлов с SD карты?
    Последний раз редактировалось fifan; 11.02.2013 в 16:50.

  9. #98

    Регистрация
    01.12.2010
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,657
    Записей в дневнике
    21
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от fifan Посмотреть сообщение
    vinxru, как дело движется в сторону загрузки в память файлов с SD карты?
    Пока только грузится файл boot.rks в память. Адрес загрузки берется из самого файла. В ближайших планах добавить загрузку произвольного файла и получение списка файлов.

    И на экране Специалиста это все отобразить.

    И еще хочу попробовать ускорить загрузку. Сейчас тактовый сигнал генерируется программно, а можно использовать сигналы CE,WR,RD. Из минусов этого подхода, еще 3 МГТФ провода.

  10. #99

    Регистрация
    01.12.2010
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,657
    Записей в дневнике
    21
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Подключил PAL-кодер.



    Цвет есть, жить можно. Но рябь жуткая. А синий мажется.

    Nedopc Pal Coder Revision A

    ---------- Post added 12th February 2013 at 01:21 ---------- Previous post was 11th February 2013 at 23:50 ----------

    Подстроил частоту и амплитуду генератора.



    Синий цвет видимо обрабатывается совсем по другому. Поскольку он единственный мажет.
    Последний раз редактировалось vinxru; 12.02.2013 в 01:28.

  11. #100

    Регистрация
    11.01.2006
    Адрес
    Брест/Минск
    Сообщений
    8,398
    Записей в дневнике
    4
    Спасибо Благодарностей отдано 
    188
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    60 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    При передаче сигнала цветности «красный» цветоразностный сигнал повторяют в следующей строке с поворотом фазы на 180 градусов. Для устранения фазовой ошибки декодер PAL складывает текущую строку и предыдущую из памяти, благодаря чему полностью устраняет фазовые ошибки, типичные для системы NTSC. При сложении двух сигналов взаимно уничтожаются «красные» цветоразностные компоненты из-за изменения их знака. При вычитании двух сигналов взаимно уничтожаются «синие». Таким образом, на выходах сумматора-вычитателя получаются разделённые сигналы U и V, являющиеся масштабно изменёнными R-Y и B-Y.
    походу, из-за этого..

    ---------- Post added at 02:02 ---------- Previous post was at 02:01 ----------

    но это должно давать только косяки по вертикали..
    С уважением, Александр.
    Scorpion ZS-256 Turbo+ GMX-2048
    SID-Blaster/ZX
    Музей ретрокомпьютеров в Минске!
    Здесь ничего нет => http://byteman.by
    И здесь тоже --->>> http://bytespace.by

Страница 10 из 22 ПерваяПервая ... 67891011121314 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Восстановление Scorpion ZS-256
    от AlexMik в разделе Scorpion
    Ответов: 127
    Последнее: 15.08.2013, 19:30
  2. восстановление Орион-128
    от sergey2b в разделе Орион
    Ответов: 1
    Последнее: 05.02.2011, 15:32
  3. Восстановление ПК Мастер-128
    от PKZX в разделе Клоны на ПЛИС, МК и БМК
    Ответов: 3
    Последнее: 13.03.2010, 22:10
  4. Хочу выслушать мнения специалистов...
    от ILoveSpeccy в разделе Музыка
    Ответов: 23
    Последнее: 29.08.2008, 04:35

Ваши права

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