Внимание! Это временный неофициальный архив старой версии форума Полигон Призраков, созданный сочувствующим форуму участником. Этот сайт просуществует лишь до тех пор, пока администрация Полигона не сдержит своё обещание и не откроет официальный архив по адресу old.sannata.org.

Полигон-2

Форум о старых компьютерах

Объявление форума

Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС.

Полигон-2 »   IBM PC-совместимое. До 2000 года включительно »   Кассетный интерфейс
RSS

Кассетный интерфейс

Принцип работы, реализация кассетного интерфейса на современном пк

<<Назад  Вперед>> Страницы: 1 2 3 4 5 6 7 * 8 9 10
Печать
 
Kurill_GANJOU
Newbie


Всего сообщений: 19
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 апр. 2014
Tronix написал:
[q]
Но дело не в конвертации, а в том, что конвертировать - нечего.
[/q]
... потому что кассетных коммерческих программ, написанных целиком на Бесике, для IBM компьютеров (в отличие от Спектрума) я что-то не припомню. Да и на Спектруме на бейсике писали обычно только загрузчик (там просто других вариантов не было), остальное - в машинных кодах...

Tronix написал:
[q]
Куда больший интерес представляют бинарные программы (не бейсиковые), типа игр или каких редакторов и тд.
[/q]
Почему для тестирования я предложил именно Бейсик?
В отличие от “Поиска”, у PC и PCjr не было в INT 15 функций чтения-записи файлов (AH=4, 5). Собирать файл из блоков должна была сама читающая-пишущая программа. А вот как раз это, кроме мелкомягко-айбиэмовского Бейсика, на айбиэмовских машинах в DOS никто делать не умеет. (По крайней мере, мне такие проги не известны). Подчеркну, именно для IBM, а не для «Поиска». Чтобы загрузить на PC / PCJr упомянутый IBM Diagnostics нужно предварительно запустить Бейсик (который там предусмотрительно расположен в ПЗУ, как МОНИТОР у “Поиска”). В перспективе я хочу написать программу, которая позволит грузить в память (и запускать) кассетные бинарники прямо с ленты. Это для любителей "тёплого лампового звука", так сказать...
Tronix
Advanced Member


Откуда: Москва
Всего сообщений: 1749
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
15 янв. 2008
Kurill_GANJOU написал:
[q]
В перспективе я хочу написать программу, которая позволит грузить в память (и запускать) кассетные бинарники прямо с ленты. Это для любителей "тёплого лампового звука", так сказать...
[/q]
Запускать на PC, соответственно? Но вопрос что запускать... IBM Diagnostics а) была в двух вариантах: на кассете и на дискете. То есть есть ее дискетная версия. б) кассетная запускается через basic, то есть бинарные данные в память сначала грузит небольшой загрузчик на бейсике. Если делать программу, грузящую бинарник прямо с ленты, нужно либо скипать этот бейсиковый загрузчик и грузить в память бинарь самостоятельно а потом передать ему управление, либо грузить бейсик, который грузит загрузчик, который грузит бинарный тест.

А для программ и игр с "отечественных" компов вроде бы Профессор Лампочкин уже написал такую программу - на PC запускается обычный кусок "монитора" Поиска, откуда можно грузить кассетную программу для него же.

Как сделать универсально - как распознавать, грузится ли IBM Diagnostics, Поиковый формат или от MC-1502? Имхо никак, придется вводить ключи, задающие что мы щаз грузим. Если IBM diagnostics - скипаем бейсик блок, грузим бинарь туда-то и передаем управление по такому-то смещению. Если Поиск - то грузим сразу блок туда-то и джампаемся туда-то. Если MC-1502, то помним что размер в заголовке у нас не в байтах а в блоках по 512 байт, и поступаем примерно как с Поиском.
uav1606
Advanced Member


Откуда: Енакиево
Всего сообщений: 4373
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
16 янв. 2008
Tronix написал:
[q]
Ему нужно, что бы файл wav был unsigned 8 bit, mono, PCM.
[/q]
Понятно, теперь нормально отконвертировал в CAS.


Kurill_GANJOU написал:
[q]
Точнее, конвертер из упакованного бейсик-формата в обычный текст. И этому горю можно помочь. У меня таких конвертеров две штуки (см. во вложении). Один на голом асме, а второй вообще на бейсике написан.
[/q]
К сожалению, ни один из них получившийся CAS-файл не смог преобразовать. Или я что-то не так делаю? CAS-файл во вложении.


Kurill_GANJOU написал:
[q]
А вот об этом, пожалуйста, поподробнее.
[/q]
Ну, если много блоков передаётся, то часы будут сильно отставать. Минуты, десятки минут? Не то чтобы это так уж важно...


Kurill_GANJOU написал:
[q]
К554СА3 есть?
[/q]
Нет, к сожалению. У меня с деталями туго - город маленький и т.п. На К561ЛЕ5А ничего такого не получится?

