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

User Tag List

Страница 11 из 30 ПерваяПервая ... 789101112131415 ... ПоследняяПоследняя
Показано с 101 по 110 из 292

Тема: Компьютер для CP/M. Формулировка ТЗ.

  1. #101
    Guru
    Регистрация
    16.12.2008
    Адрес
    Kharkov, Ukraina
    Сообщений
    2,221
    Спасибо Благодарностей отдано 
    4
    Спасибо Благодарностей получено 
    21
    Поблагодарили
    18 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Barsik, мы наверное разными источниками пользовались. SteinBlume брал здесь, а именно (смотри рисунок).


    Последний раз редактировалось OrionExt; 26.06.2017 в 06:00.
    Электроника КР-02, MSX YIS-503IIR, Орион-128, Ленинград-2, Pentagon-128k, MSX2 YIS-503IIIR, MSX-EXT, ...

  2. #102
    Сибирский антропоморфн Аватар для Black Cat / Era CG
    Регистрация
    06.05.2010
    Адрес
    Бердск, НСО
    Сообщений
    4,559
    Спасибо Благодарностей отдано 
    922
    Спасибо Благодарностей получено 
    871
    Поблагодарили
    635 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    OrionExt, спасибо за извлечение файлов, но мне бы хотелось это сделать самому, потому что есть еще пара сотен файлов DSK, из которых хотелось бы тоже извлечь файлы.
    Должен предупредить DSK - это не какой-то определенный формат, это просто оооочень популярное расширение. А что конкретно под ним скрывается, определить как-то автоматом выходит далеко не всегда. Например, расширение используется для Amstrad'овских образов, однако там далеко не просто дамп, это скорее похоже на образ типа Теледиска, то есть с описанием структуры и т. д. Альтаировские DSK - это дампы, но с весьма странным нестандартным размером сектора. А вот именно эти два образа - это дампы с полностью аналогичным стандартному для CP/M (если не ошибаюсь) 1.2 форматом. Как я об этом догадался? Посмотрел размер образа, он показался мне знакомым, убедился в том, что он такой же, как у образа 8-дюймого CP/M диска, который я уже открывал, на всякий случай заглянул внутрь образа с помощью Hex-редактора, убедился в наличии достаточно характерного смещения (перемешивания) данных (т.н. software skewed sectors). Ни и в финале попробовал открыть образ, используя уже готовый (ну мной же раньше созданный) инишник. Должен уточнить, что в конечном результате я абсолютно не был уверен - формат мог оказаться и другим, просто похожим. Но в итоге образ был открыт успешно.
    Тут в чем суть. Утилита работает только с дампами (под этим словом я подразумеваю образа, содержащие только информацию с секторов без какой-либо служебной). Но и это не гарантирует простой результат. Возможности для автодетекта 99% форматов дисков просто нет (ну не принято было тогда хранить на дисках какие-то однозначные сигнатуры). Поэтому с каждым отдельным форматом приходится разбираться отдельно, либо знать, какой именно формат имеет образ.
    Цитата Сообщение от barsik Посмотреть сообщение
    Не думаю, что дело из-за Windows XP
    Точно не из-за XP. Утилита под ней пишется (по крайней мере писалась до недавнего времени).
    Цитата Сообщение от barsik Посмотреть сообщение
    А где находится сама эта папка "xdi_settings" ?
    Тут два варианта. Если SteinBlume установлен с помощью инсталлятора, то искать xdi_settings надо в служебной папке вроде c:\Users\BlackCat\AppData\Roaming\SteinBlume\xdi_s ettings\ Дело в том, что с некоторых пор винда не любит, когда программы пытаются делать что-то с файлами, лежащими в папках типа Program Files, поэтому все служебные файлики теперь принято хранить в таких вот служебных папках отдельно от самой программы.
    Если же скачать SteinBlume (полную версию), как zip-архив и распаковать куда-то, кроме Program Files, то xdi_settinLaбудет лежать в той же папке, где и упомянутая папка language, то есть в папке SteinBlume.
    Вот xdi_settings.zip на всякий случай набор инишников отдельных архивом. Только распакуйте его в какую-нибудь нормальную папку со всеми необходимыми правами.

    - - - Добавлено - - -

    Цитата Сообщение от barsik Посмотреть сообщение
    Непонятно, также как записать полученный формат, чтобы он потом выводился в списке выбора форматов.
    Вы имеете в виду, чтобы можно было создавать новые образа с этим форматом?
    Цитата Сообщение от barsik Посмотреть сообщение
    И что такое "Id строка формата", как им пользоваться, он в этом поле не вводится (думаю, только читается из ini-файла).
    Эта строка обычно пустая, введена и используется (весьма редко), чтобы не плодить всякие дополнительных строки в инишниках, позволяет однозначно задетектить некоторые тонкости (например PLUS3DOS, сообщает SteinBlume, о том, что речь идет о образах именно этой системы и позволяет редактировать заголовки файлов, которые имеются у +3DOS и другие фичи свойственные именно ей). С помощью id можно в будущем (если это будет нужно) ввести поддержку особенностей, например, того же Альтаира с его странными секторами и заставить утилиту обрабатывать образа, учитывая эти особенности. Эти строки (id) - константы жестко мной прописываемые в утилите. Никакого отношения к сигнатурам хранящимся на дисках они не имеют, просто и самих сигнатур как таковых практически нет...
    Как-то так.

    - - - Добавлено - - -

    Написал небольшой туториал на тему открытия .xdi. Раз уж вопросы возникают.
    Так как это оффтоп, прячу под спойлером (и продублирую у себя в теме).

    Краткая инструкция "Как можно открыть xdi-образ, не имея ini-файла, но четко зная подробности формата"


    Краткая инструкция "Как можно открыть xdi-образ, не имея ini-файла, но четко зная подробности формата" (на примере формата 8-дюймовых дисков CP/M 1.4)

    I. Вариант номер РАЗ.
    1. Открываем SteinBlume;
    2. Перетаскиваем образ в Утилиту (либо открываем через меню, с помощью пункта "Открыть образ...");
    3. В появившемся окне "Параметры .xdi":
    3.1 Текущий файл настроек - информационное поле, не редактируется.
    3.2 Id-строка формата - константа, позволяющая однозначно задать некоторые тонкости формата, если не знаем, что сюда писать, оставляем пустым. В данном случае оставляем пустым.
    3.3 Смещение секторов - параметр, задающий порядок чтения секторов для образов дисков с программным смещением секторов (sofware skewed sectors). Либо одно десятичное число (задающее фиксированное смещение), либо порядок чтения всех секторов единым списком через запятую, без пробелов. Для CP/M 1.4 skew factor = 6
    3.4 Формат хранения дат - на данный момент временные записи в директории игнорируются. Но все равно желательно задать этот параметр. Для CP/M 1.4 выбираем CP/M стандарт (1 - в ини-файле).
    3.5 Выбираем "Прямое заполнение DPH и DPB". С Простым попроще, но если есть все необходимые данные, то лучше задать все в точности (Тем более в простом есть баг).
    3.6 И задаем параметры:
    len=0
    den=0
    sec=1A
    trk=4D
    bsh=3
    drm=3F
    off=2
    Остальные параметры утилита поменять не даст.
    3.7 Полученные настройки можно:

    • Сохранить в виде ini-файла, нажав кнопку "Сохранить",
    • Запомнить как Настройки по умолчанию, чтобы не вводить эти параметры каждый раз при открытии образов одинакового формата. (Настройки по умолчанию можно всегда задать/изменить в настройках утилиты).

    3.8 Жмем "ОК"
    4. Профит.

    II. Вариант не требующий смену расширения у файла образа на ".xdi".
    1. Открываем SteinBlume;
    2. Открываем образ с помощью пункта меню "Открыть образ как .xdi...". С помощью этого пункта можно попытаться открыть как .xdi образ с любым расширением.
    3. Выполняем описанное выше в пункте 3;
    4. Профит.

    III. Открытие с помощью "Простого заполнения".
    А вот его лучше б не использовать - есть баг. Ниже опишу, как с ним бороться.
    1. Открываем SteinBlume;
    2. Открываем образ любым понравившимся из вышеописанных способов;
    3. В появившемся окне "Параметры .xdi":
    3.1 Выполняем описанное выше в пунктах 3.1-3.4;
    3.2 Выбираем "Простое заполнение параметров диска". Стоит обратить, что здесь все параметры вводятся в десятичной форме (Простое же).
    3.3 И задаем параметры:
    Число сторон диска. В нашем случае - 1;
    Число цилиндров. В нашем случае - 77;
    Число секторов на дорожке. В нашем случае - 26;
    Размер сектора (байт). В нашем случае - 128;
    Размер блока (байт). В нашем случае - 1024;
    Число записей в директории. В нашем случае - 64;
    Число системных дорожек. В нашем случае - 2.
    3.4 ВАЖНО. Имеет место быть баг (введенные настройки игнорятся). Чтобы баг обойти, после ввода всех параметров потыкайте туда-сюда по пунктам "Прямое заполнение DPH и DPB" и "Простое заполнение параметров диска" - настройки перестанут игнорироваться.
    3.5 Жмем "ОК";
    4. Профит.
    [свернуть]
    Последний раз редактировалось Black Cat / Era CG; 26.06.2017 в 11:47.
    Личка заполнена! И чистить я ее не буду! Пользуйтесь адекватными средствами связи! Спасибо.

    Seamos realistas y hagamos lo imposible!

    Ernesto Che Guevara
    Переехал сюда: SteinBlume (ex ATM CP/M Explorer)
    http://era-cg.su

    Скрытый текст

    Speccy2010 r2 (Спасибо m.d. & xlat),
    Sinclair ZX Spectrum + (Спасибо stepmotor),
    ZX Evolution rev.C + 5'25 FDD Epson SD-700AA + NedoPC PAL-Coder (Спасибо m.d. & xlat)
    [свернуть]

  3. #103
    Guru
    Регистрация
    16.12.2008
    Адрес
    Kharkov, Ukraina
    Сообщений
    2,221
    Спасибо Благодарностей отдано 
    4
    Спасибо Благодарностей получено 
    21
    Поблагодарили
    18 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Xrust Посмотреть сообщение
    Осталось завтра кварц купить на 22.1, конденсаторы для max232 и можно пробовать прошивку.
    А вы не думали, вместо MAX232 типа такой платки (FTDI232) применить? На выходе USB, а по факту для консоли PC RS232. Просто ее можно подключить сейчас к любому современному ПК.

    Последний раз редактировалось OrionExt; 26.06.2017 в 20:00.
    Электроника КР-02, MSX YIS-503IIR, Орион-128, Ленинград-2, Pentagon-128k, MSX2 YIS-503IIIR, MSX-EXT, ...

  4. #104
    Veteran Аватар для rw6hrm
    Регистрация
    10.07.2005
    Адрес
    Ставрополь
    Сообщений
    1,153
    Спасибо Благодарностей отдано 
    35
    Спасибо Благодарностей получено 
    57
    Поблагодарили
    31 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от OrionExt Посмотреть сообщение
    А вы не думали, вместо MAX232
    Уже в этой ветке было предложено ( http://zx-pk.ru/threads/27613-kompyu...l=1#post917128 ). И давно пользую, только сделал выход USB-B, чтобы принтерным шнуром подключать. Так кошернее, чем микриком.
    Последний раз редактировалось rw6hrm; 26.06.2017 в 20:11.

  5. #105
    Master Аватар для Xrust
    Регистрация
    12.04.2017
    Адрес
    г. Тольятти
    Сообщений
    906
    Спасибо Благодарностей отдано 
    204
    Спасибо Благодарностей получено 
    145
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от OrionExt Посмотреть сообщение
    А вы не думали, вместо MAX232 типа такой платки (FTDI232) применить? На выходе USB, а по факту для консоли PC RS232. Просто ее можно подключить сейчас к любому современному ПК.
    Да, такой вариант я тоже рассматривал. Но хотел заодно порт на материнке проверить.

  6. #106
    Guru
    Регистрация
    16.12.2008
    Адрес
    Kharkov, Ukraina
    Сообщений
    2,221
    Спасибо Благодарностей отдано 
    4
    Спасибо Благодарностей получено 
    21
    Поблагодарили
    18 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от rw6hrm Посмотреть сообщение
    Уже в этой ветке было предложено
    Значит, мысли сходятся
    Ну, разъем USB – это дело такое. Тут есть выбор, просто у меня эти шнурки уже девать некуда, а тут им применение нашлось.
    Последний раз редактировалось OrionExt; 26.06.2017 в 20:18.
    Электроника КР-02, MSX YIS-503IIR, Орион-128, Ленинград-2, Pentagon-128k, MSX2 YIS-503IIIR, MSX-EXT, ...

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

  8. #107
    Master Аватар для Xrust
    Регистрация
    12.04.2017
    Адрес
    г. Тольятти
    Сообщений
    906
    Спасибо Благодарностей отдано 
    204
    Спасибо Благодарностей получено 
    145
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Короче, прошил я в ПЗУшку вот этот быдлокод. Вроде заработало, но не так как ожидалось. Включаю железку, подключаюсь к ней через Terminal 1.9b. Посылаю байты. В ответ тишина. Включаю Request To Send ручками и тут начинают сыпаться в ответ нули и восклицательные знаки (21h - отзыв железки). Если при этом я жму клавиши, то в ответ приходит символ с тем же "!". Подозреваю, что я где-то ошибся, но где? В программе или в проводах? Схему постараюсь наконец-то нарисовать и выложить.
    Код:
    ; ПРОГРАММА НАСТРОЙКИ И ПРОВЕРКИ УСАПП ВВ51А 
    ;
    ;_______УСТАНОВКА СТЕКА____________________________
    	LXI 	SP,RAMTOP
    ;_______УСТАНОВКА_УСАПП_В_ИСХ._СОСТОЯНИЕ________
    	MVI	A,01H
    	OUT	CW51
    	OUT	CW51
    	MVI	A,IR
    	OUT	CW51
    ;_______ЗАПИСЫВАЕМ_ИНСТРУКЦИЮ_РЕЖИМА____________
    	MVI	A,4EH
    	OUT	CW51
    ;_______ЗАПИСЫВАЕМ ИНСТРУКЦИЮ КОМАНДЫ___________
    	MVI	A,TXEN+DTR+RXE+RTS
    	OUT	CW51
    LOOP:
    ;_______ЧИТАЕМ БАЙТ ИЗ ПОРТА____________________
    	CALL	RXD
    ;_______ВОЗВРАЩАЕМ ПРОЧИТАННЫЙ БАЙТ В ПОРТ______
    	MOV	C,A
    	CALL	TXD
    ;_______ОТПРАВЛЯЕМ ПРИЗНАК ОТВЕТА (!)___________
    	MVI	C,21H
    	CALL	TXD
    	JMP	LOOP
    
    ; ПОДПРОГРАММА ПЕРЕДАЧИ БАЙТА ИЗ РЕГИСТРА С
    ;
    TXD:	PUSH	PSW
    ;_______ЖДЕМ_ГОТОВНОСТИ_________________________
    TX1:	IN	CW51
    	ANI	TXRDY+DSR
    	CPI	TXRDY+DSR
    	JNZ	TX1
    ;_______ПЕРЕДАЕМ_БАЙТ___________________________
    	MOV	A,C
    	OUT	DAT51
    	POP	PSW
    	RET
    ;
    ; ПОДПРОГРАММА ПРИЕМА БАЙТА В АККУМУЛЯТОР
    RXD:
    ;_______ПРОВЕРЯЕМ_ГОТОВНОСТЬ____________________
    	IN	CW51
    	ANI	RXRDY
    ;_______ВОЗВРАТ_С_ФЛАГОМ_ПЕРЕНОСА,______________
    ;_______ЕСЛИ_ПРИЕМНИК_НЕ_ГОТОВ__________________
    	STC
    	RZ
    ;_______ЧИТАЕМ_ПРИНЯТЫЙ_БАЙТ____________________
    	IN	DAT51
    	CMC
    	RET
    ;
    ; ВНЕШНИЕ МЕТКИ И КОНСТАНТЫ  
    ;
    RAMTOP:		EQU	87FFH	; 
    ;___АДРЕСА_РЕГИСТРОВ_УСАПП______________________
    DAT51:		EQU	00H	; РЕГИСТР ДАННЫХ
    CW51:		EQU	01H	; РЕГИСТР КОМАНД
    ;
    ;___КОМАНДЫ ВВ51________________________________
    TXEN:	EQU	01H	; ПЕРЕДАТЧИК ВКЛЮЧЕН
    DTR:		EQU	02H	; УСТРОЙСТВО ГОТОВО
    RXE:		EQU	04H	; ПРИЕМНИК ВКЛЮЧЕН
    SBRK:	EQU	08H	; ПРЕРЫВАНИЕ ПЕРЕДАЧИ
    ER:		EQU	10H	; СБРОС ОШИБОК ПРИЕМА
    RTS:		EQU	20H	; ПЕРЕДАЧА РАЗРЕШЕНА
    IR:		EQU	40H	; ПРОГР. СБРОС УСАПП
    EH:		EQU	80H	; РАЗРЕШЕНИЕ ПОИСКА СИНХРОСИМВОЛА
    ;
    ;__РЕГИСТР СОСТОЯНИЯ ВВ51_______________________
    TXRDY:	EQU	01H	; ПЕРЕДАТЧИК ГОТОВ
    RXRDY:	EQU	02H	; ПРИЕМНИК ГОТОВ
    TXE:		EQU	04H	; ПЕРЕДАЧА ЗАКОНЧЕНА
    PE:		EQU	08H	; ОШИБКА ЧЕТНОСТИ
    OE:		EQU	10H	; ПЕРЕПОЛНЕНИЕ ПРИЕМНИКА
    FE:		EQU	20H	; ОШИБКА ФОРМАТА
    SYNDET:	EQU	40H	; СИНХРОСИМВОЛ НАЙДЕН
    DSR:		EQU	80H	; ПЕРЕДАТЧИК ДАННЫХ ГОТОВ
    ;
    END

  9. #108
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,847
    Спасибо Благодарностей отдано 
    84
    Спасибо Благодарностей получено 
    229
    Поблагодарили
    167 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Xrust Посмотреть сообщение
    Включаю Request To Send ручками и тут начинают сыпаться в ответ нули и восклицательные знаки
    Судя по коду так и должно работать. Ты же не ждёшь готовности в RXD, а возвращаешься с нулём в А и флагом переноса, если буфер пуст. Либо сделай ожидание в RXD, либо поставь JC LOOP после CALL RXD

  10. #109
    Master Аватар для Xrust
    Регистрация
    12.04.2017
    Адрес
    г. Тольятти
    Сообщений
    906
    Спасибо Благодарностей отдано 
    204
    Спасибо Благодарностей получено 
    145
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    поставь JC LOOP после CALL RXD
    Точно, оно самое. Теперь работает как надо.

  11. #110
    Master Аватар для Xrust
    Регистрация
    12.04.2017
    Адрес
    г. Тольятти
    Сообщений
    906
    Спасибо Благодарностей отдано 
    204
    Спасибо Благодарностей получено 
    145
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Возник следующий вопрос: если на процессор приходит сигнал прерывания, а шина данных к +5 не подтянута и контроллера прерываний нет, то следовательно процессор выполнит nop и продолжит исполнение основной программы?

Страница 11 из 30 ПерваяПервая ... 789101112131415 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Посоветуйте компьютер для сборки!
    от Demige в разделе Для начинающих
    Ответов: 16
    Последнее: 17.02.2012, 18:07
  2. Куплю FDD для Atari XL/XE или в комплекте компьютер+дисковод
    от Нrundel в разделе Барахолка (архив)
    Ответов: 0
    Последнее: 22.01.2007, 13:06
  3. Лучший компьютер.
    от Shiru в разделе Зарубежные компьютеры
    Ответов: 12
    Последнее: 22.05.2005, 14:01

Ваши права

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