1

Тема: Запись программ на диски с магнитофонного входа

Известна ситуация, когда у человека появился АГАТ, но нет дискет.
Сейчас можно просто загрузить отдельные программы через магнитофонный вход. Но их нельзя записать на диски.

Вот думаю, стоит ли написать программу, которая будет участок памяти записывать на дисковод?
То есть загружается эта программа через магнитофонный вход, загружается аналогично трек (треки) например загрузчика, запускается программа, и она записывает это на дискету.

2

Re: Запись программ на диски с магнитофонного входа

Время от времени, что-то подобное, неизменно спрашивают.

3

Re: Запись программ на диски с магнитофонного входа

Я сам про такую штуку думал. Но это не такая простая задача.

Во-первых, в память Агата образ дискеты целиком не влезет. 840К вообще никак, 140К с компрессией - может быть, но тоже не факт.

Было бы здорово стримить образ через магнитофоннный порт и одновременно писать его на диск, но так не получится, потому что и запись на диск и чтение магнитофонного порта являются программными и совместить два процесса не получится.

Значит, остается грузить образ диска по блокам и по блокам же записывать. Для 840К диска даже на девятке таких блоков понадобится штук 8, а на семерке порядка 10, что не сильно удобно.

Потом, скорость обмена по магнитофонному порту примерно 0,15 Кбайт/с. То есть, это еще и довольно медленно будет, в районе полутора часов.

Еще надо будет разбираться с мелкими неприятностями, типа испорченной команды загрузки на девятке и фигового подсчета контрольных сумм. Один байт КС на 80-90 КБайт данных - это очень мало. Если уровень громкости будет выбран неудачно, то высок риск передать блок с ошибкой и не заметить.

Ну и отладка понадобится основательная - это ведь придется аккуратно выдрать RWTS и заставить ее работать.

4

Re: Запись программ на диски с магнитофонного входа

А ещё лучше - купить "Готек" за полторы тыщи и подключить его к контроллеру :)

5 Отредактировано Voldemar0 (07-07-2021 19:40)

Re: Запись программ на диски с магнитофонного входа

Передавать образ спецпрогой под винду, которая будет налету его кодировать сразу в нужный свист.

Сперва передать минимальный загрузчик-драйвер магнитофонного порта, получить его стандартной командой чтения или набором минимального исправления ROM-кода для девятки.

Потом запустить этот код и уже под его управлением передать RWTS (с поддержкой обоих дисководов) и потом уже передавать образ, причем сделать простейшую компрессию, что -то типа RLE, можно даже просто проверять каждый сектор на то, что он содержит константу. Этого хватит для того, чтобы многие диски резко уменьшились в размере, особенно 840ки.

Передавать посекторно с индивидуальными КС, а записывать на флопик либо потреково либо лучше группами треков по 5-10 - это и памяти всяко хватит и достаточно эффективно с точки зрения старт-стопов флопика.

--

Только во всей этой затее крайне смущает такой вопрос:
прогу сделали, всё классно, на проверенном оборудовании идёт.
Передаём заказчику, у него не идёт.
Почему?
- Отказ любого из блоков агата.
- Неудачные уровни звука, звук не передаётся (элементарно: гиперумное автоопределение аудиоустройства ваш шнурок распознало как микрофон..... Или вообще не заметило подключения).
Неверная распайка аудио-шнурка.
- Дисковод имеет постоянно включенный датчик нулевого трека (вроде запись идёт, но не туда. А кто-то контроль предусмотрел ?)
- Диск не отформатирован (или будем патчить RWTS чтобы она писала TAO?)

Комп ведь без дискет не вчера оказался, кто знает что в нём пока ещё работает?
И столько работы оказалось впустую.

Тут нужна какая-то методика, может быть сперва передать несколько тестов.
Погонять их. Но мелких тестов тут не будет: как, например, проверить работу дисковода?

А это уже требует терпения и навыков понимания аппаратуры у владельца.

Как по мне: проще дискету записанную почтой отправить.

6 Отредактировано garnizon (08-07-2021 00:54)

Re: Запись программ на диски с магнитофонного входа

AlexBel пишет:

А ещё лучше - купить "Готек" за полторы тыщи и подключить его к контроллеру :)

Это если есть контроллер 840кб. А то в последнее время всё семёрки с единственным 140 всплывают :)

7

Re: Запись программ на диски с магнитофонного входа

garnizon пишет:
AlexBel пишет:

А ещё лучше - купить "Готек" за полторы тыщи и подключить его к контроллеру :)

Это если есть контроллер 840кб. А то в последнее время всё семёрки с единственным 140 всплывают :)

А как же тогда писать на диск то, что загружено с магнитофона, если нет контроллера?

8 Отредактировано garnizon (08-07-2021 14:06)

Re: Запись программ на диски с магнитофонного входа

А что не так?

