-
14.03.2020, 20:19 #46
- Регистрация
- 10.10.2003
- Адрес
- Калуга
- Возраст
- 50
- Сообщений
- 441
- Поблагодарили
- 12
- Поблагодарил
- 7
В "CP/M 80 Programmer's Guide" Barry Morrell and Peter Whittle, 1985, MACMILLAN EDUCATION LTD , на странице 69, рисунок 6.3 ( Figure 6.3 Contents of a DPB ) в таблице указано, что логический сектор содержит 128 байт ("No of 128 bytes logical sectors per track") . Применялись диски размером 5,25 и 8 дюймов.
Также в "Приложении к журналу "Юный техник" "ЮТ для умелых рук" №2, 1990 год, стр. 12 описана организация гибкого диска, где секторы по 128 байт, на каждой дорожке находятся 26 секторов, диск состоит из 77 дорожек, пронумерованных от 0 до 76.
Фактически были широко распространены дисководы размером 5,25 дюймов. Контроллер к данным дисководам сконструирован на микросхеме КР1818ВГ93, описание которого приведено, например, в статье "Пользователям о "Корвете". Контроллер накопителя на гибких дисках." С. Ахманов, Н. Рой, А. Скурихин. Радио №6, 1989, стр. 34.
Такие дисководы широко применялись в компьютерах с операционной системой MS-DOS, при этом дискета может иметь секторы по 512 байт потому, что используется в таком дисководе. То есть ограничение может накладываться оборудованием: дискетой и дисководом, другими словами, аппаратно. При секторе по 512 байт, 9 секторах, 40 дорожках и 2-х сторонах получится емкость дискеты 360 килобайт, при 80-ти дорожках - 720 килобайт. Позднее стали широко распространены дисководы 3,5 дюймов, аппаратно подключаемые к контроллеру дисковода также, как и дисководы 5,25 дюймов, но имеющие по 18 секторов на дорожке, ёмкость их увеличилась до 1,4 мегабайт.
При этом по описаниям не вполне понятно, в каком оборудовании происходит разделение по секторам. Впрочем, можно попробовать позадавать номера секторов в рамках ОС CP/M в регистр FB1AH.
Регистры дисковода для операционной системы CP/M приведены в статье "Пользователям о "Корвете". Контроллер накопителя на гибких дисках." С. Ахманов, Н. Рой, А. Скурихин. Радио №6, 1989, стр. 34, на странице 37.
1. Регистр выбора и управления - FB39H.
2. Командный регистр - FB18H.
3. Регистр статуса - FB18H.
4. Регистр дорожки - FB19H.
5. Регистр сектора - FB1AH.
6. Регистр данных - FB1BH.
Последний раз редактировалось RA3XCQ; 14.03.2020 в 20:40.
RA3XCQ ( Larry158 )
-
14.03.2020, 21:08 #47
- Регистрация
- 01.07.2011
- Адрес
- Днепропетровск
- Возраст
- 59
- Сообщений
- 3,006
- Поблагодарили
- 2962
- Поблагодарил
- 222
73! Олег. http://ur1004swl.ucoz.ru/
-
05.06.2020, 16:53 #48
- Регистрация
- 10.10.2003
- Адрес
- Калуга
- Возраст
- 50
- Сообщений
- 441
- Поблагодарили
- 12
- Поблагодарил
- 7
В интернете размещены статьи из журнала "Радио", среди них можно найти описания реализаций CP/M для различных микрокомпьютеров.
"Пользователям о "Корвете""
"CP/M для "Ориона-128""RA3XCQ ( Larry158 )
-
11.04.2021, 15:43 #49
- Регистрация
- 08.06.2005
- Адрес
- Ставрополь
- Возраст
- 56
- Сообщений
- 313
- Поблагодарили
- 57
- Поблагодарил
- 20
Если ещё кому-то интересно - готова версия компьютера с SD-картой в качестве диска.
-
11.04.2021, 21:27 #50
- Регистрация
- 10.10.2003
- Адрес
- Калуга
- Возраст
- 50
- Сообщений
- 441
- Поблагодарили
- 12
- Поблагодарил
- 7
В основном, рекомендуют SPI : CS, MOSI, MISO, SCK . У Вас также?
RA3XCQ ( Larry158 )
-
11.04.2021, 21:53 #51
- Регистрация
- 08.06.2005
- Адрес
- Ставрополь
- Возраст
- 56
- Сообщений
- 313
- Поблагодарили
- 57
- Поблагодарил
- 20
CS, Data In, Data Out, SCK, - у меня это так зовётся Но суть та же.
Прямая ссылка на версию http://rw6hrm.qrz.ru/z80sin_brdsd.htmПоследний раз редактировалось RW6HRM; 11.04.2021 в 21:56.
-
15.04.2021, 19:13 #52
- Регистрация
- 10.10.2003
- Адрес
- Калуга
- Возраст
- 50
- Сообщений
- 441
- Поблагодарили
- 12
- Поблагодарил
- 7
По интерфейсу SPI команды CMDn подаются от компьютера к карте памяти сигналом MOSI ( Data In, DI ). Сигналы MOSI и MISO однобитные по одному байту.
Вроде как естественней подавать команды CMDn на уже имеющийся отдельный контакт сигнала CMD.
Чтение и запись происходит одиночной записью блока (Single Block Write) и множественной записью блоков (Multiple Block Write). То есть получается нечто подобное LBA ( Logical Block Addressing), где сектора нумеруются подряд с CHS (0, 0, 1) в компьютерах PC.RA3XCQ ( Larry158 )
-
15.04.2021, 19:46 #53
- Регистрация
- 08.06.2005
- Адрес
- Ставрополь
- Возраст
- 56
- Сообщений
- 313
- Поблагодарили
- 57
- Поблагодарил
- 20
Ну так и подаётся. Вот только SPI я бы свой "ногодрыг" не назвал
-
15.04.2021, 20:50 #54
- Регистрация
- 10.10.2003
- Адрес
- Калуга
- Возраст
- 50
- Сообщений
- 441
- Поблагодарили
- 12
- Поблагодарил
- 7
По Вашей схеме этого, извините, не видно. Видно, что подключено к Z80A через 82С55. Наверное, можно подключить через КР580ВВ55А, если вдруг, например, не окажется расхождений в использовании регистра управляющего слова (РУС).
RA3XCQ ( Larry158 )
-
15.04.2021, 21:00 #55
- Регистрация
- 08.06.2005
- Адрес
- Ставрополь
- Возраст
- 56
- Сообщений
- 313
- Поблагодарили
- 57
- Поблагодарил
- 20
ВВ55 и 8255 совместимы полностью, это же аналоги. 82С55 разве что кмоповский.
Тут почему "ногодрыг" применён - из-за дешевизны. Весь комп собран по сути из подстольных баночек. Можно было бы применить какой-либо специализированный чип, чтобы занимался только общением с флешкой, но это лишние затраты. Поэтому и сделана эмуляция работы с картой через ВВ55. Скажем так - с CF картой комп выглядит гораздо лучше, прям летает. Ну а с SD - как с дисководом, но это не напрягает.
-
18.04.2021, 19:15 #56
- Регистрация
- 10.10.2003
- Адрес
- Калуга
- Возраст
- 50
- Сообщений
- 441
- Поблагодарили
- 12
- Поблагодарил
- 7
Для чтения и записи разные команды:
для чтения:
CMD17 READ_SINGLE_BLOCK,
CMD18 READ_MULTILPE_BLOCK,
для записи:
CMD24 WRITE_BLOCK
CMD25 WRITE_MULTIPLE_BLOCK
Установка длины блока:
CMD16 SET_BLOCKLEN
https://www.kingston.com/datasheets/...gb-32gb_ru.pdfПоследний раз редактировалось RA3XCQ; 18.04.2021 в 19:19. Причина: дополнение
RA3XCQ ( Larry158 )
-
29.04.2021, 20:20 #57
- Регистрация
- 10.10.2003
- Адрес
- Калуга
- Возраст
- 50
- Сообщений
- 441
- Поблагодарили
- 12
- Поблагодарил
- 7
RA3XCQ ( Larry158 )
-
26.09.2024, 21:57 #58
- Регистрация
- 10.10.2003
- Адрес
- Калуга
- Возраст
- 50
- Сообщений
- 441
- Поблагодарили
- 12
- Поблагодарил
- 7
На http://criss.radio.ru и http://www.criss.fun сообщается, что CP/M поддерживается.
Для микрокомпьютера на микроконтроллерах AVR компилятор создает машинный код AVR с машинного кода intel8080 или с программы на ассемблере, или можно обеими способами?
Было бы неплохо узнать аналог подпрограммы CALL 0005 CP/M i8080 (также, как и для Zilog Z80) для программы для AVR, вряд ли они совпадают.RA3XCQ ( Larry158 )
Социальные закладки