Прикрепленный файл (hellowld2.cas, 33 байт, скачан: 54 раза)
Fe-Restorator
Гость

Ссылка

Немного оффтопика, ЭксКузьмайте.
1) Какова ёмкость стандартной 90-минутной кассеты? Так скажем, неформатированная ёмкость: тупо пишем бесконечный поток битов на все 4 дорожки (2S2T).
Вроде-бы помещалось по 15 спековских игрушек на моно-дорожку МК60 (мельком заметил где-то на развале тех времён). Т.е. (15*2+15)*2=90 игр на 4-х дорожках МК90. Разумеется, сии попугаи весьма неточные...
2) Поскольку прог "от поиска" всё-ж не так много, появилась мысль преобразовать сию программу в некое подобие "арвид"-а, и складировать на ленту обычные РС-проги. Например, для переноса с современного компа в ХТ. В обход промежуточных первопней, сказей, траблов с лапете-линками, с флоппи-сайквестами и прочих. На компе формируем бит-WAV, скармливаем магнитофону/флеш-плейеру, а с него - в ХТ, в денди, ещё куда-там 8 бит могут поместиться. И обратно тем-ж путём.
3) Идея-фикс: RAID-TAPE. Т.е. запись одного файла сразу на 2 ("стерео")дорожки. Бит-стереозапись. Просто из спортивного интересу, не более того.
Сейчас на форуме
Kurill_GANJOU
Newbie


Всего сообщений: 19
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
19 апр. 2014
Tronix написал:
[q]
Если делать программу, грузящую бинарник прямо с ленты, нужно либо скипать этот бейсиковый загрузчик и грузить в память бинарь самостоятельно а потом передать ему управление...
[/q]
Вот именно так и хочу! А универсальную прогу для разных форматов заголовков («MC-1502» / «Поиск») делать не вижу смысла.

uav1606 написал:
[q]
К сожалению, ни один из них получившийся CAS-файл не смог преобразовать. Или я что-то не так делаю? CAS-файл во вложении.
[/q]
Странно. У меня тоже самое… Даже Бейсик не хочет этот файл принимать за родной. (Я переименовал расширение .CAS в .BAS и обрезал название до 8-ми символов). Грузить-то он его грузит. Только на команды LIST и RUN в ответ – тишина.
Попробуйте сохранить бейсик-прогу как обычный текст сначала на диск (SAVE “имя_файла.bas”, A), потом как на кассету (SAVE “CAS1:имя_файла”, A). Получившуюся wav’ку скормите wav2cas.
CAS и BAS файлы должны совпадать байт в байт.

uav1606 написал:
[q]
На К561ЛЕ5А ничего такого не получится?
[/q]
На КМОП / МДП, конечно, получится. Просто, объедините входы инверторов (для ЛЕ5 это будут 1 и 2, 5 и 6, 8 и 9, 11 и 12-я ноги) так, чтобы двухвходовые лог. элементы стали одновходовыми.

Fe-Restorator написал:
[q]
Какова ёмкость стандартной 90-минутной кассеты? Так скажем, неформатированная ёмкость: тупо пишем бесконечный поток битов на все 4 дорожки
[/q]
При скорости 1200 бит/c имеем:
90 (мин) x 60 (сек) x 1200 (бит/сек) = 6 480 000 бит, или 791 Кбайт.
Ну, это без учета пилот-тона, пауз, байтов CRC, синхробайтов и т. п. Теоретический предел, короче...
Кай
Гость
Divine Assassin

Откуда: извне (from beyond)
Всего сообщений: 13709
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
8 авг. 2010
[q]
Какова ёмкость стандартной 90-минутной кассеты?
[/q]
Лучшие модели стримеров D/CAS TEAC умели записывать 45 мегабайт на 135 метров 3.81 ленты. (17 дорожек)
Делим на 4... Вносим поправку на коэрцитивную силу носителя и детонацию механизма... Ну мегабайт 8 получится.

У спектрумов - атари - коммодоров на одну дорожку (грубо) килобайтов 100.
Tronix
Advanced Member


Откуда: Москва
Всего сообщений: 1749
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
15 янв. 2008
Fe-Restorator написал:
[q]
Поскольку прог "от поиска" всё-ж не так много, появилась мысль преобразовать сию программу в некое подобие "арвид"-а, и складировать на ленту обычные РС-проги. Например, для переноса с современного компа в ХТ.
[/q]
А я кстати так и кидал одно время файлы на Поиск, когда у меня еще 3,5" флоп не был к нему подключен, COM-портов не было и ессно IDE-винта/CF-флешки не было. А флоп 5,25" мне конечно было лень каждый раз тыкать туда-сюда к основному системнику.