Скажем у меня есть Агат-7 с единственным КНГМД 140 (классическая семерка) и соответствующим дисководом. Куда я "Готек" подцеплю?
А с магнитофона загруженное вполне можно на диск 140 записать.

Я к тому что фраза "лучше - купить "Готек" работает только для тех, у кого есть КНГМД840.

9

Re: Запись программ на диски с магнитофонного входа

Значит, надо два варианта - один для 140К, другой для 840К

10

Re: Запись программ на диски с магнитофонного входа

Для загрузки в свои реплики "Агата", "Эпла" и другие я использую xmodem, очень удобная штука. Подумал, что, имея плату ППИ для "Агата" её можно доработать и использовать для загрузки. Нужно установить ПЗУ с поддержкой xmodem (С800-С8FF) и подключить ВВ51 к РС. И можно через терминал передавать данные. Я хотел это сделать, но возникла проблема с передачей данных (терялись биты), я не стал разбираться и забросил. Но сделать можно.
Конечно, это не магнитофонный вход и другая тема, поэтому на этом умолкаю :)

11 Отредактировано Voldemar0 (08-07-2021 20:10)

Re: Запись программ на диски с магнитофонного входа

Это если клиент готов шить микрухи и запаивать их.
Потом паять шнурок PC-ППРИ, имея хотя бы UART-COM- конвертор. Потому что физпорты COM нынче тоже не часто встречаются.

Но если он готов к таким сложностям, то можно много решений поискать, довольно разнообразных, в зависимости от имеющегося оборудования, скила клиента и его терпения.

Ну хотя бы ps/2- адаптер вспомнить: он без ничего умеет вносить небольшие и средненькие проги в память. Можно под него написать что-то ещё - там памяти пока много.
А сделать его можно хоть на макетке, тем более ATMega широкодоступна, как и программаторы для неё.

Или просто воткнуть дополнительные микрухи ПЗУ с нужным софтом.
На семёрке это точно можно, на девятке, кажись, тоже.
Просто залить туда всё что нужно и увидеть где-то в памяти, повыше D000.
В совсем тупом, хотя и тяжелом случае, например, взять образ ИКП-бейсика-в-файле
(был такой в составе The BEST), нарезать его на пару десятков ПЗУшек по 2 кб (ну или что найдётся)
и втыкая их поочерёдно перенести его в озу.  А потом стартануть оттуда,
и получить и бейсик и дос и rwts для 140 и 840ки.


/Note: я сейчас сижу над платой, которая позволяет на любую из архитектур залить что нибудь сразу через USB ( XModem via UART via USB ). А также потестировать ОЗУ, что на семёрке, что на девятке. Хотя это не основные её функции. Всё это работает независимо от агатовского софта, даже при отказе сисмона. Клавиатура и монитор тоже не обязательны - плата может частично переносить эти функции на PC. В основе: ATMega128 и max240./

12 Отредактировано LeoN (09-07-2021 09:33)

Re: Запись программ на диски с магнитофонного входа

Sergei Frolov пишет:

Вот думаю, стоит ли написать программу, которая будет участок памяти записывать на дисковод?
То есть загружается эта программа через магнитофонный вход, загружается аналогично трек (треки) например загрузчика, запускается программа, и она записывает это на дискету.

Наверное имеет смысл написать на PC для АГАТа что-то подобное Яблочному такому или такому.

У меня в планах платка SD-контроллера с собственным ПЗУ: начальный загрузчик грузит с SD-карты файл типа AUTORUN.PRG, это может быть все что угодно (в том числе копировщик образов с SD<->ГМД840(140)), а может и любой бинарник.

Voldemar0 пишет:

/Note: я сейчас сижу над платой, которая позволяет на любую из архитектур залить что нибудь сразу через USB ( XModem via UART via USB ). А также потестировать ОЗУ, что на семёрке, что на девятке. Хотя это не основные её функции. Всё это работает независимо от агатовского софта, даже при отказе сисмона. Клавиатура и монитор тоже не обязательны - плата может частично переносить эти функции на PC. В основе: ATMega128 и max240./

Очень интересно!

Турбо АГАТ-9/16 (ЦП 65C802, 5 Махов, dual-port SRAM).

13 Отредактировано Voldemar0 (09-07-2021 17:56)

Re: Запись программ на диски с магнитофонного входа

> У меня в планах платка SD-контроллера с собственным ПЗУ: начальный загрузчик грузит с SD-карты файл типа AUTORUN.PRG, это может быть все что угодно (в том числе копировщик образов с SD<->ГМД840(140)), а может и любой бинарник.

Это интересно, я тоже думал над подобной затеей, но только у меня отличия:

1) основной интерес: создать DMA-движок с максимальной скоростью, который будет копировать данные RAM<->RAM и RAM<->NOR FLASH.

2) основное хранилище: микруха NOR-FLASH, где-то на 8-16 Мб. Я прикинул, что этого по уши достаточно, чтобы залить всё часто употребимое. Там не будет файловой системы, будут просто треки образов 140ок. И на плате будет переключатель, который позволит выбрать один из 8 образов для автозагрузки. Также будет SRAM для хранения буфера трека. Трек будет переписываться из SRAM в NOR после модификации и запроса на новый трек или выключении "дисковода".

3) Для программной поддержки будет написан миниатюрный код, эмулирующий RWTS.
Он будет встраиваться как hook к штатной RWTS и доступен на основных ОС.

4) SD-слот будет, но он будет доступен, скорее, через обычный PIO. И будет только отдельная прога, которая сможет забирать-отдавать данные на SD: я поддержу все варианты FAT со стороны SD, с поддержкой FIL-контейнеров и DSK-файлов, но это всё только чтобы скопировать данные из SD в NOR (или на обычную дискету) и обратно.

Вот я думаю по 4 пункту мы как раз можем объединить усилия и сделать устройства совместимыми, по крайней мере на уровне регистров. Если интересно: создай темку, туда перейдём.
Практически я своей частью буду заниматься после Моста 3, то есть это где-то 2023 год.
Но обсудить детали можно и сейчас.


> Очень интересно!

Тут начал новую тему:
http://forum.agatcomp.ru//viewtopic.php?pid=5120#p5120

14 Отредактировано Sergei Frolov (09-07-2021 13:21)

Re: Запись программ на диски с магнитофонного входа

Я считаю, что как только человек сможет что-то запаять, сразу проблема решается тем, что он сделает плату с эмулятором, и проблема отпадёт сама собой.

Кто-нибудь сможет мою программу проверить и потестировать на реальном железе?

15

Re: Запись программ на диски с магнитофонного входа

Могу на реале проверить, у меня сейчас всё развёрнуто.
Только подробно опиши, что и как делать.
Если прога под винду, то под какую версию.

16

Re: Запись программ на диски с магнитофонного входа

Прога под АГАТ. Её надо сконвертировать в .wav, залить с магнитофонного входа. Потом загрузить с магнитофонного входа какой-нибудь загрузчик в память. При запуске программы ввести адрес и трек, куда писать

17

Re: Запись программ на диски с магнитофонного входа

https://i.ibb.co/sQJ9WCC/2021-07-09-161912.png

18 Отредактировано Voldemar0 (09-07-2021 17:48)

Re: Запись программ на диски с магнитофонного входа

H-m-,... Тут надо попроще. Если у меня нет дискет, то фраза "её надо сконвертировать в wav" мне мало что говорит. Она, собственно, мне и сейчас ничего не говорит. Есть прога конвертации?

>  "Потом загрузить с магнитофонного входа какой-нибудь загрузчик в память."

Где его взять?
Загрузчик чего?
---

Ты сейчас пишешь мне как владельцу агата без дисков или ты просишь  проверить только конкретно эту прогу, которая что делает ? И где она, я аттачей не вижу к сообщению.
Под какую она архитектуру?
Ей нужен пустой диск или отформатированный под агат ? 840 или 140 ?

Может в аське пообщаемся или чем нибудь ещё ?

19

Re: Запись программ на диски с магнитофонного входа

Можно в телеграмм https://t.me/lautenaus
Или sfrolov@gmail.com

20

Re: Запись программ на диски с магнитофонного входа

В общем, программа работает, проверена на машине.
https://zx-pk.ru/threads/22005-agat-7-t … ost1123357

Программа
https://disk.yandex.ru/d/LcjruE2j_LNmUQ

Загружать из монитора 1000.1A73R
Потом 1000G

21

Re: Запись программ на диски с магнитофонного входа

Voldemar0 пишет:

H-m-,... Тут надо попроще. Если у меня нет дискет, то фраза "её надо сконвертировать в wav" мне мало что говорит. Она, собственно, мне и сейчас ничего не говорит. Есть прога конвертации?

Теоретически эмулятор должен конвертировать в wav, но из-за ошибки в интерфейсе, эта функция полноценно не работает.

22

Re: Запись программ на диски с магнитофонного входа

Prol пишет:

Теоретически эмулятор должен конвертировать в wav, но из-за ошибки в интерфейсе, эта функция полноценно не работает.

Не работает в эмуляторе или в АГАТе?  Какие там проблемы?

23

Re: Запись программ на диски с магнитофонного входа

Sergei Frolov пишет:

Не работает в эмуляторе или в АГАТе?  Какие там проблемы?

Не работает чтение в эмуляторе.
http://forum.agatcomp.ru//viewtopic.php?pid=4522#p4522
Запись, на сколько я помню, работает.

24

Re: Запись программ на диски с магнитофонного входа

А, ну это не проблема. Лишь бы работала запись с эмулятора и чтение на реальной машине.

25

Re: Запись программ на диски с магнитофонного входа

Тогда на реальной у меня не заработала, а проверить, что он там нававил в эмуляторе тоже не получилось. Поэтому пришлось забить на магнитофонный вход и дожидаться дискет с софтом.