С помощью своей cas2wav конвертил файлы в WAV, WAV закидывал на mp3-плеер, а на Поиске юзал тулзу, которая с кассеты сохраняет файл на диск. Зовется она TAPEIO.COM ( © Sergey V.Moskalenko ), хотя есть и другие, например тот же "Копировщик" от mc-1502. Я даже таким макаром умудрился винду 3.0 перекинуть с PC на Поиск. Правда пришлось создавать многотомный rar-архив по 64Kb, так как файл на кассете не может быть больше 64Kb (в заголовке поле size 16-битное). Ну ничего, все шло в автоматическом режиме - на плеере начал с первого архива проигрывание, на Поиске запустил TAPEIO и постепенно он скидывал мне все архивы с плеера на MFM-диск. Потом на Поиске просто распаковал архивы и вуаля :-)
Fe-Restorator
Гость

Ссылка

Kurill_GANJOU написал:
[q]
При скорости 1200 бит/c имеем:
90 (мин) x 60 (сек) x 1200 (бит/сек) = 6 480 000 бит, или 791 Кбайт.
Ну, это без учета пилот-тона, пауз, байтов CRC, синхробайтов и т. п. Теоретический предел, короче...
[/q]
Н-да, негусто. Конечно, нужно удвоить результат, ибо 2 дорожки на кассете, т.е. примерно 1600Кбайт, но и это негусто. Даже теоретически.
Интересно, чем обусловлена скорость записи на ленту, те 1200 бод. Увеличить её наверняка можно, т.е. это не предел "меньше одного магнитного домена" для ленты. Рассматриваю "идеальную ленту", без присущих ей помех.

Кай написал:
[q]
Ну мегабайт 8 получится.
[/q]
Учитывая 40 мегабайт ёмкости винча ХТ, этот результат мне больше нравится.
Сейчас на форуме
DrPass
Advanced Member


Откуда: Донецк
Всего сообщений: 3566
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
17 апр. 2005
Fe-Restorator написал:
[q]
Интересно, чем обусловлена скорость записи на ленту, те 1200 бод. Увеличить её наверняка можно, т.е. это не предел "меньше одного магнитного домена" для ленты. Рассматриваю "идеальную ленту", без присущих ей помех.
[/q]
Исключительно тем, что оно должно работать на советских бытовых магнитофонах а-ля "Весна". Т.е. запись должна быть нечувствительна к высоким шумам, узкой полосе пропускания, неравномерному движению ленты, разным скоростям на разных устройствах и т.д. :)


Fe-Restorator написал:
[q]
Учитывая 40 мегабайт ёмкости винча ХТ, этот результат мне больше нравится.
[/q]
На IBM PC XT винт был всего 10 мегабайт
Fe-Restorator
Гость

Ссылка

DrPass написал:
[q]
На IBM PC XT винт был всего 10 мегабайт
[/q]
Изначально - да. Однако, наиболее распространён именно ST251-ый, (урезать его до 10 мегабайт как минимум - глупо) посему и взят 40-вник за точку отсчёта.

DrPass написал:
[q]
работать на советских бытовых магнитофонах а-ля "Весна". Т.е. запись должна быть нечувствительна к высоким шумам, узкой полосе пропускания, неравномерному движению ленты, разным скоростям на разных устройствах и т.д.
[/q]
Не вполне аутентично, но современные флаш-играйки лишены большей части сих недостатков. А в "совейских мафонах" уже давно погнила вся "резина"...


PS. Быстрый поверочный расчёт:
примем величину рабочего зазора магнитной головки в 5 мкм, тогда за секунду можно "уписать" 47,6/0,005=9520 бит.
Теперь "заштампуем" всю ленту: 9520*(90мин*60сек*2дорожки)=102816000 бит на ленту. Делим на 8, имеем 12852000байт, т.е. 12,8 мегабайт на ленту. Теоретический предел, так-сказать.

Спортивный интерес побороться за такой объём уже проявился. Осталось оценить, насколько сие реально. Для начала - методом цифровой эмуляции.

PPS. Верится с трудом, но
Кай написал:
[q]
Лучшие модели стримеров D/CAS TEAC умели записывать 45 мегабайт на 135 метров 3.81 ленты.
[/q]
а Вика бачит "as much as 0.6GB of data" на кассету. :rolleyes: Т.е. все игрухи эпох ХТ и 286 на одной кассете...
Сейчас на форуме
<<Назад  Вперед>> Страницы: 1 2 3 4 5 6 7 * 8 9 10
Печать
Полигон-2 »   IBM PC-совместимое. До 2000 года включительно »   Кассетный интерфейс
RSS

1 посетитель просмотрел эту тему за последние 15 минут
В том числе: 1 гость, 0 скрытых пользователей

Последние RSS
[Москва] LIQUID-Акция. Сливаются разъемы CF
МС7004 и 7004А на AT и XT
Пайка термотрубок
Проммать s478 PEAK 715VL2-HT ( Full-Size SBC)
Подскажите по 386 материке по джамперам.

Самые активные 5 тем RSS