PDA

Просмотр полной версии : Компьютер "Океан-240"



Страницы : [1] 2

Gryphon
03.11.2010, 12:34
Кто-нибудь видел сей компьютер? Это ж вроде от него взяты архитектурные и схемотехнические решения для Ориона-128? Я нашел совсем немного (http://emu80.org/dev/dev_ok.html)про него. Может кто-нибудь поделится доками, фотками?


Вероятно не все еще читали материал про создателя Океанов (https://ocean.ru/index.php/novosti-left/ob-yavleniya/item/964-ushel-iz-zhizni-dmitrij-alekseevich-tilinin)


Много материала, его большая часть, собрано здесь (http://azmaster.narod.ru/Ocean-240/)

KALDYH
03.11.2010, 12:46
Полный цикл статей про него есть в журнале "Микропроцессорные средства и системы". Описание, схема, печатка, прошивки. В принципе, этого достаточно, чтобы собрать его самому.

А вот насчет фоток... Есть мнение, что кроме авторов его никто не собирал.

Gryphon
03.11.2010, 12:48
KALDYH, спасибо. Буду искать. уж больно понравился по описанию. Хотя собрать, это врят ли. Если только не заказать печатку....

MV1971
03.11.2010, 13:49
Если надо, могу сканировать с журнала, только после праздников.

Gryphon
03.11.2010, 14:17
MV1971, спасибо, не надо. я вроде нашел, где можно все это скачать.

L Juriy
03.11.2010, 15:05
Я работал на нем. Стоит в кладовке, но давно не включал

---------- Post added at 18:05 ---------- Previous post was at 17:57 ----------

Мой вариант Океана (http://foto.mail.ru/mail/eslif/194/195.html)

BYTEMAN
03.11.2010, 16:46
Gryphon, киньте ссылку, пожалуйста.

Gryphon
03.11.2010, 17:07
http://rutracker.org/forum/viewtopic.php?t=2985798

Mick
03.11.2010, 19:00
Я работал на нем. Стоит в кладовке, но давно не включал

---------- Post added at 18:05 ---------- Previous post was at 17:57 ----------

Мой вариант Океана (http://foto.mail.ru/mail/eslif/194/195.html)

А не можете сдампить содержимое ПЗУ-х? Ну и не поделитесь воспоминаниями, как его приобрели, что творили на нем.
Я про этот комп еще в МП в 90-х читал, интересная машинка для 85 года была как впрочем и много других.

---------- Post added at 19:00 ---------- Previous post was at 18:46 ----------


Это ж вроде от него взяты архитектурные и схемотехнические решения для Ориона-128?

Предположу что вряд ли. Автор Ориона-128 в 85 году, если фото из журнала Радио не врет, то выставлял на выставке тоже какой то комп.
А схемотехника, если сравнить многие модели наших машин приблизительно схожа только вариации разные :)

BYTEMAN
03.11.2010, 19:59
да, но в сносках на используемую литературу (Радио 90/1) фигурирует Океан-240. ДУмаю, об этом вопросе лучше спросить у pvlad'а

L Juriy
04.11.2010, 07:59
Mick, К сожалению быстро не нашел дампов, хотя где-то должны быть.
Еще посмотрю.
Снять дамп могу только запустив компьютер, нет программатора.
Ну а его я не включал уже очень давно, может и не запуститься.

Rokl
06.11.2010, 09:49
Полный цикл статей про него есть в журнале "Микропроцессорные средства и системы". Описание, схема, печатка, прошивки. В принципе, этого достаточно, чтобы собрать его самому...
Прошивок ПЗУ монитора не было, потому его ни кто и не собирал. Меня тоже это остановило.
Вообще журнал "Микропроцессорные средства и системы" прошивок на схемы публикуемых микропроцессорных устройств не давал, а печатал адрес, по которому можно было связаться с автором. А жаль, там много было чего интересного.

KokaF77
08.11.2010, 22:35
L Juriy, Я у Вас в альбоме видел фото "Контроллер гибких дисков для Океан 240".
Схемой не поделитесь? Своя конструкция или авторская (создателей "Океана")?
Тем более интересен дамп ПЗУ...


Rokl, А дампы и листинги были. Не на всё конечно, но были. "На Иришу" как один из примеров. Кстати, в 3 номере за 1987 год приводился дамп тестового ПЗУ для отладки "Океана". А после, увы, больше никаких упоминаний...

ZEman
09.11.2010, 05:41
дамп ПЗУ это было бы здорово, наверняка тогда b2m добавит этот комп в эмулятор :)

b2m
09.11.2010, 11:26
Наверняка. :)

Rokl
09.11.2010, 20:25
Rokl, А дампы и листинги были. Не на всё конечно, но были. "На Иришу" как один из примеров. Кстати, в 3 номере за 1987 год приводился дамп тестового ПЗУ для отладки "Океана". А после, увы, больше никаких упоминаний...

Вопрос про "Океан" был, голословных утверждений не нужно, нужен скан листинга ПЗУ из МПСиС.

Я сразу сказал, что дампа ПЗУ для "Океана-240" в МПСиС не было.
Ириша это единственный пример и то всё кусками...и не факт, что все куски в наличии.

KokaF77
09.11.2010, 22:22
Rokl, Вы всегда по диагонали сообщения читаете?


в 3 номере за 1987 год приводился дамп тестового ПЗУ для отладки "Океана". А после, увы, больше никаких упоминаний...

По поводу "Ириши". Все дампы и листинги для базового варианта были опубликованы. Остальное не успели.

По поводу публикаций дампов ПЗУ. Онные не печатались не из-за того, что редакция этого не хотела, а по причине того, что авторы их не предоставляли.
И это не "голословные утверждения"... Пожалуйста, читайте повнимательнее данный (МПСиС) журнал, не через строку...


Mick: Просьба не флеймите, пишите по существу - это относится ко всем. Спасибо за понимание.

L Juriy
14.11.2010, 14:36
KokaF77,
Вот все что нашел по дополнениям (http://file.qip.ru/file/uQGS5bqC/ok1.html), в том числе и схема флоповводов.
Возможно что-то лишнее, сильно не разбирался.
Прошивок пока не нашел, но должны быть, так как нашел дизассемблированные распечатки Monitor, bios, bdos, ccpcom. На бумаге. Ищу в электронном виде.

KokaF77
15.11.2010, 18:37
L Juriy, Спасибо Вам за информацию.


Прошивок пока не нашел, но должны быть,
Будем ждать...


так как нашел дизассемблированные распечатки Monitor, bios, bdos, ccpcom. На бумаге. Ищу в электронном виде.
Это тоже не помешало бы...

Чем больше информации будет по этому компьютеру, тем только лучше для всех.

L Juriy
18.11.2010, 18:19
И так что имеем.
Коды (http://file.qip.ru/file/6MXsKejh/PZU.html) на основе которых проводилась дизассемблирование.
Там же текстовые файлы описывающие адреса.
На вопросы придется отвечать.
Распечатки только на бумаге.

KokaF77
18.11.2010, 19:47
L Juriy, Спасибо!!!!! :)
Появляется смысл до собрать машину... :v2_conf2:

b2m
19.11.2010, 13:09
L Juriy, в архиве есть файл mon.bin, и я подумал, что это монитор Океана-240, однако это явно не от него (размер не тот, да и работает с терминалом на портах 0,1). CCP и BDOS скорее всего стандартные, работают в адресах E000-E7FF и E800-F5FF соответственно. BIOS CP/M на адресах F600-F9FF, тоже обращается к портам 0,1. Это точно от Океана? К нему, на мой взгляд, относятся лишь файлы с документацией.

L Juriy
19.11.2010, 16:40
Да, монитор действительно не от Океана.
Бардак у меня в архивах.
Это монитор от другого компа описанного в МПСС под названием МС12ХХ.
А от Океана не могу найти, скорее всего потерял.
Адреса остальных написаны на листке.
Есть еще таблица портов ввода вывода, и последовательность загрузки.

KokaF77
19.11.2010, 16:50
L Juriy, Может получится ПЗУшки прочитать программатором. Наверняка в Вашем городе у кого-нибудь есть...?

b2m
19.11.2010, 18:20
Есть еще таблица портов ввода вывода, и последовательность загрузки.
Гораздо более полная информация есть в МПСиС 86'4, там даже схема есть. Но без ПЗУ БИОС и адаптированного СР/М я, увы, ничего не смогу сделать. И ещё вопрос: сохранились ли какие-либо программы на кассетах? Или может быть на дискетах?

L Juriy
19.11.2010, 20:46
Должна быть кассета.
Искать нужно, проверять на читабельность и переписывать на РС.
В выходные посмотрю.
Список программ в приложении.

L Juriy
25.11.2010, 18:41
Ну все оказалось совсем по другому.
Нашел 4 кассеты с надписью Океан 240.
Попытки снять информацию пока закончились тем,что
есть с одной кассеты оцифровка.
Кассеты почти не читабельны от старости.
Да еще и магнитофоны начали гореть идин за другим.
Это которые из старых, они вроде читают помаленьку.
Новые сразу останавливаются.
Сам Океан 240 НЕ запустился, придется запускать.

KALDYH
25.11.2010, 20:30
В принципе, можно вычитать их просто в WAV файл и выложить как есть. А там уже в редакторе обработать не проблема. Еще очень большое значение имеет правильная установка головки в магнитофоне, обычно из-за этого все проблемы с чтением.

KokaF77
25.11.2010, 20:58
L Juriy, и все же, может найдётся чем прочитать ПЗУ?... :confused:

L Juriy
25.11.2010, 21:04
KALDYH,
Проблема больше физическая, кассета просто останавливается.
Это кассеты МК-60 советского производства.
Запись делалась на Веге 320. Естесно моно.
Пробовал на ней читать, но совсем не фонтан, все плывет.
Читал на Веге МП120 качество чтения приличное. но останавливается.
Сегодня считывал на Радиотехнике МП302, но при этой операции она сдохла.
Электролит(конденсатор) хотел взорваться но не успел, но дыму было много.
Буду еще читать, уж потом выложу.

---------- Post added at 00:04 ---------- Previous post was at 00:02 ----------

KokaF77, Программатор обещали, но пока нет.

KokaF77
25.11.2010, 21:23
Проблема больше физическая, кассета просто останавливается.
А старый проверенный метод? Разобрать. Натереть мягким графитовым карандашом... сами знаете что. :) Собрать. Пару-тройку раз перемотать туда-сюда до конца кассеты, в обе стороны. Однозначно должно помочь.

P.S. Вообще, при длительном хранении магнитных лент рекомендуют периодически их перематывать. Слипание плёнки, деформация, перераспределение магнитных доменов... :) Понятно, что не до этого, да, иногда это и не актуально. :(

L Juriy
25.11.2010, 21:51
Кассеты пока еще не разбирал, но видимо дойдет и до этого.
Счас с магнитофонами разберусь.
А потом и до кассет дойдет очередь.

KokaF77
17.12.2010, 23:53
L Juriy, Новости есть?... :)

L Juriy
19.12.2010, 16:43
Кассеты вроде считал. Проблема как из них сделать файлы.
Сам Океан не дышит, пока запустить не удается.
Вот такие пироги.

ZEman
19.12.2010, 16:52
L Juriy, так вы выложите то что считали с кассет (я полагаю это wav файлы) а перевести их в нормальный вид не так уж и сложно, здесь много спецов по переводу касет.

KokaF77
19.12.2010, 16:54
Жаль... :(
Буду ждать дампы ПЗУ.
Хочется всё-таки поставить на ноги свой "Океан-240.2"... :)

L Juriy
19.12.2010, 18:22
ZEman,
Может подскажете какой программой их сконвертить.
Или специалиста по ФИМ записям подскажите.

L Juriy
19.12.2010, 18:22
Бл...н форум тормозит по черному и глючит страшно.
Все сообщеня дублируются.:mad:
Вот один (http://file.qip.ru/file/DVWYZu9k/Cas4s-sd1-f09wav.html) из файлов для пробы:smile:

KALDYH
27.12.2010, 21:47
Странно, что эта ссылка здесь не проскакивала:
http://azmaster.narod.ru/Ocean-240/index.htm
http://azmaster.narod.ru/Ocean-240/images/Ocean-240_1.jpg
This page is full of WIN and awesome...

b2m
27.12.2010, 22:39
Странно, что эта ссылка здесь не проскакивала
Там и ПЗУ монитора есть. Придётся делать эмулятор... :)

KokaF77
28.12.2010, 08:41
Ура, свершилось!!! Соберу свой "Океан". :v2_cheer:

Gryphon
28.12.2010, 09:23
А там есть печатная плата? Может собрать энтузиастов и заказать?

ZEman
28.12.2010, 09:27
L Juriy, пожалуйста выложите все остальные записи касет для "океан 240", думаю b2m, скоро заэмулирует этот компьютер.

L Juriy
28.12.2010, 18:40
:mad_std: Это монитор не из комплекта Океана-240.2.
В файле tmo240.asm сообщение
************************************************** *
Turbo MONITOR Ver 2.0 for 13.11.93 (C)AZMaster"
************************************************** *
:smile:
В файле 0xE000_Monitor.bin сообщение
"HARDWARE MONITOR+ V1"

В моей комплектации монитор выводит сообщение
"240/7 MONITOR":smile:
Похоже существовало несколько мониторов:eek_std:

KALDYH
28.12.2010, 19:38
А там есть печатная плата? Может собрать энтузиастов и заказать?
В журнальной статье есть.

Это монитор не из комплекта Океана-240.2.
В файле tmo240.asm сообщение
************************************************** *
Turbo MONITOR Ver 2.0 for 13.11.93 (C)AZMaster"
************************************************** *
Судя по копирайту, эта версия модифицирована или написана с нуля автором сайта. Я думаю, стоит попробовать написать ему по электронке, может, у него еще какой софт есть. Адрес почты на той же странице.

Atari
28.12.2010, 20:00
ну да... это сколько кода можно былоб запхнуть вместо этих звездочег...

b2m
28.12.2010, 20:49
Похоже существовало несколько мониторов
То, что это переделанный вариант, я уже понял. Но там не много переделано: вместо командной строки - редактор дампа. Остальное, наверное, стандартно.

KokaF77
28.12.2010, 21:14
Кто-нибудь писал Azmaster`у на мыло, задавал вопросы по поводу его реализации "Океана"?
По поводу монитора прояснить ситуацию могли бы дампы ПЗУ L Juriy`я, но к сожалению их пока нет... Можно было бы сравнить.

L Juriy, расскажите, если не трудно, происхождение "содержимого" ваших ПЗУ. Каков первоисточник?

L Juriy
28.12.2010, 21:45
KokaF77,
Куплена плата и содержимое ПЗУ на кассете в Томске в Политехническом институте у ребят. которые имели связи с разработчиками.

KokaF77
28.12.2010, 21:57
L Juriy, по странному стечению обстоятельств, печатка моего "Океана" тоже из Томска. :)

Написал на мыло Azmaster`у буду ждать ответа. Может он что-нибудь прояснит... :v2_conf2:

Gryphon
29.12.2010, 01:32
KokaF77, а у Вас есть чистая плата? Можете ее отсканировать с двух сторон?

KokaF77
29.12.2010, 09:21
KokaF77, а у Вас есть чистая плата? Можете ее отсканировать с двух сторон?

С сожалению отсканировать не получится. Плата частично распаяна, установлены почти все микросхемы и панельки.

KokaF77
29.12.2010, 11:53
Могу попробовать сделать скан печатки из журнала "МПСиС" в хорошем качестве, если необходимо.

b2m
29.12.2010, 17:13
L Juriy, можно Вас попросить оцифровывать с большей частотой дискретизации? Просто у Океана-240 довольно большая частота магнитофонной записи, и например при частоте дискретизации 44100Гц полупериоды будут в диапазоне 6-12 сэмплов, а порог, с которым сравнивается - где-то 9. А т.к. обычно длины полупериодов получаются плюс-минус один-два сэмпла, то даже при 44100Гц нет гарантии от ошибок. Что уж говорить про 22050Гц (это то, что было выложено для примера).

На данный момент в эмуляторе считывается то, что было в эмуляторе записано, а вот Ваша запись - нет.

marinovsoft
29.12.2010, 18:37
Подтверждаю, "длинный" полупериод в вашей записи в среднем 5 сэмплов. С "коротким" еще хуже.

b2m
29.12.2010, 20:24
marinovsoft, я так понял, Вы пытались сконвертировать данные. Возможно, Вам будет полезна следующая информация:
- один бит кодируется одним полупериодом, 0 - короткий, 1 - длинный
- биты выводятся начиная с младшего
- байт синхронизации - F5, т.е. следующая последовательность: 10101111
- перед байтом синхронизации идёт байт 00, а перед байтом 00 четыре очень длинных полупериода (соответствует примерно 6,5 коротких или 3,5 длинных).

---------- Post added at 22:24 ---------- Previous post was at 22:16 ----------

И ещё, измерять нужно не ширину положительного или отрицательного полупериода, а расстояние между максимумами/минимумами.

marinovsoft
29.12.2010, 20:27
b2m, как Вам сказать, наудачу попробовал прогнать через свою корветовскую утилитку. А форматец-то хитрый...

Gryphon
30.12.2010, 01:45
KokaF77, если можно, сделайте, пожалуйста, и отправьте мне на мыло gryphon1(a)bk.ru

L Juriy
30.12.2010, 14:00
b2m,
Вот тут запись (http://file.qip.ru/file/ZmEEiQ2F/Cas3s-sd1wav.html) что просили.
У меня оцифровано в стереоj на 44 и сохранено в формате FLAC.
Формат блока записи(по программе) следующий.
1 запись 5 с частотой 588 гц
2 запись 3 с частотой 588
3 запись 5 с частотой 588
4 запись 3 с частоой 588
......
запись F5 признак данных
запись FFFF или 0000
запись 128 байт из буфера
запись FFFF или 0000
запись 0
Примерно так.
Биты пишутся чередоваием 5 3 5 3 5 3 5 3 или 3 5 3 5 3 5 3 5
0 пишется частотой 4166
1 пишется частотой 2374
Да формат записи Фазоимпульсная модуляция.

b2m
30.12.2010, 15:21
К сожалению, опять промах - слишком громко. Максимумы и минимумы были "срезаны", а именно они играют важную роль в данном типе записи.

L Juriy
30.12.2010, 15:34
b2m,
Придется заново оцифровывать.
Оцифровывал как для РК86.
Ламерский вопрос, как эмулятору подсунуть этот файл?
Попробуй вот этот (http://file.qip.ru/file/hCqw0P0A/Cas1s-s1wav.html).

b2m
30.12.2010, 16:32
Ламерский вопрос, как эмулятору подсунуть этот файл?
На тулбаре есть кнопочка, похожая на "воспроизвести" магнитофона. Но у меня подозрение, что всё-равно не получится считать. Сейчас анализируется не направление изменения сигнала, а выше он или ниже середины.

L Juriy
30.12.2010, 16:43
b2m, Уже нашел, спасибо.
Не читается, гоняю свои оцифовки.

b2m
30.12.2010, 17:00
Уже лучше. После небольшой конвертации стали появляться осмысленные буковки ("wwedite parametr"), даже имя файла один раз считалось KR04.BAS. Но ошибки чтения почти в каждом блоке. Непонятно, то-ли качество записи хромает, то-ли алгоритм перевода в еденички-нули...

L Juriy
30.12.2010, 17:57
b2m, А что за конвертация?
Файл был пребразован из стерео в моно, может здесь собака порылась.
Программа Audacity под Ubuntu. Я ею делаю все преобразования.
А варианта эмулятора под Linux не найдется ?
А то запускаю в виртуал боксе.

marinovsoft
30.12.2010, 18:03
L Juriy, выкладывайте файл в таком виде, как он был записан. Дополнительные преобразования b2m сделает сам при необходимости. Следите, чтобы не было сильного клиппинга при записи, и чтобы средний уровень не был очень малым. ИМХО, на -5Дб будет норм.

b2m
30.12.2010, 18:44
Варианта для линуха нет, и ближайшее время не будет.
Моно-стерео роли не играет, других преобразований желательно не делать.

Конвертация простая: ниспадающий сигнал преобразуется в уровень, соответствующий нулю, возрастающий - еденице. Таким образом можно без изменения эмулятора проверить версию об алгоритме преобразования сигнала в нули/еденицы. Пока не очень удачно, непонятно почему.

---------- Post added at 20:44 ---------- Previous post was at 20:03 ----------

М-да. Если измерять расстояние между экстремумами, то встречаются нули по 9 сэмплов, и еденицы по 10 сэмплов. Через эмулятор это явно не пройдёт, слишком уж тонкая эта грань. Можно попытаться конвертор замутить, формат-то уже известный, но и там нет гарантий от ошибок. Такое чувстро, запись всё-же пострадала от времени. В программе ширина полупериодов достаточно сильно отличается для нуля и еденицы (360 и 660 тиков таймера), почти в два раза. Если принять за середину 9 сэмплов, то нули и еденицы должны быть 6-7 и 11-12 сэмплов.

L Juriy, а на реале часто ошибки чтения были?

L Juriy
30.12.2010, 18:51
b2m, На плохих кассетах встречались, а так в основном стабильно было.
Обычно на касету писал по два раза.
Касета 4 похоже сильно пострадала, а вот на ней то и должны быть монитор и все стальное.

marinovsoft
30.12.2010, 19:01
b2m, а можете для таких тупых как я подробнее объяснить формат кодирования "1" и "0", с обозначениями на идеальной сигналограмме. Например, для Корвета я описывал формат так http://marinovsoft.narod.ru/korvet/basic_korvet.pdf

L Juriy
30.12.2010, 19:36
marinovsoft, Постом выше я писал как кодируется 1 и 0.
В описании Океана пишут следующее:
При фазоимпульсном способе записи логическая информация кодируется интервалами между переходами сигнала из одного логиского состояния в другое. Таким образом, при считывании данных задача состоит в том чтобы с минимальной погрешностью измерять временные интервалы между пиками воспроизводимого сигнала.
Рисунок можно посмотреть в журнале МПСС №4 за 1986г стр.78
Вот и вся информция.
При считывании используется прерывание от 53 счетчика
который предварительно программируется на осчет.(временной интервал).
Это уже из прогпаммы чтения в мониторе.:redface:

b2m
30.12.2010, 22:09
Измеряем время (количество сэмплов) от минимума до максимума, если меньше 9 (при 44100Гц) то ноль, больше - еденица. Далее от текущего максимума до следующего минимума, и т.д. Короче, расстояние между соседними минимумом и максимумом определяет значение бита.

doorsfan
30.12.2010, 23:46
уважаемые, извините за ламерский вопрос: а наклон головки регулировался (для достижения максимальной звонкости)?
да, и лучше аплоудить файлы всё-таки в стерео, нестабильность (перекосы) ленты не так будут влиять на АЧХ.

esl
30.12.2010, 23:48
нифигасебе магнитофонный узел у океана ...
tape out - 3bit DAC (mpss86-05 p73 dd67 C0-C2)
tape in - тоже 2 бита на вход (D78 b2-b3)
аппаратный фильтр 10khz
амплитудный детектор
т.е. в этом режиме он аппаратно детектирует пики ...
и нужо только длительности посчитать
и скорость 6000бод
+ "детектор межблочных промежутков" (87_3_85)

2b2m: простой 0/1 детектор не покатит :)
по крайней мере для ФИМ

b2m
31.12.2010, 16:41
нифигасебе магнитофонный узел у океана ...
Ну дык, океанологи делали :)
Они ещё и для измерения промежутков времени используют третий режим таймера, который обычно для формирования меандра используется.

А трёхбитный DAC всё равно как однобитный используется (выводится 3 и 5, только лишь в конце устанавливается 4). А вход тоже однобитный, второй бит используется только как детектор паузы (и то в драйвере не используется).

b2m
03.01.2011, 15:56
Попробуй вот этот (http://file.qip.ru/file/hCqw0P0A/Cas1s-s1wav.html).
Попробовал сделать конвертор, вот что получилось. Как видно, ошибок дофига, но лучше не получается.

L Juriy
03.01.2011, 16:35
Можно конвертор для обкатки получить?:v2_wink2:

b2m
03.01.2011, 22:53
Вот, пожалуйста. Но учти, запускать исключительно с двумя параметрами: входной .wav файл и выходной файл. В качестве входного может быть только wav 44100Гц моно 16 бит. Никаких сообщений программа не выдаёт (это просто тестовая программка).

L Juriy
06.01.2011, 08:54
Увы блин, плохие новости.
На всех своих оцифрованных, по по новому касетах, я так и не нашел монитора
для своего Океана. Остались только распечатки.
Вариант еще считать с РФ4, но пока промблема с программатором.
Сам Океан не запускается, и есть подозрение именно из-за этой РФ ки с монитором.
Один раз уже такое было, пока не перепрошил не запускался.
Коввыряю дальше.

tnt23
06.01.2011, 10:25
А нельзя ли распечатки отсканировать, почистить и от-OCR-ить? а потом как-нибудь сконвертировать в бинарники, наваяв скриптец.

L Juriy
06.01.2011, 10:48
tnt23, Так и придется сделать.
Правда распечатка на DZM-180 была сделана.
Качество не фонтан.
Короче не быстро.

BYTEMAN
06.01.2011, 13:04
Я готов вбить дампы вручную!!!

b2m
06.01.2011, 14:44
Правда распечатка на DZM-180 была сделана.
Ну хоть сканы распечатки дайте! Ведь есть один вариант монитора в бинарном виде, наверняка не очень отличается от того, что в распечатке. В этом случае отличия можно и ручками набить.

KokaF77
06.01.2011, 15:40
И я ж о том же... Можно и через LPT прочитать. Не ПРОШИВАТЬ же их (ПЗУ).

BYTEMAN
06.01.2011, 15:42
Если надо будет, я готов вручную по распечатке набить дамп.

KokaF77
06.01.2011, 17:18
Если надо будет, я готов вручную по распечатке набить дамп.
Спасибо!

Сканы в студию!!! Да, и попробовать прочитать не помешало бы...

---------- Post added at 17:13 ---------- Previous post was at 15:48 ----------

УРА!!! В наших рядах прибыло!!!
AZMaster откликнулся...



Время доброе! Извиняюсь что сразу не ответил, праздники, сами
понимаете! Ну что можно тут сказать... достался мне этот компьютер
совершенно случайно, познакомился с одним человеком, который имел
доступ в круг создателей Океана, он то меня и обеспечивал всеми
необходимыми схемами и платами. Так что всё чем я владею обязан ему.
Из моего в этой конструкции только блок питания и собственноручно
написанная программа Турбо монитора. Было ещё пару программок, но не
знаю куда я их запихал, возможно где то на компактах, но не уверен что
удасться их оттуда выудить, так как все 700мб дисководы канули в лета.
Был приятно обрадован что всё ещё остался в обществе интерес к Океану,
только вот не могу попасть в ваш форум, аккаунт не авторизуется до сих
пор. Надеюсь будем поддерживать связь... Не отключаюсь... ))

Уважаемые Админы ускорьте, ПОЖАЛУЙСТА, активацию пользователя AZMaster... :)

http://azmaster.narod.ru/Ocean-240/index.htm
http://azmaster.narod.ru/Ocean-240/images/Ocean-240_1.jpg

---------- Post added at 17:18 ---------- Previous post was at 17:13 ----------

Будем ждать полноценного общения. :v2_dizzy_rastoman:

BYTEMAN
06.01.2011, 18:22
Уважаемые Админы ускорьте, ПОЖАЛУЙСТА, активацию пользователя AZMaster...

Когда во Владике утро будет, тогда и активируют :)

KokaF77
08.01.2011, 00:32
Когда во Владике утро будет, тогда и активируют
А воз и ныне ТАМ... :confused:

Очередной пост от (за) AZMaster...



Да бог с ней, с этой авторизацией, не суть дела, пусть остаётся на
совести админов! Рисунков печаток нет, так как платы уже запаяны, могу
сфоткать только запаянные платы, с двух сторон, хотя на самом деле
схемы есть, можно по ним свою разводку сделать. Монитор у меня
оригинальный, от разработчиков, из своего - только приделанный кусок
кода в конце ПЗУ-шки, точнее свой собственный монитор, там свободно
было, вот я его туда и записал, оригинальный при этом не затрагивал.
Так что есть возможность выбора, чем пользоваться. Насколько помню,
после этой версии клавиатурника (что у меня выложена) была ещё одна,
более навороченная и под него прилично изменённый монитор, там уже
места свободного небыло. Попробую найти расписание адресов системных
функций в ПЗУ, точнее то что удалось выяснить в ходе раскопок. А где
вы собираетесь брать 700мб дисководы? Может имеет смысл разработать
контроллер сразу под флэшь? :-) (шутка)

З.Ы. Насчёт публикации не возражаю, поступайте как знаете, не
возбраняется, я в своё время тоже собирал всё по крупицам, жаль будет
если всё безвозвратно пропадёт!

Да, и ещё! Пробовал конвертить wav-овские файлы, программой,
предоставленной b2m (okean240cvt.exe), получается только с файлами,
записанными в стандартном формате, без фазоимпульсного кодирования. С кодированием всё понулям. И необходимо избавляться от служебной
информации в начале каждого блока и в начале файла. Пример прилагается!

b2m
08.01.2011, 01:54
Да, и ещё! Пробовал конвертить wav-овские файлы, программой,
предоставленной b2m (okean240cvt.exe), получается только с файлами,
записанными в стандартном формате, без фазоимпульсного кодирования. С кодированием всё понулям. И необходимо избавляться от служебной
информации в начале каждого блока и в начале файла. Пример прилагается!
А можно пример wav-файла с фазоимпульсным кодированием? И про пример, который в аттаче, вопрос - это старая запись, или недавно с реала записанная?

---------- Post added at 03:54 ---------- Previous post was at 03:51 ----------

Или, как, к примеру, записать с фазоимпульсным кодированием? Я пробовал WRITE в эмуляторе, получается он в стандартном формате пишет.

KokaF77
08.01.2011, 17:40
А можно пример wav-файла с фазоимпульсным кодированием? И про пример, который в аттаче, вопрос - это старая запись, или недавно с реала записанная?

---------- Post added at 03:54 ---------- Previous post was at 03:51 ----------

Или, как, к примеру, записать с фазоимпульсным кодированием? Я пробовал WRITE в эмуляторе, получается он в стандартном формате пишет.



Да, вот, пожалуйста. Записи старые, новых нет, не помню даже когда и
писал то, с тех пор столько поколений компов сменилось. Всё уже
позабывалось, что делал, а что нет, так что вряд ли вспомню как я
записывал её, возможно там параметры должны быть в конце. Основной
упор делался на флоппи диски, а это как бы резерв был, как оказалось
не зря делал, так как ни одного дисковода не осталось, да и дискеты
наверное за это время уже читаться перестали. Чувствую придётся всё же свой Океан с антресоли доставать и вспоминать всё заново... ))


ссылка на файл (http://narod.ru/disk/2970062001/MB44100m16.rar.html)

b2m
09.01.2011, 00:35
ни одного дисковода не осталось, да и дискеты
наверное за это время уже читаться перестали
Да не, обычно информация с дискет нормально читается. Там только вопрос совместимости конкретного дисковода и конкретных дискет :) Бывает на одном плохо читается, а на другом - нормально. Так что образы дискет тоже неплохо бы получить...

marinovsoft
10.01.2011, 22:32
Попробовал сделать конвертер CAS2BAS (из двоичного в текстовый). Пока все очень криво, токены не те. Для разбора взял первый файл из Cas1s-s1.wav.
Исходники в аттаче.

DDp
11.01.2011, 22:05
нифигасебе магнитофонный узел у океана ...
tape out - 3bit DAC (mpss86-05 p73 dd67 C0-C2)
tape in - тоже 2 бита на вход (D78 b2-b3)
аппаратный фильтр 10khz
амплитудный детектор
т.е. в этом режиме он аппаратно детектирует пики ...
и нужо только длительности посчитать
и скорость 6000бод
+ "детектор межблочных промежутков" (87_3_85)

2b2m: простой 0/1 детектор не покатит :)
по крайней мере для ФИМ


Только не 5, а 4 номер.
Да, и почему не выкладывайте ссылки на информацию? ;)
(что я нашёл)
МПСиС 1986 № 2 (http://narod.ru/disk/7494546000/%D0%9C%D0%9F%D0%A1%D0%B8%D0%A1%20%E2%84%962%20%278 6.rar.html) - обзор
МПСиС 1986 № 4 (http://narod.ru/disk/7495858000/%D0%9C%D0%9F%D0%A1%D0%B8%D0%A1%20%E2%84%964%20%278 6.rar.html) - схема и описание
МПСиС 1987 № 3 (http://ifolder.ru/20972344) - конструкция и отладка

Меня интересует магнитофонный вход/выход.
Посмотрел я схему - не увидел никаких откровений.
Смутили только записи выложенные L Juriy (http://file.qip.ru/file/hCqw0P0A/Cas1s-s1wav.html) и AZMaster (http://narod.ru/disk/2970062001/MB44100m16.rar.html).
(У записи AZMaster-а ещё и сильно завалены низкие частоты, хотя по схеме на выходе нет ни одного разделительного конденсатора.)
Если верно, что для формирования сигнала используются значения ЦАП-а 3 и 5,
а для пауз значение 4, то почему на реальных записях видны мощные челчки в начале и в конце блока?
Ха! Поглядел внимательно в схему - бит 0 имеет больший вес, чем бит 2 ! (R31,R32,R33)
Получается реальные уровни равны 6, 5 для сигнала и 1 для пауз.
Смоделировал такой вариант (model0).
Применил несколько фильтров - получил сигнал (model1) похожий на реальную запись (MB44100m16).
Получается, что разработчики попутали весА бит у ЦАП-а.
Может у AZMастера (в его экземпляре) специально добавлен разделительный конденсатор (ФВЧ) что бы избавиться от такого большого перепада сигнал/пауза и улучшить последующее чтение (синхронизацию)?

Если взаимно поменять R31 и R33 будет то, что изначально задумывали разработчики (model2).
Думаю в этом случае "простой 0/1 детектор" как раз прокатит :)

Ещё... Плохое распознавание можно списать на малую разницу длительностей "нолей" и "единиц".

b2m
11.01.2011, 23:23
Что-то не нашёл я в ни в мониторе, ни в CP/M других процедур чтения/записи на магнитофон - только стандартная плотность. Я полагаю, работа с высокой плотностью была отдельной утилитой, записанной на кассету с обычной плотностью (или на дискету).

Нету также и другой командной строки монитора, видимо AZMaster не дописал своё, а заменил своим тот, другой монитор.

KokaF77
11.01.2011, 23:52
Только не 5, а 4 номер.

Да, нет... всё правильно. esl подразумевал описание "Теста №6" в МПСиС №3 за 1987 год, страница 85.


+ "детектор межблочных промежутков" (87_3_85)
:v2_wink2:


Да, и почему не выкладывайте ссылки на информацию?
Я, конечно, извиняюсь :) , но почему не выкладываем?
L Juriy выкладывал.
KALDYH вообще нашёл сайт AZMaster`а - топик №39 (http://zx.pk.ru/showpost.php?p=343403&postcount=39)
Я на радостях продублировал, невзначай :v2_wink2: - топик №85 (http://zx.pk.ru/showpost.php?p=346585&postcount=85)
Ссылка на сайт AZMaster`а (http://azmaster.narod.ru/Ocean-240/index.htm)
На этом сайте собрано практически всё, что на данный момент есть по "Океану". Посмотрите.
И надеюсь будет ещё. :v2_thumb:

P.S. Спасибо за Ваш взгляд на проблему с интерфейсом магнитофона.

---------- Post added at 23:38 ---------- Previous post was at 23:33 ----------


Нету также и другой командной строки монитора, видимо AZMaster не дописал своё, а заменил своим тот, другой монитор.
Как я понял AZMaster`а, подменена точка входа в монитор. Или я ошибаюсь?

---------- Post added at 23:41 ---------- Previous post was at 23:38 ----------


KokaF77, если можно, сделайте, пожалуйста, и отправьте мне на мыло gryphon1(a)bk.ru
Gryphon, я извиняюсь за задержку. :( С моим сканером проблема, а на работу, на праздниках, попасть не получалось.

---------- Post added at 23:52 ---------- Previous post was at 23:41 ----------

Кстати, для заинтересованных...
AZMaster, по просьбам "трудящихся" :) добавил информации на своём сайте! Добавлены фотки и прошивки РТ`шек.

AZMaster, СПАСИБО!!! :v2_thumb:

DDp
12.01.2011, 00:02
Я, конечно, извиняюсь :) , но почему не выкладываем?
...
Ссылка на сайт AZMaster`а (http://azmaster.narod.ru/Ocean-240/index.htm)
...

:v2_blush: звиняюсь, слона то я не приметил. :)

О, вижу на его схеме (почиркано карандашом) поменяны местами R35 и C4 (ФВЧ вместо ФНЧ).
Хм, а на фото они на своих местах. :v2_conf2:
Ага, монтаж не соответствует схеме. (по схеме ФНЧ, по монтажному рисунку ФВЧ)

KokaF77
12.01.2011, 09:45
Для DDp: Всё правильно! у меня там подстроечник стоит на землю, если присмотреться, для регулировки уровня сигнала линейного выхода, кондёр стоит как помечено карандашём - последовательно.

Насчёт родного монитора: KokaF77 верно подметил, я подменил точку входа в монитор, так что родной живёт на своём месте, как ему и
положено, если повезёт, найду родную прошивку, без своих каракулей.

b2m: Даже и не знаю чем утешить! Ну честное слово, не помню как и чем я это записывал, но факт на лицо, форматы разные. Надо копать CP/M может в ней эта функция живёт... (см.прил.)

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


Ссылка на файл (http://narod.ru/disk/3254240001/Waves.zip.html)



Нету также и другой командной строки монитора, видимо AZMaster не дописал своё, а заменил своим тот, другой монитор.
А монитор на месте :v2_wink2: с адреса 0xE0E7 идёт строчка "HARDWARE MONITOR+ V1". Выход в монитор по "Esc" (???? может ошибаюсь :v2_conf2: времени особенно много нет для изысканий).

---------- Post added at 09:45 ---------- Previous post was at 09:43 ----------


ну да... это сколько кода можно былоб запхнуть вместо этих звездочег...
А звёздочки то не в коде, а в комментариях. :v2_wink2:

b2m
12.01.2011, 13:57
KokaF77, выход в монитор - команда EXIT :) По Esc попадаем обратно в CP/M.
После надписи "HARDWARE MONITOR+ V1" идёт драйвер клавиатуры, за ним драйвер вывода на экран и знакогенератор. Затем драйвер работы с магнитофоном (стандартная скорость), а за ним - монитор AZMaster-а (посреди него драйвер работы с дисководом). На этом монитор заканчивается. Выше 0xE000 CP/M и его расширение: команды DIR (новая, старая заменена на $DIR), READ, WRITE, EXIT. Больше ничего нет.

KokaF77
12.01.2011, 14:58
KokaF77, ... По Esc попадаем обратно в CP/M.
Похоже, что да (летим сюда -> RSD=0BFA0). Недоглядел. :v2_conf2:


KokaF77, выход в монитор - команда EXIT

Странно... Я почему-то думал, что "EXIT" - это выход из программатора. Подразумевается "EXIT" вменю. А по приходу кода 0x03 (что это клавиша "F3" или ...) с клавиатуры в основном меню мы "прыгаем" на адрес 0x0000, но попадём ли в монитор?

b2m
12.01.2011, 15:08
Странно... Я почему-то думал, что "EXIT" - это выход из программатора. Подразумевается "EXIT" вменю. А по приходу кода 0x03 (что это клавиша "F3" или ...) с клавиатуры в основном меню мы "прыгаем" на адрес 0x0000, но попадём ли в монитор?
EXIT, в данном случае - дополнительная команда CP/M. Если "прыгнуть" на 0x0000, то должны выйти обратно в CCP (командный процессор, проще говоря командная строка CP/M).

KokaF77
12.01.2011, 15:27
b2m, я имел ввиду следующее



DATA:DB 09," *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~* ",0D,0A
DB 09," | Programmator ROM | ",0D,0A
DB 09," |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| ",0D,0A
DB 09," | 1. D2716 | 1. Read | ",0D,0A
DB 09," | 2. D2732 | 2. Check FF | ",0D,0A
DB 09," | 3. D2764 | 3. Write | ",0D,0A
DB 09," | 4. D27128 | 4. Verify | ",0D,0A
DB 09," | 5. D27256 | 5. CRC-16 | ",0D,0A
DB 09," | 6. D27512/1 | 6. Testing | ",0D,0A
DB 09," | 7. D27512/2 | 7. EXIT | ",0D,0A
DB 09," *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~* ",0D,0A
DAT: DB 09," | | ",0D,0A
DB 09," *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~* ",0



CPI 7
JZ PP2
LXI D,0000
PP2: LDA PRGD+1
LHLD HRG
CPI 1
JZ READ
CPI 2
JZ CHKFF
CPI 3
JZ WRITE
CPI 4
JZ VERIF
CPI 6
JZ TEST
CPI 5
JNZ MON


Это, если я правильно понял, возврат из программатора в монитор (турбо).



M2: CALL KLV
MOV C,A
CPI 03 ;EXIT
JZ EXIT



EXIT: MVI C,1F
CALL SYM
JMP 00


А это выход из турбо-монитора.
Здесь никакой команды "EXIT" в явном виде я не вижу, но есть клавиша с кодом 0x03.

:v2_conf2:

b2m
12.01.2011, 16:40
KokaF77, это исходник утилиты "редактор памяти с программатором", а не исходник того, что записано в ПЗУ. В ПЗУ тоже есть такой-же редактор памяти, но без программатора. Хотя и то, и другое названо "Турбо монитор".

KokaF77
12.01.2011, 17:06
KokaF77, это исходник утилиты "редактор памяти с программатором", а не исходник того, что записано в ПЗУ. В ПЗУ тоже есть такой-же редактор памяти, но без программатора. Хотя и то, и другое названо "Турбо монитор".

:v2_dizzy_beatup:Блин,... и я слона не заметил... Приползу :v2_dizzy_step: домой разберу по запчастям его. :)

b2m
13.01.2011, 20:20
Прикольно. Заглянул я внутрь бейсиковского файла, что на диске для Роботрона (в архиве на моём сайте называется addition.cpm), и удивился - очень похоже на бейсиковские файлы, что выкладывал L Juriy. Один из его файлов мы с marinovsoft восстановили (исправили ошибки чтения вручную). Загрузил я на квазидиск тот бейсик, что на диске от Роботрона (addition.cpm) и файл от L Juriy, и запустил: оно работает!!!

Получается бейсик для Океан-240 был взят из SCP Роботрона. Вот вам и первая программа для Океан-240 :)
Подозреваю, что и Суперкалк был оттуда-же...

L Juriy
13.01.2011, 21:04
Для океана было 2 бейсика.
Один называется MBASIC и неь нет ничего о его происхождении.
Второй называется IBASIC и в нем есть такая надпись
OKEAN-240 BASIC INTERPRETER V1.2 04/11/86
Если программа есть, для преобразования и записи на электронный диск для эмулятора, могу попровать создать диск и выложить.

b2m
13.01.2011, 22:12
Если программа есть, для преобразования и записи на электронный диск для эмулятора, могу попровать создать диск и выложить.
Программы нет, я в отладчике эмулятора загружал файл с адреса 0x100 и сохранял на электронный диск командой SAVE.

L Juriy
13.01.2011, 23:02
Я имел ввиду как сохранить электронный диск в файл, а потом из файла оббратно в электронный диск в эмуляторе. С файлом (образом диска) потом работать помимо эмулятора.
Програмку преобразования из .dat в образ файла, можно в личку получить. Я преобразую свои кассеты и выложу.

esl
13.01.2011, 23:52
Господа, а не пора ли создать раздел по Океану ?
а то все сейчас в одной куче? не комильфо ....

b2m
14.01.2011, 00:55
Програмку преобразования из .dat в образ файла, можно в личку получить. Я преобразую свои кассеты и выложу.
В личке не выкладывается, поэтому тут. Программа запускается с одним параметром (имя исходного .dat файла). Желательно запускать в пустом каталоге. Программа создаст файлы, которые были в .dat, но с другими именами (если имя с ошибкой, файл не создастся), а также файл files.lst со списком имён файлов.

Новая версия на след. странице.

L Juriy
14.01.2011, 10:45
Нашел маленькую ошибку.
В списке количество файлов превышает количество буковок.
А файлов всего по большим буквам алфавита.
Файлов с маленькими буковками нет, или у меня что то с осью(ХР под ВиртуалБокс)
Файлов много к вечеру выложу

marinovsoft
14.01.2011, 10:56
Количество буковок - действительное количество файлов. Количество строк в файле files.lst соответствует количеству встретившихся блоков типа "имя файла". Как-то так.

b2m
14.01.2011, 13:21
Нашел маленькую ошибку.
В списке количество файлов превышает количество буковок.
А файлов всего по большим буквам алфавита.
Файлов с маленькими буковками нет, или у меня что то с осью(ХР под ВиртуалБокс)
Файлов много к вечеру выложу
Я не рассчитывал на больше чем 26 файлов в одном .dat :) Вечерком переделаю.

---------- Post added at 15:13 ---------- Previous post was at 14:31 ----------

Я выложил новую версию эмулятора с поддержкой контроллера дисковода Океан-240. С форматом дисков пока не до конца разобрался, но стандартный 720Кб (2 стороны 9 секторов по 512 байт) вроде работает. Смущает то, что в заставке упоминается 180Кб, а DIR считает, что на одной стороне 360Кб. Диск B: это одна сторона диска, диск C: - другая. С D: и E: пока неясно, это должен быть второй дисковод, но пока не работает.

---------- Post added at 15:21 ---------- Previous post was at 15:13 ----------

А, всё, разобрался: драйвер дисковода поддерживает второй привод, а вот БИОС CP/M - нет. В БИОСе есть таблицы параметров только для A,B и С. Придётся убрать второй дисковод.

L Juriy
14.01.2011, 14:21
Не совсем так получается.
В списке файлов нет файла с большой буквы, но есть с маленькой.
реально файл есть с БОЛЬШОЙ буквой.
Это files/lst
_A.DAT = MBASIC.COM
_A.DAT = MBASIC.COM
_C.DAT = KRISTA.BAS
_C.DAT = KRISTA.BAS
_D.DAT = KRISTA.BAS
_D.DAT = KRISTA.BAS
_E.DAT = LAPA.BAS
_E.DAT = LAPA.BAS
_F.DAT = LAPA.BAS
_F.DAT = LAPA.BAS
_G.DAT = ROZA.BAS
_G.DAT = ROZA.BAS
_H.DAT = ROZA.BAS
_H.DAT = ROZA.BAS
_I.DAT = KUKLA.BAS
_I.DAT = KUKLA.BAS
_J.DAT = FIALKA.BAS
_J.DAT = FIALKA.BAS
_K.DAT = FIALKA.BAS
_K.DAT = FIALKA.BAS
_L.DAT = SOVA.BAS
_L.DAT = SOVA.BAS
_M.DAT = SOVA.BAS
_M.DAT = SOVA.BAS
_N.DAT = STATIS.BAS
_N.DAT = STATIS.BAS
_O.DAT = STATIS.BAS
_O.DAT = STATIS.BAS
_P.DAT = OLGA.BAS
_P.DAT = OLGA.BAS
_Q.DAT = OLGA.BAS
_Q.DAT = OLGA.BAS
_R.DAT = KR140.BAS
_R.DAT = KR140.BAS
_S.DAT = KR140.BAS
_S.DAT = KR140.BAS
_T.DAT = FIKSA.BAS
_T.DAT = FIKSA.BAS
_U.DAT = FIKSA.BAS
_U.DAT = FIKSA.BAS
_V.DAT = KOTENOK.BAS
_V.DAT = KOTENOK.BAS
_W.DAT = OKOROK.BAS
_W.DAT = OKOROK.BAS
_X.DAT = KOT.BAS
_X.DAT = KOT.BAS
_Y.DAT = ALENKA.BAS
_Y.DAT = ALENKA.BAS
_Z.DAT = KISA.BAS
_Z.DAT = KISA.BAS
_[.DAT = KISA.BAS
_[.DAT = KISA.BAS
_\.DAT = KR320.BAS
_\.DAT = KR320.BAS
_].DAT = KR310.BAS
_].DAT = KR310.BAS
_^.DAT = KR310.BAS
_^.DAT = KR310.BAS
__.DAT = KR450.BAS
__.DAT = KR450.BAS
_`.DAT = KR450.BAS
_`.DAT = KR450.BAS
_a.DAT = KR400.BAS
_a.DAT = KR400.BAS
_b.DAT = KR400.BAS
_b.DAT = KR400.BAS
_c.DAT = KR410.BAS
_c.DAT = KR410.BAS
_d.DAT = KR410.BAS
_d.DAT = KR410.BAS
_e.DAT = KR550.BAS
_e.DAT = KR550.BAS
_f.DAT = KR550.BAS
_f.DAT = KR550.BAS
_g.DAT = WESNA.BAS
_g.DAT = WESNA.BAS
_h.DAT = WESNA.BAS
_h.DAT = WESNA.BAS
_i.DAT = SOWA.BAS
_i.DAT = SOWA.BAS
_j.DAT = SOWA.BAS
_j.DAT = SOWA.BAS
_k.DAT = KRISTA.BAS
_k.DAT = KRISTA.BAS
_l.DAT = KRISTA.BAS
_l.DAT = KRISTA.BAS
_m.DAT = G4.BAS
_m.DAT = G4.BAS
_n.DAT = G4.BAS
_n.DAT = G4.BAS
_o.DAT = TOMSK.BAS
_o.DAT = TOMSK.BAS
_p.DAT = TOMSK.BAS
_p.DAT = TOMSK.BAS
_q.DAT = G10.BAS
_q.DAT = G10.BAS
_r.DAT = LISTOK.BAS
_r.DAT = LISTOK.BAS
_s.DAT = LISTOK.BAS
_s.DAT = LISTOK.BAS
_t.DAT = VORONA.BAS
_t.DAT = VORONA.BAS
_u.DAT = VORONA.BAS
_u.DAT = VORONA.BAS
_v.DAT = GRAF.BAS
_v.DAT = GRAF.BAS
_w.DAT = GRAF.BAS
_w.DAT = GRAF.BAS
а это оглавление папки
Том в устройстве C не имеет метки.
Серийный номер тома: 1CB1-F36E

Содержимое папки C:\Works\ok240

14.01.2011 17:32 <DIR> .
14.01.2011 17:32 <DIR> ..
14.01.2011 11:25 365*947 Cas1-sd2-k1.dat
14.01.2011 13:26 2*146 files.lst
14.01.2011 17:32 0 lst
03.01.2011 20:58 24*576 okean240cvt.exe
13.01.2011 23:00 16*384 okean240dec.exe
14.01.2011 13:26 16*256 _A.DAT
14.01.2011 13:26 4*480 _B.DAT
14.01.2011 13:26 4*480 _C.DAT
14.01.2011 13:26 4*480 _D.DAT
14.01.2011 13:26 4*480 _E.DAT
14.01.2011 13:26 4*480 _F.DAT
14.01.2011 13:26 6*016 _G.DAT
14.01.2011 13:26 6*016 _H.DAT
14.01.2011 13:26 6*016 _I.DAT
14.01.2011 13:26 5*888 _J.DAT
14.01.2011 13:26 6*016 _K.DAT
14.01.2011 13:26 6*016 _L.DAT
14.01.2011 13:26 5*632 _M.DAT
14.01.2011 13:26 5*760 _N.DAT
14.01.2011 13:26 6*144 _O.DAT
14.01.2011 13:26 6*272 _P.DAT
14.01.2011 13:26 5*760 _Q.DAT
14.01.2011 13:26 5*888 _R.DAT
14.01.2011 13:26 5*760 _S.DAT
14.01.2011 13:26 640 _T.DAT
14.01.2011 13:26 640 _U.DAT
14.01.2011 13:26 6*400 _V.DAT
14.01.2011 13:26 6*272 _W.DAT
14.01.2011 13:26 6*272 _X.DAT
14.01.2011 13:26 6*272 _Y.DAT
14.01.2011 13:26 6*400 _Z.DAT
14.01.2011 13:26 6*400 _[.DAT
14.01.2011 13:26 3*968 _].DAT
14.01.2011 13:26 3*968 _^.DAT
14.01.2011 13:26 4*480 __.DAT
14.01.2011 13:26 4*480 _`.DAT
36 файлов 581*085 байт
2 папок 5*381*033*984 байт свободно

b2m
14.01.2011, 14:43
Не совсем так получается.
В списке файлов нет файла с большой буквы, но есть с маленькой.
реально файл есть с БОЛЬШОЙ буквой.
Файлы с большой буквой были перезаписаны файлами с маленькой.

---------- Post added at 16:42 ---------- Previous post was at 16:32 ----------

Я смотрю, ошибок в имени файла нет. Стоит, наверное, сделать другое имя только в том случае, если в имени файла содержатся символы, отличные от 0-9 A-Z.

---------- Post added at 16:43 ---------- Previous post was at 16:42 ----------

Хотя, тогда дубликаты файлов перезапишут первые версии...

marinovsoft
14.01.2011, 15:01
Хотя, тогда дубликаты файлов перезапишут первые версии...
проверять на наличие такого файла в каталоге, переименовывать, отражать факт переименования в логе.
L Juriy, имена файлов прочитальсь одинаково, будем надеяться, что с содержимым файлов все будет в порядке.

b2m
14.01.2011, 15:26
Файлы с большой буквой были перезаписаны файлами с маленькой.
Наврал. Если файл уже есть, он не будет перезаписан (из-за ошибки создания файла). В списке выше видно, что файл _A.DAT размером 16Кб, а это и есть MBASIC.COM.

Сделаю такие имена: NNN_FILE.EXT, либо NNN.DAT, если в имени файла ошибки.

b2m
14.01.2011, 20:51
L Juriy, новая версия. Надеюсь, у тебя не больше 1000 файлов на кассете :)

Новая версия на след. странице :)

L Juriy
14.01.2011, 22:01
Похоже еще одна ошибка.
Всписке нет, а файл есть.
Посмотри в прилагаемом файле.
Mbasic.com имеет вторую половинку которая утебя как 001.dat
Похоже это продолжение файла Mbasic.com
И приятная, но не совсем, нновость, во втором приложении
находятся прошивки с моего Океана 240.2.
Они были рабочие, но как сейчас не знаю.
Файлы с касет выложу позже. В эмуляторе их опробую.

b2m
14.01.2011, 22:37
Кстати, хорошо, что есть копии файлов. Их можно сравнивать, и сразу видно, который из них "битый". Вероятность одинаковой ошибки очень мала, так что там, где байты совпадают, наверняка без ошибок.

По поводу Бейсика, ошибка при переводе из .wav в .dat (сбой синхронизации, видимо "щелчёк" на кассете или при оцифровке).
Может выложите .wav?

marinovsoft
14.01.2011, 22:45
b2m, а у кассетных файлов какая максимальная длина имени, исключая расширение? Может быть стоит ограничиться 6-ю символами?

И еще, с бейсиковскими файлами, также как дублируется первый блок, может это не баг, а фича?

L Juriy
14.01.2011, 22:53
Это на других файлах тоже есть.
Файлы имеющие размер больше 16к разбиваются.
Файл wav (http://file.qip.ru/file/p7XAW3Z5/Cas2-sd2-k1wav.html)

---------- Post added at 01:53 ---------- Previous post was at 01:48 ----------

marinovsoft, Файл на касету пишется с электронного диска и его имя берется с диска.
Правило имен в СРМ-эмовское. Помоему так.

marinovsoft
14.01.2011, 23:05
Это на других файлах тоже есть.
Точно, сразу не заметил, файлы 000_MBASIC.COM и 001.DAT тоже с дублями.
В образе disk1.okd правило точно cpm-овское.

b2m
15.01.2011, 00:07
И еще, с бейсиковскими файлами, также как дублируется первый блок, может это не баг, а фича?
И не только бейсиковские. Похоже это фича. Плюс ко всему, файлы длинее 16Кб разбиваются тоже из-за такой-же фичи - после ровно 16Кб идёт блок с сигнатурой ноль. Я считал это признаком начала нового файла (т.е. номера блоков на мой взгляд нумеровались с нуля), но похоже это не так.

b2m
15.01.2011, 01:19
Очередная версия декодера файлов.

L Juriy
15.01.2011, 07:35
Вот что у меня получилось при исследовании программного кода.
Логическая структура данных на МЛ в Океан240

1. Блок нулевых значений (признак- FFFF размер- 128 байт).
2. Межблочный промежуток (задержка).
3. Блок нулевых значений (Признак - 0000, размер -128 байт).
4. Межблочный промежуток (задержка).
5. Блок данных (Признак 0000, размер - 128 байт).
6. Межблочный промежуток.
7. Блок данных (Признак 0000, размер - 128 байт).
8. Межблочный промежуток.
Блок данных и межблочный промежуток повторяются до конца файла.

и самого блока
Сруктура блока записи.

1. Бит 5 частота 588 Гц
2. Бит 3 частота 588 Гц
3. Бит 5 частота 588 гц
4. Бит 3 частота 588 Гц.
2. Байт 0 частота (0 бит 4466 Гц 1 -бит 2274 Гц).
3. Признак данных (байт F5).
4. 2 Байта признака (FFFF или 0000).
5. Данные 128 байт.
6. 2 байта Контрольная сумма (счетчик количества байт).
7. Байт 0.
8. Бит 4 частота 588 Гц

b2m
15.01.2011, 11:34
Логическая структура данных на МЛ в Океан240
Не совсем так. Допустим, каждый блок состоит из:
2 байта тип блока (признак, в вышеприведённой терминологии)
128 байт данных
2 байта КС
(в моём файле перед блоком стоит последовательность синхробайт CC CC CC CC CC CC 00 F5)

Тогда файл состоит из таких блоков:
2 блока 0x8000 имя файла
1 блок 0x0000 (начало 16Кб экстента?)
128 блоков (или меньше) данных (признак 0x0001-0x0080)
1 блок 0x0000 (начало 16Кб экстента?)
128 блоков (или меньше) данных (признак 0x0081-0x0100)
...
2 блока 0xFFFF конец файла

По поводу ПЗУ: вроде работает, но контроллер клавиатуры отличается, так что надо сначала разобраться с клавой и конфиг подправить.

---------- Post added at 13:34 ---------- Previous post was at 12:28 ----------

L Juriy, а подключение дисковода в Вашей версии Океана-240 не предусматривалось что-ли? Ни в CP/M, ни в мониторе никаких намёков на дисковод нет.

Выложил на сайт версию с разными мониторами. Теперь Okean-240 - это то, что прислал L Juriy, а Okean-240 fdd - версия от AZMaster.

DDp
15.01.2011, 13:01
Один называется MBASIC и неь нет ничего о его происхождении.
MBASIC v5.21 можно взять здесь (http://www.retroarchive.org/cpm/lang/Mbasic.com) (автор: одна малоизвестная фирма;)

b2m
15.01.2011, 13:38
DDp, действительно, один-в-один, с точностью до ошибок чтения (коих не так много). Удивительно, что последний .wav от L Juriy сконвертировался практически без ошибок.

L Juriy
15.01.2011, 14:10
b2m, В моей версии нет дисководов.
Хотя схема уже появилась.
Я сделал свою схему на основе анализа всех на то время схем. Спаять спаял а подключить и отладить уже не успел. Было написано и програмное, вернее правки в существующие, но на практике реализовано не было.
Есть распечатки только дизассемблирования монитора и самой СРМ, но частями.
Набрал монитор на АСМ пока не мог считать ПЗУ.
Но вот вчера был прорыв, нашел работающий программатор в городе и считал ПЗУ.
MBASIC запустился на эмулятое?
Кстати это майкрософтовский Бейсик для СРМ.

b2m
15.01.2011, 14:32
MBASIC запустился на эмулятое?
Кстати это майкрософтовский Бейсик для СРМ.
Бейсик с Вашей кассеты содержит ошибки чтения и поэтому вылетает после запуска. А вот скаченный по ссылке, которую дал DDp, естесственно запускается. По сути, это один и тот же файл, но без ошибок и немного короче (т.е. конец файла с кассеты содержит мусор, который абсолютно не нужен, 256 байт).

То, что это мелкософтовский Бейсик, и так понятно. Именно это он и выдаёт при старте.

ZEman
15.01.2011, 14:38
b2m, так что, теперь можно запускать на твоём эмуляторе диски и касеты для океана ?

я вижу на твоём сайте есть образ диска, а где взять касеты ?

b2m
15.01.2011, 15:01
Кассеты пока нельзя, даже .wav, т.к. надо пиковый анализатор встраивать. Перехват процедур тоже пока не сделан, т.к. сконвертированных без ошибок кассет тоже нет.

Образов дисков тоже пока нет, хотя использовать их уже можно. То, что лежит на сайте, сделано вручную (пустой диск, это файл длинной 0xB4000 забитый байтом 0xE5). Для примера я сохранил в эмуляторе на этот диск Бейсик с одного из дисков Роботрона. Хотя теперь можно заменить на mbasic, скачанный по ссылке выше, т.к. именно он использовался.

ZEman
15.01.2011, 15:08
может можно будет повытаскивать файлы из образов касет (wav файлов) и перекинуть их на образы дисков ?
я думаю так будет проще.

L Juriy
15.01.2011, 16:32
b2m, С другой касеты Mbasic нормально запустился
Сделал обработку своих касет.
Попробовал кое какие под эмулятором, работают не все.
Как лучше выложить содержимое кассет?
Вот что пробовал:
Содержимое папки C:\Works\emu\Works

15.01.2011 19:42 <DIR> .
15.01.2011 19:42 <DIR> ..
15.01.2011 17:31 8*192 ASM.COM
15.01.2011 13:08 8*960 BATTY.COM
15.01.2011 13:08 3*712 BOMBER.COM
15.01.2011 17:42 23*168 CHESS.COM
15.01.2011 13:08 8*192 IBASIC.COM
15.01.2011 17:31 18*432 LADMOD.COM
15.01.2011 17:33 15*616 LINK.COM
15.01.2011 17:30 1*792 LOAD.COM
15.01.2011 19:42 0 lst
15.01.2011 17:34 9*600 MAC.COM
15.01.2011 12:40 24*576 MBASIC.COM
15.01.2011 17:30 7*424 PIP.COM
15.01.2011 13:08 8*192 PITON.COM
15.01.2011 17:36 15*360 PW.COM
15.01.2011 17:33 5*760 RET.COM
15.01.2011 17:36 13*568 RMAC.COM
15.01.2011 17:36 24*576 SC.COM
15.01.2011 17:36 7*680 SC.HLP
15.01.2011 17:36 14*592 SC.OVL
15.01.2011 13:08 8*192 SID.COM
15.01.2011 17:31 5*376 STAT.COM
15.01.2011 17:27 12*288 WM.COM

b2m
15.01.2011, 21:17
Как лучше выложить содержимое кассет?
Лично для меня, было бы лучше исходные .dat файлы (одним архивом), попробую приспособить их для "ускоренной" загрузки посредством перехвата процедур работы с магнитофоном.

L Juriy
15.01.2011, 21:26
Блин, только что их все прибил:frown:
Вытащил файлы и удалил.
Те которые плохо читаются буду вырезать из общего и шаманить с ним.
Вытащил Fortran 80 который давно искал. запускается иот только исходник нужно найти чтобы проверить:wink:
Ладно счас сделаю по новой.

b2m
15.01.2011, 21:31
Вы только .wav пока не удаляйте, я попробую чуть уменьшить гистерезис, может что и получится. В последнем выложенном .wav файле (который с mbasic) я, кажется, нашёл место с ошибкой, там по непонятным причинам "просела" громкость. Но синусоида сохранилась.

L Juriy
15.01.2011, 21:36
Вот я эти проседания и исправляю редактором в wav.
F80 таким образом считал.
У меня исходники лежат в FLAC стерео 44100.
А уже из них я делаю WAV и на них тренеруюсь.
Проседание гроькости рочти на всех кассетах.
Я так думаю это уже железо начинает обсыпаться с лент вот и провалы.

L Juriy
15.01.2011, 21:46
Вот файлы дат.
Еще одна касета есть, сделаю позже.
Это та самая проблемная которая физически вставала в магнитофоне.

Да вопрос по эмулятору
Океан работает на 7 битном коде Бльшие латинские и большие русские.
Как включить этот режим, а то он вместо русских букв пишет малеькие латинские.

b2m
15.01.2011, 22:29
Да вопрос по эмулятору
Океан работает на 7 битном коде Бльшие латинские и большие русские.
Как включить этот режим, а то он вместо русских букв пишет малеькие латинские.
Э... Не знаю. :) В Вашей версии монитора используется клавиатура, которая выдаёт готовый 7-ми битный код клавиши (как я понял, чисто УКНЦшная клавиатура с её контроллером). Эмулятор просто передаёт код нажатой клавиши. А что печатается при выводе символов 0x60-0x7F - это уже от эмулятора не зависит.

В версии от AZMaster контроллер клавиатуры немного упрощён, он выдаёт только строку и ряд нажатой клавиши, а всё остальное делает монитор, в том числе и обработку верхнего регистра.

tnt23
15.01.2011, 22:48
В УКНЦ клавиатура обычная пленочная, без каких-либо контроллеров.

L Juriy
15.01.2011, 23:16
b2m, Я имел ввиду вывод на экран, а не ввод с клавиатуры.
У меня подключена клавиатура от дисплея СМ7209.
Да она выдает код и строб.

L Juriy
17.01.2011, 12:47
Еще хотелка для мулятора.
В Мониторе есть команда L которая загружает в Intel Hex формате файл с последовательного порта. Есть также команда вывода в последовательный порт в том же формате.
В эмуле можно это реализовать?

b2m
17.01.2011, 13:22
Я уже пробовал :) Последовательный порт переадресуется на сокет, но нужно указать в конфиге номер порта, например так:


comport : K580ww51 {
port=23
}

Тогда можно будет соедениться telnet-ом с localhost.


Есть также команда вывода в последовательный порт в том же формате.
А вот этого не нашёл. Какая?

L Juriy
17.01.2011, 15:53
b2m, Запятовал,
Это оказывается своей программой я выводил информацию из Океана в СМ ЭВМ
Извините ввел в заблуждение.
Вот список команд монитора
;ТАБЛИЦА КОМАНД МОНИТОРА
TABLC: ;E135
.byte 'D'
.word DUMP
.byte 'F'
.word FILL
.byte 'G'
.word GO
.byte 'L'
.word LOAD
.byte 'M'
.word MOVE
.byte 'R'
.word READ
.byte 'S'
.word SECH
.byte 'W'
.word WRITE
.byte 'X'
.word XREGM
.byte 'B'
.word BLOKD
.byte 'A'
.word ABLOK
;ПОДПРОГРАММА ЗАПИСИ БЛОКА В ДОП. ОЗУ

---------- Post added at 18:53 ---------- Previous post was at 18:43 ----------

Еще одну вещь вспоминаю, но вот только не помню в Океане ли это было.
Если при старте на последовательном порте был подключен терминал, то консоль переназначалась на этот порт.
Проверить это на эмуляторе можно?

b2m
17.01.2011, 16:50
Еще одну вещь вспоминаю, но вот только не помню в Океане ли это было.
Если при старте на последовательном порте был подключен терминал, то консоль переназначалась на этот порт.
Вроде в мониторе Океана ничего такого нет. Может это в Микро-80 было? Или в Ирише?

L Juriy
17.01.2011, 18:50
b2m, В микро вообще нет последовательного порта
Иришу я так и смог запустить.
Остается только одноплатная ЭВМ из МПСС, либо монитор от MSIntelec или как то похоже.
Либо в Океане можно переназначить консоль вручную. СРМ же позволяет это делать.
Блин давно это было, забыл все уже.

b2m
19.01.2011, 20:37
Еще одну вещь вспоминаю, но вот только не помню в Океане ли это было.
Если при старте на последовательном порте был подключен терминал, то консоль переназначалась на этот порт.
Вот кстати, потыкал я тест Океана. Вот он действительно выводит результаты тестирования прямо в последовательный порт. Но как я понял, ПЗУ с тестами нужно было втыкать вместо ПЗУ БИОСа, так что, подключен ли терминал, роли не играет.

L Juriy
19.01.2011, 20:58
b2m, Это в отладке написано.
Да в тесте организован вывод на последовательный порт, но можно обойтись и без него поставив только кнопку.
У меня в эмуле не получилось с СОМ портом работать.

marinovsoft
04.02.2011, 15:07
Отписываюсь с запозданием, совместно с b2m было восстановлено несколько bas-файлов:
Cas1s-s3.rar (http://narod.ru/disk/3190242001/Cas1s-s3.rar.html)
file_2_3.rar (http://narod.ru/disk/3296464001/file_2_3.rar.html)
file_5.rar (http://narod.ru/disk/3428396001/file_5.rar.html)

KokaF77
27.07.2011, 12:23
KokaF77, если можно, сделайте, пожалуйста, и отправьте мне на мыло...

Gryphon, извините за долгое молчание..., раньше не было возможности, отсутствовал доступ к сканеру.
Отсканировал, смотрите. Листики изрядно потёрлись, сказывается время. :)
Снимал в максимальном разрешении в формате TIFF. Ничего не обрезал и не переворачивал. Снимал в цвете, пробовал "оттенки серого" - не понравилось, посмотрите поймёте о чём я. Надеюсь устроит.
страница №78 - 20.9 МБ (http://narod.ru/disk/20138861001/P78.7z.html)
страница №79 - 24.5 МБ (http://narod.ru/disk/20139974001/P79.7z.html)
страница №80 - 21.9 МБ (http://narod.ru/disk/20140935001/P80.7z.html)
страница №81 - 22.4 МБ (http://narod.ru/disk/20141598001/P81.7z.html)


Так же отснял статью из №3 "МПСиС" "ПЭВМ "ОКЕАН-240": КОНСТРУКЦИЯ И МЕТОДИКА ОТЛАДКИ".
Снято в JPEG в максимальном разрешении. Немного обработано...
МПСиС 1987г. №3 стр. 77-86. - 47.6 МБ (http://narod.ru/disk/20142560001/1987_3_77-86.7z.html)

KokaF77
27.07.2011, 15:22
Вопрос к заинтересованным лицам. :)
Появилась возможность отсканировать в нормальном качестве все статьи по "Океан-240", опубликованным в "МПСиС". Надо ли это делать?! И нужно ли это кому-нибудь вообще? :v2_conf2:

Atari
27.07.2011, 15:34
нужно и для истории и просто почитать.

KokaF77
27.07.2011, 15:39
нужно и для истории и просто почитать.

Ok! :) Первый вброс сделал --> post 150 (http://www.zx.pk.ru/showpost.php?p=402491&postcount=150)

Постараюсь не затягивать и отснять оставшееся. :)

P.S. Кстати, качество устраивает?

ZEman
23.10.2011, 13:04
подскажите пожалуйста как запускать образы дисков для океана в "emu" эмуляторе.
уже какие только команды не пробовал dir, boot, start, run и.т.д, всё бесполезно.

b2m
23.10.2011, 18:27
Там вроде всё просто: запускаешь конфигурацию Okean-240 fdd, выбираешь образ в первый дисковод (левый на тулбаре), переходишь на диск B: ... А дальше как обычно, это ж сипиэм :)

ZEman
23.10.2011, 18:44
спасибо за информацию :)

KokaF77
03.02.2012, 23:50
У меня есть плата от Океана из старых. Могу сменять на что-нибудь БК-шно - ДВК-шное, чего у меня нет.

Фото можно лицезреть? :)

KokaF77
04.02.2012, 00:28
А что есть на обмен?

Хотелось бы увидеть фото. :)
Обмен отдельная тема. Было бы на что менять. ;)

SKcorp.
12.02.2012, 21:34
Хотелось бы увидеть фото. :)
Обмен отдельная тема. Было бы на что менять. ;)

http://bk0010.spb.ru/PHOTO/DSC00017.JPG

perestoronin
23.01.2015, 23:32
В этой теме прошу далее писать только о самом компьютере и вопросам с ним связанными.

Все сообщения посвященные репликам платы перенесены в отдельную тему (http://zx-pk.ru/showthread.php?t=24652)

Для темы реплики платы накопителя ГМД тоже есть специальная тема (http://zx-pk.ru/showthread.php?t=24620)

tnt23
22.10.2018, 23:03
Освежуем освежим тему :)

В версии 240.2 заложена поддержка микросхем ОЗУ 256Кx1. Увидит ли CP/M 2.2 квазидиск бОльшей, нежели 64К, емкости?

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


И так что имеем.
Коды (http://file.qip.ru/file/6MXsKejh/PZU.html) на основе которых проводилась дизассемблирование.
Там же текстовые файлы описывающие адреса.
На вопросы придется отвечать.
Распечатки только на бумаге.


L Juriy, ссылки на файлы протухли. Можете перевыложить, пожалуйста? особенно интересуют исходники монитора и (ну вдруг) CP/M.

L Juriy
23.10.2018, 10:56
tnt23,
Я уже и не помню, что там выкладывал, скорее всего сканы распечаток.
Выложил по новой (https://cloud.mail.ru/public/DBGC/QCrJAnwdK), что есть по этому вопросу.

tnt23
26.10.2018, 15:28
А с декодированием магнитофонных записей "Океана" как дело обстоит? Конвертор рабочий где взять можно?

tnt23
03.11.2018, 18:07
Занятная команда 'L' Монитора. Позволяет загружать из RS-232 файлы в некоем OBJ формате в память. Формат текстовый, 7-битный ASCII.
Это стандартный Intel HEX формат: https://ru.wikipedia.org/wiki/Intel_HEX




;П\П ЗАГРУЗКИ OBJ ФАЙЛА
LOAD: ;E1B6
CALL CCICO
JNC START
CALL OUHEX
LOAD1:
CALL RI
CPI ':' ;начало записи
JNZ LOAD1
XRA A
MOV D,A ;контрольная сумма блока
CALL RIX ;читать 2 байта как 16 число
JZ LOAD3 ;0 конец записи
MOV E,A ;количество записей
CALL RIX ;читать адрес
MOV H,A
CALL RIX ;
MOV L,A
CALL RIX
MOV C,E
LOAD2:
CALL RIX ;читать данные блока
MOV M,A ;и записывать в ОЗУ
INX H
DCR E
JNZ LOAD2
CALL RIX ;читать контрольную сумму
JNZ START
JMP LOAD1 ;читать следующий блок
LOAD3:
CALL RIX
CALL RIX
CALL RIX
CALL RIX
JNZ START
RET

svofski
03.11.2018, 20:52
tnt23, в Прекрасме директива .download hex

tnt23
03.11.2018, 21:41
tnt23, в Прекрасме директива .download hex

Жизнь-то налаживается!

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

Или вот, к примеру, процедура чтения с (квази)диска. Некоторые места вызывают удивление.



;П\П ЧТЕНИЯ СЕКТОРА С ДИСКА
RDSEC: ;F2A0
PUSH H
PUSH D
MOV A,D
ANI 1
ORI 2
ORI 0
MOV B,A
XRA A
MOV A,E
RAR
MOV D,A
MVI A,0
RAR
MOV E,A
RSEC1:
MOV A,B
OUT 0C1H
LDAX D
MOV C,A
MVI A,0
OUT 0C1H
MOV M,C
INX H
INX D
MOV A,E
ADD A
JNZ RSEC1
MVI A,0
OUT 0C1H
POP D
POP H
RET

perestoronin
03.11.2018, 23:46
А с декодированием магнитофонных записей "Океана" как дело обстоит? Конвертор рабочий где взять можно?
Только из монитора (т.е. из ПЗУ) вытащить логику и написать на ПЦ декодер, умеющий грузить с магнитофона через вход звуковой карты.
А зачем декодер понадобился? Есть что-то новое на кассетах, чего еще нет в сети ?


особенно интересуют исходники монитора и (ну вдруг) CP/M.
Нет исходников CP/М Океана, просто взят бинарь с другой машины и пропатчен под бинарь монитора Океана.
Но никто не мешает обновить CP/М для Океана, в том числе и из исходников доступных в сети для других машин.

L Juriy
04.11.2018, 09:36
perestoronin, Насчет исходников не совсем так.
Если вы заметили то СРМ в Океане работает с ПЗУ, а это значит что он специально для этого собирался
и все переменные вынесены в область ОЗУ.
В стандартном СРМ все переменные вперемежку с кодами.

tnt23
04.11.2018, 12:17
Только из монитора (т.е. из ПЗУ) вытащить логику и написать на ПЦ декодер, умеющий грузить с магнитофона через вход звуковой карты.
А зачем декодер понадобился? Есть что-то новое на кассетах, чего еще нет в сети ?

На соседнем форуме проявился еще один владелец с кассетой. Чем черт не шутит, вдруг на кассетах окажется что-то действительно редкое.

По поводу декодирования, есть шикарный декодер Тапир от svofski: https://svofski.github.io/tapir/

perestoronin
04.11.2018, 14:26
декодер Тапир

Supported BPSK formats:

Вектор-06ц ROM,CAS/BAS,SAVEDOS,EDASM
Криста-2 ROM
Радио-86РК .rk
Микроша
Специалист .rks


Океана в этом списке нет, впрочем, если svofski передадите кусочек дизассемблированного кода загрузчика Океана с комментариями, то наверняка он сможет дополнить декодер.

svofski
04.11.2018, 16:33
Океана в этом списке нет, впрочем, если svofski передадите кусочек дизассемблированного кода загрузчика Океана с комментариями, то наверняка он сможет дополнить декодер.
Мне бы вавчик для начала, желательно с известными параметрами.

b2m
04.11.2018, 16:59
Информация об интерфейсе с магнитофоном есть в МПСиС 1986/4 стр. 78 (там вообще неплохая статья об этом компьютере на стр. 69-78). Наверное, самый скоростной интерфейс среди отечественных ПК.

tnt23
04.11.2018, 17:38
Информация об интерфейсе с магнитофоном есть в МПСиС 1986/4 стр. 78 (там вообще неплохая статья об этом компьютере на стр. 69-78). Наверное, самый скоростной интерфейс среди отечественных ПК.

Это статья не просто неплохая - это лучшая статья об этом компьютере, потому что других статей больше нет :)

Там упоминается два вида кодирования, бытовое на 500 бод и продвинутое с фазоимпульсным кодированием на 6000 бод.

В любом случае было бы неплохо иметь образчик записи (WAV) хоть чего-нибудь океанического для анализа. Я пока могу только записать выхлоп Тест-ПЗУ, который, подозреваю, ничего по кодированию собственно блоков на ленте не даст. Еще можно поковыряться в листинге Монитора, вдруг там действительно поддержана плотность 6000 бод, как говорится в неплохой статье.

svofski
05.11.2018, 01:22
То есть ни кассеты ни записей ни у кого даже нет? Не очень-то интересно.

b2m
05.11.2018, 10:32
У меня где-то в архивах должны быть. Если никто не выложит, пойду рыться в архив.

perestoronin
05.11.2018, 10:59
То есть ни кассеты ни записей ни у кого даже нет? Не очень-то интересно.
Увы еще и реплику никто не спешит отлаживать.
Наверное нет ни времени ни денег, как и у меня пока впрочем.
Если кто собрал новодельную платку, попробуйте сдампить область ПЗУ на кассету, точнее на звуковую карту в формат WAV и пришлите пожалуйста ссылку на архив с этим файлом сюда.

tnt23
05.11.2018, 11:43
Увы еще и реплику никто не спешит отлаживать.


Ну почему же никто. Я собрал практически все, кроме DD79 (ВВ55) и двух банков ОЗУ одинакового размера. ОЗУ уже едет-поспешает из Саратова почтою. См. репортажи в соседней ветке.
66829
Сейчас развлекаюсь изобретением интерфейса PS/2 клавиатуры на рассыпухе.

perestoronin
05.11.2018, 12:52
Вероятно не все еще читали материал про создателя Океанов (https://ocean.ru/index.php/novosti-left/ob-yavleniya/item/964-ushel-iz-zhizni-dmitrij-alekseevich-tilinin)

В Институте океанологии Тилинин Дмитрий Алексеевич занимался разработкой измерительных комплексов для донных станций. Именно им в 1982-1986 годах были выполнены разработки первых прикладных Микро-ЭВМ «Океан-240» и персональной ЭВМ «Океан – 240.2», основные принципы построения которых были опубликованы в журнале «Микропроцессорные средства и системы» №4 и №6 в 1986 году.

b2m
05.11.2018, 21:50
Ещё раз wav файлы, которые выкладывались в этой теме в районе 2011 года:
Cas1s-s1.wav.rar (https://yadi.sk/d/-adt3wjwys85EA)
Cas2-sd2-k1.wav.rar (https://yadi.sk/d/DVFuZ7bMUYW5Vw)
Cas4s-sd1-f09.wav.rar (https://yadi.sk/d/dnpJXC-DqLPe2g)
MB44100m16.rar (https://yadi.sk/d/AQctP7yInjSyJQ)

tnt23
05.11.2018, 23:05
Контроллер PS/2 клавиатуры вышел неказистый, но работящий. Идея беззастенчиво попячена тут - http://www.6502.org/users/dieter/drc2/drc2.htm - и выглядит примерно вот так:

66834

Малое количество микросхем (две ИР8, одна ТМ2 и одна HC14) компенсируется возможностью подключать практически любую клавиатуру, генерящую scan code set 2.

66832

Проверить на "Океане-240" в силу объективных причин не могу, но уверен, что работать будет. Во всяком случае, у меня на стенде заработали все попробованные клавиатуры в количестве 1 штуки.

66833

tnt23
06.11.2018, 13:20
То есть ни кассеты ни записей ни у кого даже нет? Не очень-то интересно.

Покопался в дизассемблированном Мониторе, и вырисовывается такая вот звуковая картина:




Запись блока
---------------------


ВИ53 делитель канала 0: 1.5MHz / 2550 = 588 Hz


4 полупериода: (4-1) (-21) (4-1) (-21)


запись байта 00
запись байта F5
запись байт (BC) LSB MSB

запись 128 байт с адреса (HL)

запись байта 00
запись байта КС. КС считается вычитанием очередного байта из КС, начальное значение 00.

порт магнитофона = (4--)


Запись байта
---------------------
запись нуля: делитель канала 0: 1.5MHz / 360 = 4166 Hz
запись единицы: делитель канала 0: 1.5MHz / 660 = 2272 Hz
один бит - один полупериод (4-1) или (-21)


Запись дубля
---------------------
Шутка.


Межблочный промежуток
----------------------------------
Пустой цикл, считаем процессором до 170



Единственное, что меня смущает, это расчетные частоты 4166 и 2272 Герц. Даже если применить любимый школьный способ подгонки под результат и поделить их на два, получится 2КГц и 1КГц, что как-то многовато.

Шум прибоя (спектр записи Cas1, снятый в онлайновом спектроанализаторе https://academo.org/demos/spectrum-analyzer/):
66839

HardWareMan
06.11.2018, 14:19
Да не, RAMFOS на Спеце тоже достаточно высоко пищит.

tnt23
06.11.2018, 16:18
Начало блока похоже на правду: сначала странная преамбула из четырех пароходных гудков, потом угадываем 00 и F5, передаваемые от младшего бита к старшему.

http://sensi.org/~tnt23/pics/block%20start.png

PS Про кодирование уже все расписал L Juriy здесь - https://zx-pk.ru/threads/14176-kompyuter-quot-okean-240-quot.html?p=344136&viewfull=1#post344136

PPS И про блочный формат записи тоже (https://zx-pk.ru/threads/14176-kompyuter-quot-okean-240-quot.html?p=349713&viewfull=1#post349713), только КС занимает 1 байт и является не суммой, а разницей всех байт в блоке данных.

svofski
06.11.2018, 17:58
FSK в Тапир так легко не вставить. Но это хороший повод расширить кругозор травоядного.

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

Упси дейзи, PPM, еще страньше.

svofski
06.11.2018, 21:06
Посмотрел наконец на картинку tnt23. Не могу понять, чем это отличается от обычного FSK (https://ru.wikipedia.org/wiki/%D0%A7%D0%B0%D1%81%D1%82%D0%BE%D1%82%D0%BD%D0%B0%D 1%8F_%D0%BC%D0%B0%D0%BD%D0%B8%D0%BF%D1%83%D0%BB%D1 %8F%D1%86%D0%B8%D1%8F)?

tnt23
06.11.2018, 21:08
Посмотрел наконец на картинку tnt23. Не могу понять, чем это отличается от обычного FSK (https://ru.wikipedia.org/wiki/%D0%A7%D0%B0%D1%81%D1%82%D0%BE%D1%82%D0%BD%D0%B0%D 1%8F_%D0%BC%D0%B0%D0%BD%D0%B8%D0%BF%D1%83%D0%BB%D1 %8F%D1%86%D0%B8%D1%8F)?

Тем, что во мне умер художник?

b2m
06.11.2018, 21:43
Посмотрел наконец на картинку tnt23. Не могу понять, чем это отличается от обычного FSK?
А это обычная плотность. Пример высокой плотности MB44100m16.rar. Но там не реально декодировать, нужна более высокая частота дискретизации.

tnt23
06.11.2018, 22:55
А это обычная плотность. Пример высокой плотности MB44100m16.rar. Но там не реально декодировать, нужна более высокая частота дискретизации.

Интересно, каким софтом это писалось, если в Мониторе никаких намеков на высокую плотность нет? Любопытно также, что блочная структура осталась та же, разве что уменьшены межблочные интервалы (паузы).

svofski
06.11.2018, 23:17
Ну то есть я не сошел с ума и FSK это FSK, а PPM как бы тоже есть, но ее никто никогда не видел, а кто-то все же увидел, но так обалдел, что выбрал для записи частоту, в которой от модуляции ничего не остается. Как вообще можно записать что-то на пленку бытового магнитофона, что не выживает при дискретизации 44100 Гц?

b2m
06.11.2018, 23:45
Ну, оно не совсем померло, пики видны невооружённым глазом. Но количество ошибок декодирования будет немеряным. При наличии аппаратных примочек это как-то работало, всё-таки аналоговый сигнал несёт несравнимо больше информации.

tnt23
07.11.2018, 10:42
Еще одна оцифрованная кассета: https://yadi.sk/d/lv3THxcb5vF4Dg.

Файлы с первой стороны: https://yadi.sk/d/Q_I7cn5NIRMmHw

У кого эмулятор рабочий с CP/M, проверьте файлики на рабочесть.

svofski
13.11.2018, 17:53
Пример высокой плотности MB44100m16.rar
А известно что именно в этом файле? Хотя бы в общих чертах.

tnt23
13.11.2018, 19:05
Квазидисковая операционная система, совместимая с распространенной ОС CP/M, имеет объем ОЗУ пользователя 48К байт. Интерфейс с графическим ТВ-дисплеем обеспечивается программой "Монитор 240", в функции которой входят: управление режимами отображения, синтез алфавитно-цифровой информации, реализация графических функций LINE, SQUARE, SYMBOL, управление перемещением курсора, диагностика работы ПЭВМ.


В это с легкостью верится, если поиграть с вводимыми с клавиатуры ESC-последовательностями. "Войну и мир" написать не получилось, но нарисовать пару-тройку линий и залитый прямоугольник как-то вдруг вышло.

И еще, например, ESC f 33 переключает цвета в синее на черном и выставляет режим 64 символа в строке.

b2m
13.11.2018, 21:14
А известно что именно в этом файле?
Нет, мне не удалось декодировать.

tnt23
14.11.2018, 00:08
Про ESC последовательности, запишу на память:

ESC 0 - задать координаты. ESC 0 XX YY
ESC 1 - прямоугольник. ESC 1 00 00 ff ff закрасит прямоугольник с координатами {0,0,255,255}
ESC 2 - линия. ESC 2 00 00 ff ff проведет линию из нижнего левого угла {0, 0} в правый верхний {255,255}
ESC 3 - точка. ESC 3 50 50 нарисует точку с координатами {80, 80}
ESC 4 - цвет переднего плана
ESC 5
ESC 6 - режим (0 цвет, 1 монохром)
ESC 7 - шрифт (0 LAT, 1 рус)
ESC 8 - цвет фона

svofski
14.11.2018, 01:39
ESC A - закрашенный прямоугольник
В случайном месте экрана?

tnt23
14.11.2018, 08:17
В случайном месте экрана?
Параметрами после ESC x идут конечные координаты. Возможно, начало задаётся каким-нибудь ESC @

MacBuster
14.11.2018, 09:23
Скорее всего сначала надо поставить точку, остальное может считаться от этого места.

tnt23
14.11.2018, 10:16
В Мониторе экран инициализируется так: 1B 36 31 1B 38 30.

Среди декодированных файлов есть файл OKEAH.240, целиком состоящий из одних лишь ESC последовательностей. Первый, кто сможет проиграть его на экран командой TYPE, будет вознагражден невероятным зрелищем.

http://sensi.org/~tnt23/ok240/whoa.png

tnt23
15.11.2018, 13:54
Или вот, к примеру, процедура чтения с (квази)диска. Некоторые места вызывают удивление.


;П\П ЧТЕНИЯ СЕКТОРА С ДИСКА
RDSEC: ;F2A0
PUSH H
PUSH D
MOV A,D
ANI 1
ORI 2
ORI 0
MOV B,A
XRA A
MOV A,E
RAR
MOV D,A
MVI A,0
RAR
MOV E,A
RSEC1:
MOV A,B
OUT 0C1H
LDAX D
MOV C,A
MVI A,0
OUT 0C1H
MOV M,C
INX H
INX D
MOV A,E
ADD A
JNZ RSEC1
MVI A,0
OUT 0C1H
POP D
POP H
RET


По поводу XRA перед засылкой в аккумулятор для последующего сдвига вопросов нет, благодаря экспресс-ликбезу от svofski.

А вот по поводу последовательности ORI 2 и ORI 0 возникла следующая эволюционная теория. ORI 2 устанавливает бит 'A16' в регистре управления банками ОЗУ, означая обращение к доп.ОЗУ. А вот ORI 0 на самом деле может быть рудиментом либо стволовой клеткой для обращения к доп.ОЗУ объемом более 64Кбайт, если предположить, что на его месте вписано ORI 4 для установки бита 'A17' в том же банковом регистре.

L Juriy
15.11.2018, 19:10
tnt23, Вот нашел свои записи про ESC последовательности;

Общая формула ESC <n> <n> начало отсчета верхний левый угол.
1 - прямоугольники ESC <код> <X1> <Y1> <X2> <Y2> Код, как я думаю, принимает значение от 1 до 0 (1 2 3 4 5 6 7 8 9 0), это нигде у меня не написано.
2 - косые линии ESC <код> <X1> <Y1> <X2> <Y2>
3 - точки ESC <код> <X1> <Y1>
4 - H x2 x3 x0 (1) (2) (3) (0) (1) (0) (цвет) яркость Тут тоже похоже на от 1 до 0
6 - режимы экрана
1 - 23 строки 64 знака
2 - 23 строки 80 знаков
3 - тоже самое
4 - как 1 + отсутствие курсора
5 - как предыдущая
6 - как 2 + отсутсвие курсора
7 - как предыдущая
8 - нет
9 - нет
0 - 18 строк 32 знака
7 - шрифт
1 - строчные и прописные русские
2 - строчные русские и латинские
3 - как в 2
4 - строчные и прописные латинские
5 - строчные и прописные русские
6 - как в 2
7 - как в 2
8 - как в 4
9 - как в 5
0 - как в 4
8 - комбинация цветов
1 - негатив цветной
2 - голубой зеленый
3 - исходный
4 - без курсора
5 - невидимый
6 - зеленый оранжевый
7 - белый белый
8 - курсор черный
9 - негатив
0 - нормальный
Больше нет ничего. Можно посмотреть по Бейсик программам.

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

Содержимое дискеты от AZMaster. (https://cloud.mail.ru/public/GNcE/d7rv1UcNK)

tnt23
15.11.2018, 20:34
tnt23, Вот нашел свои записи про ESC последовательности;

Общая формула ESC <n> <n> начало отсчета верхний левый угол.
1 - прямоугольники ESC <код> <X1> <Y1> <X2> <Y2> Код, как я думаю, принимает значение от 1 до 0 (1 2 3 4 5 6 7 8 9 0), это нигде у меня не написано.
2 - косые линии ESC <код> <X1> <Y1> <X2> <Y2>
3 - точки ESC <код> <X1> <Y1>
4 - H x2 x3 x0 (1) (2) (3) (0) (1) (0) (цвет) яркость Тут тоже похоже на от 1 до 0
6 - режимы экрана

1 - 23 строки 64 знака
2 - 23 строки 80 знаков
3 - тоже самое
4 - как 1 + отсутствие курсора
5 - как предыдущая
6 - как 2 + отсутсвие курсора
7 - как предыдущая
8 - нет
9 - нет
0 - 18 строк 32 знака


7 - шрифт

1 - строчные и прописные русские
2 - строчные русские и латинские
3 - как в 2
4 - строчные и прописные латинские
5 - строчные и прописные русские
6 - как в 2
7 - как в 2
8 - как в 4
9 - как в 5
0 - как в 4


8 - комбинация цветов

1 - негатив цветной
2 - голубой зеленый
3 - исходный
4 - без курсора
5 - невидимый
6 - зеленый оранжевый
7 - белый белый
8 - курсор черный
9 - негатив
0 - нормальный




Форматирование съехало. Я нащупал всего 9 или 10 команд, коды от 0 до 9, см. тут:
https://zx-pk.ru/threads/14176-kompyuter-quot-okean-240-quot.html?p=986516&viewfull=1#post986516

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

Начало координат по крайней мере в мониторе версии 7 в левом нижнем углу экрана.

66922

L Juriy
15.11.2018, 20:46
У меня на точках написано верх левый угол.
Вот так попробуй:
ESC 1 1 <x1> <y1> <x2> <y2> затем ESC 1 2 <x1> <y1> <x2> <y2> и дальше меняя третий байт до 9 и 0. Это прямоугольники.
Также для линий и точек.
Я так понял эти записи.
И похоже их нужно выдавать Монитору, а не СРМ.

b2m
15.11.2018, 21:03
И похоже их нужно выдавать Монитору, а не СРМ.
Для СР/М это несуществующие файлы, он их имя один-в-один выдаёт (и вопрос потом). Так что вполне годный способ.

tnt23
15.11.2018, 21:16
Команды все равно кому выдавать, они вводятся с клавиатуры и далее их обрабатывает процедура Монитора вывода символа на экран, которую также использует и CP/M.

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


У меня на точках написано верх левый угол.
Вот так попробуй:
ESC 1 1 <x1> <y1> <x2> <y2> затем ESC 1 2 <x1> <y1> <x2> <y2> и дальше меняя третий байт до 9 и 0. Это прямоугольники.
Также для линий и точек.
Я так понял эти записи.
И похоже их нужно выдавать Монитору, а не СРМ.

ESC 1 это действительно прямоугольники, а дальше идут не пять аргументов, а четыре. То есть правильный формат команды рисования прямоугольника - ESC 1 00 00 FF FF (без пробелов).

L Juriy
16.11.2018, 14:58
Но у нас ТРЕХ байтоавя последовательность не считая координаты, а в этом случае получается ДВУХ байтовая.
Придется свой допаивать и проверять, заказ сегодня получил, так что дело только за пайкой.

Попробуй загрузить по команде L

tnt23
16.11.2018, 16:29
Но у нас ТРЕХ байтоавя последовательность не считая координаты, а в этом случае получается ДВУХ байтовая.


Не совсем понял. Вот расковырянный ROM, в нем две таблицы, относящиеся к ESC-последовательностям. Значения в первой таблице как бы намекают на количество параметров.

http://sensi.org/~tnt23/ok240/graph.png

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

Сделал наглядную инфографику для начинающих экзорцистов:

66935

L Juriy
16.11.2018, 17:19
Ааа, понял ESC <код функции(таблица 2)> <индекс количество байт данных(таблица 1)> <данные в соответствии с предыдущим значением>
Таблицу рисовать из конспекта? Я вроде пытался ее описать выше, но плохо получилось.

Кстати у тебя листинг не монитора7 потому что адреса таблицы в мониторе7 начинаются E39D и E3AD.
У меня монитор в котром таблицы начинаются как у тебя обозначен мниторТ.

tnt23
16.11.2018, 18:04
Ааа, понял ESC <код функции(таблица 2)> <индекс количество байт данных(таблица 1)> <данные в соответствии с предыдущим значением>
Таблицу рисовать из конспекта? Я вроде пытался ее описать выше, но плохо получилось.


Рисовать особо нет смысла, там некоторые вещи стоит проверить. Например, у меня не получилось переключать шрифты как написано, и много где параметры циклически заходят на второй круг. Скажем, ESC 6 нужен всего один бит, поэтому результат будет одинаков для последовательностей ESC 0, ESC 2, ESC 4 и т.д.



Кстати у тебя листинг не монитора7 потому что адреса таблицы в мониторе7 начинаются E39D и E3AD.
У меня монитор в котром таблицы начинаются как у тебя обозначен мниторТ.

Я потрошил монитор AZMaster, не думаю, он сильно отличается от 240/7. Но хорошо бы сделать полную аутопсию обоим мониторам, вдруг найдется что интересное.

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

Вроде остались неразъясненными команды ESC 5, ESC 9 и ESC =.

L Juriy
16.11.2018, 18:56
Когда у меня старая плата работала, я пробовал и все получалось по таблице.
Шрифтов там всего 3 варианта ESC71 ESC72 и ESC74.
А режим экрана получилось 64 символа, 80 символов и 32 символа?

tnt23
16.11.2018, 19:32
Когда у меня старая плата работала, я пробовал и все получалось по таблице.
Шрифтов там всего 3 варианта ESC71 ESC72 и ESC74.
А режим экрана получилось 64 символа, 80 символов и 32 символа?

Вариантов шрифта у меня получается только два, ESC 7 0 и ESC 7 1.

Режимов экрана тоже всего два, цветной 32 символа в строке и монохром 64 символа. Да и с чего бы им быть больше, если аппаратно всего два варианта.

tnt23
16.11.2018, 23:12
Попробуй загрузить по команде L

Пробовал, зависает на этапе загрузки. То есть в память определенно что-то пишется, но после окончания передачи подсказка Монитора не появляется.
Возможно, что-то не так с HEX форматом. Я пробовал делать маленькие программки с помощью "Прекрасного Ассемблера 8080" (http://sensi.org/~svo/i8080/), его HEX загружаются отлично.

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

...загружаются отлично, пока размер программы не превысит 16 байт.

L Juriy
17.11.2018, 11:02
...загружаются отлично, пока размер программы не превысит 16 байт.
Байт или килобайт?
Вот небольшой набор программ для работы с СРМ.

tnt23
17.11.2018, 12:20
Байт или килобайт?
Вот небольшой набор программ для работы с СРМ.

Как только начинается вторая строчка в HEX файле, что-то ломается в процедуре приема. Из-за этого не могу вообще ничего толком загрузить.

tnt23
17.11.2018, 15:46
Попробуй загрузить по команде L

Как только взял Tera Term, проблемы с загрузкой по директиве L ушли. HEX-файл размером 55К грузится на скорости 4800 примерно 2 минуты.

Оба бейсика, MB.HEX и MBASIC.HEX, загрузились и запустились без запинки (ну, почти):

6694066941

По-видимому, оба рассчитаны на запуск из-под CP/M.

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

Передача на скоростях 9600 и 19200 (1.9Кб/сек, 55К за 30 секунд) тоже работает.

L Juriy
17.11.2018, 15:55
По-видимому, оба рассчитаны на запуск из-под CP/M.
Да это СРМ программы.Сохрани их на ЕД командой SAVE <к-во блоков по 128> <имя файла>.
А затем попробуй на ленту командой WRITE <имена файлов>. Если имя не укажешб то весь диск.
Настрой на скорость 9600 веселее будет.
На дискете 0 есть исходный текст программы обмена с по последовательному порту.
Пишет в обе стороны. Я для передачи на РС писал свою программу.

К D78 подключается клавиатура и ВНЕШНЕЕ ПЗУ. Я не пробовал.

tnt23
17.11.2018, 16:02
Да это СРМ программы.Сохрани их на ЕД командой SAVE <к-во блоков по 128> <имя файла>.

Имя.COM, видимо, чтобы оттуда по имени запускать. Попробую.


А затем попробуй на ленту командой WRITE <имена файлов>. Если имя не укажешб то весь диск.

Вместо магнитофона у меня цифровой мультитрековый рекордер, да и интерес к записи на ленту чисто академический. Зачем, если есть загрузка через RS-232?


Настрой на скорость 9600 веселее будет.

На 19200 еще более весело, если предварительно запустить простенькую программку: 3E 05 D3 61 3E 00 D3 61 C3 03 E0.

L Juriy
17.11.2018, 16:05
Кварц какой стоит?

Тогда надо реализовывать что то подобное (https://zx-pk.ru/threads/27822-ds-card-ut-orichan-orinet-etc.html) или ее

tnt23
17.11.2018, 16:21
Кварц какой стоит?

12.288 МГц. Для скорости 4800 штатный делитель канала 1 таймера 20, для 9600 и 19200 соответственно 10 и 5. Пробовал на 38400 с делителями 2 и 3, безуспешно. То ли уход частоты большой, то ли процессор уже не справляется.

L Juriy
17.11.2018, 16:32
Наверное уход большой. При делителе меньше 5 проблемы. Если только вместо 64 использовать 16 в настройках ВВ51.

tnt23
17.11.2018, 17:22
Наверное уход большой. При делителе меньше 5 проблемы. Если только вместо 64 использовать 16 в настройках ВВ51.

По умолчанию вроде делитель 16. Для скорости 4800 бод тактовая частота на ВВ51 приходит около 75КГц.

Для скорости 38400 частота прихода символов в порт будет около 3,8тыс в секунду. Это примерно один символ в 200 микросекунд. Я пробовал дергать звуковым выходом в простом цикле, получалось 50КГц. Так что, возможно, 38400 уже на пределе возможностей или за ним.

L Juriy
17.11.2018, 18:46
Ну что, 19200 и так неплохо для ВВ51.Выше уже нужны с буферами.
Пытался разобраться как использовать ру7, но чет совсем запутался.

tnt23
17.11.2018, 19:04
Я пока не могу понять, как идет обращение к обычной памяти и к видеопамяти применительно к двум линейкам ОЗУ. Видеопроцессор читает 16 бит данных за раз, то есть, получается, сразу из обеих линеек?

По поводу РУ7, кажется, все довольно просто. Нужно чуть подкорректировать процедуру чтения-записи сектора из/в дополнительное ОЗУ. Сейчас при обращении к доп.ОЗУ выставляется в 1 бит A16. Так как с двумя линейками по 64КБайт у нас всего две страницы ОЗУ (основная и дополнительная), то для выбора страницы хватает одного бита (0 - основная, 1 - дополнительная для кваза).

С установкой микросхем памяти большего объема страниц ОЗУ становится, натурально, больше в 2 или 4 раза. Стало быть, нужно уже два или три бита для выбора 64-килобайтных страниц. Самое простое - устанавливать в 1 бит A17, получится вдвое большее количество 128-байтных секторов.

L Juriy
17.11.2018, 19:26
Видеопроцессор читает 16 бит данных за раз, то есть, получается, сразу из обеих линеек?
Нет, он читает из основного ОЗУ.В дополнительное ОЗУ он обращается если установлено 2 страницы видеоОЗУ.
Вернее просто перключается, тогда там читает 16 бит.В основном ОЗУ видео распологается по адресам ПЗУ.
Как то так.

Вот я и запутался, как А16 переключает . Выбор линеек осуществляется адресом А8.
Если А16 не переключать, а выдавать А17 и А18 то обратимся к большей памяти в линейке?

tnt23
17.11.2018, 23:12
Сообщение от tnt23
Видеопроцессор читает 16 бит данных за раз, то есть, получается, сразу из обеих линеек?
Нет, он читает из основного ОЗУ.В дополнительное ОЗУ он обращается если установлено 2 страницы видеоОЗУ.
Вернее просто перключается, тогда там читает 16 бит.В основном ОЗУ видео распологается по адресам ПЗУ.

Вот это непонятно. В статье говорится, что видеопроцессор (громкое название, просто схема вывода на экран) читает из памяти за один раз 2 байта. Из этих двух байт складываются либо 16 монохромных точек, либо 8 цветных, которые выводятся последовательно в строке. То есть обращение к памяти 16-битное.

Когда процессор обращается к памяти, его, само собой, интересует только 1 байт. Возможно, на практике считываются все равно 16 бит, просто лишние данные из ОЗУ никем не подбираются в этом случае.

По поводу видео-ОЗУ. Его объем всегда составляет 16Кбайт, и окно в мир можно располагать по адресам 4000-7FFF или С000-FFFF. Дополнительным битом в другом порту можно заставить видеопроцессор брать данные из дополнительной страницы.

Я попытался свести в красивую цветную таблицу журнальные данные и осмыслить поддержку РУ7.

http://sensi.org/~tnt23/ok240/ram_map.png

Ссылка на Google Docs:
https://docs.google.com/spreadsheets/d/1na76G9LdmVR-rp1MdgIxdVd7KN82efUQqIXETKm6iYc/edit?usp=sharing

L Juriy
18.11.2018, 13:00
В режиме 5 и 6 доступ к дополнительному ОЗУ не получается переписать из основного ОЗУ в дополнительное, так как основного НЕТ.
Там скорее всего перед ПЗУ НЕ дополнительное ОЗУ2 , а ОСНОВНОЕ ОЗУ2.
Есть интересная конфигурация.
Если поставить РУ6 то имеем 32К основного ОЗУ.
На место D1 ставится ПЗУ обьемом 16К,а на D2 ставиться статическое ОЗУ 32К
и получаем полную память, но не имеем ЕД.
Сегодня добрался до паяльника. Так что продвинулся немного, осталось запаять ОЗУ, кондеры по питанию и разьемы.
Хочу запаять 2 линейки РУ7, но пока в раздумье и "курю" схему по этому поводу.

tnt23
18.11.2018, 13:56
В режиме 5 и 6 доступ к дополнительному ОЗУ не получается переписать из основного ОЗУ в дополнительное, так как основного НЕТ.

Код переноса сектора между основной и доп.памятью с этим справляется легко: для каждого переносимого байта сперва включается исходная страница, оттуда байт копируется, потом включается приемная страница, туда байт кладется. Медленно, но верно. (Я бы еще запрещал прерывания на время работы таких процедур, на будущее)

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


Сегодня добрался до паяльника. Так что продвинулся немного, осталось запаять ОЗУ, кондеры по питанию и разьемы.

Я бы не советовал запаивать память, лучше поставить на панельки. Например, из моих 16 свежекупленных 4164 два оказались нерабочими.


Хочу запаять 2 линейки РУ7, но пока в раздумье и "курю" схему по этому поводу.

У меня тест ОЗУ проходил нормально с одной линейкой 4164 и другой линейкой 41256. Правда, работать на такой конфигурации я не пробовал. Подожду, когда приедет вторая линейка 41256.

L Juriy
18.11.2018, 18:25
Я бы не советовал запаивать память, лучше поставить на панельки. Например, из моих 16 свежекупленных 4164 два оказались нерабочими.
У меня проблемы выкусить микросхему нет. РУ7 валяются применить пока некуда.
РУ5 так вообще целая куча, часть паяные, снятые с Поиска-1. Вот эти нужно проверять.
На старой плате у меня стояла одна панелька для проверки микросхем.

tnt23
19.11.2018, 10:11
Если принять за рабочую гипотезу, что память в "Океане" 16-разрядная (как и нарисовано на картинке, собственно), то все становится чуть понятнее. Не две линейки 64Кx8, а одна 32Kx16.

Сентенцию про A8 надлежит понимать просто: четные блоки по 256 слов хранятся в первых 8 корпусах, нечетные во вторых. Все обращения к памяти (процессора или видеопроцессора) всегда 16-битные, только в случае процессора нужный байт мультиплексируется на четную или нечетную половину ОЗУ по A8, и активируется соответствующий CAS. Видеопроцессор активирует всегда оба CAS.

Отсюда печальное следствие: все микросхемы памяти должны быть одного размера.

perestoronin
20.11.2018, 00:27
У меня проблемы выкусить микросхему нет. РУ7 валяются применить пока некуда.

Отсюда печальное следствие: все микросхемы памяти должны быть одного размера.
Не кусайте ничего, сначала соберите рабочие версии эталонные на РУ5.
А затем на следующих исправленных версиях платок можно попробовать уже не крайне дефицитные РУ7 и их прямые аналоги, а более доступные м.c. c неисправных плат старых компьютеров в частности c SIMM разных. Можно также попробовать проводками SIMM подпаять. SIMM как раз 16 разрядные.

L Juriy
20.11.2018, 07:14
tnt23,

Сентенцию про A8 надлежит понимать просто: четные блоки по 256 слов хранятся в первых 8 корпусах, нечетные во вторых.
Покурил еще схему и пришел вот к чему.
Вышеприведенная гипотеза не верна. Распределение следующее согласно описания.
С начало видеоозу идут НЕЧЕТНЫЕ 256 байт (адрес А), затем идут ЧЕТНЫЕ 256 байт(адрес А+100h).
Затем все снова повторяется. Проверить, можно наверное, удалив вторую линейку ОЗУ.
Ведь конфигурация на РУ6 должна работать. Поэтому вывод что все микросхемы
должны быть одинаковы не совсем верен. У тебя же работало с разными линейками.
Вот как то так получается.

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


Не кусайте ничего, сначала соберите рабочие версии эталонные на РУ5.
Пока еще только запаеваем. Кусаем только колбасу и хлеб.:wink:

tnt23
20.11.2018, 09:20
С начало видеоозу идут НЕЧЕТНЫЕ 256 байт (адрес А), затем идут ЧЕТНЫЕ 256 байт(адрес А+100h).
Затем все снова повторяется. Проверить, можно наверное, удалив вторую линейку ОЗУ.

Это видеопроцессор их так вычитывает, причем ОДНОВРЕМЕННО 16 бит, чтобы было что отобразить на экране в цветном режиме. (Да и в монохромном, только оба байта оседают в сдвиговых регистрах и подаются на выход друг за дружкой).

Вторую линейку я удалял во время тестов, экран портился, а до теста памяти я не доходил, кажется.

Ведь конфигурация на РУ6 должна работать.

Это ниоткуда не следует, кроме упоминания о возможности использовать РУ6. Официальной прошивке нужно 128Кx8, тест памяти тоже рассчитан на 128Кx8.

L Juriy
20.11.2018, 09:39
Это видеопроцессор их так вычитывает
Я имел ввиду адресацию байт, а не сколько считывает. О считывания не ничего не упоминал.
Исключить вторую во время работы,хотя бы монитора, чтобы удостовериться.
Надеюсь сегодня плату допаяю и продолжу экперименты.
Как вариант хочу попробовать статику. Две 61256 основное ОЗУ и одна(две) 628512 дополнительное.

tnt23
20.11.2018, 10:04
Как вариант хочу попробовать статику. Две 61256 основное ОЗУ и одна(две) 628512 дополнительное.

Вот мне тоже не дает покоя вопрос со статикой вместо ПЗУ 1 (C000-DFFF). Там живет CP/M, но было бы здорово ее отключать, оставив только ПЗУ 0 Монитора. В оригинальной статье упоминается подпираемая резервным питанием статика на этих адресах, и даже прерывание в систему специально заведено по проседанию питания.

tnt23
21.11.2018, 23:51
Надеюсь сегодня плату допаяю и продолжу экперименты.

Как успехи?

L Juriy
22.11.2018, 11:47
Попеременно. Сегодня купил панелек для памяти(решил все таки поставить на одну линейку).
Только приехал из города, управляюсь по хозяйству. Счас тепло станет и паять начнем.
Курил схему насчет вывода на монитор EGA.
Непонятки с сигналами Fl(123), по какой логической функции они взаимодействуют с цветами.
Пока решил без них вывести.
На EGA нужны сигналы уровня TTL, R G B и раздельные синхро по вертикали и горизонтали.

tnt23
22.11.2018, 12:23
Как я понял, сигналы FL управляют цветом фона и включаются, когда цвет переднего плана 0 (видимо, прозрачный?).

L Juriy
22.11.2018, 15:14
Замена 2 ИР16 (DD46,DD47) на 580ИР82.
Кроме того вместо остальных ИР16 возможна установка ИР1 кроме DD14.
Можно заменить и DD14 на ИР1, но придется резать и паять.
Это все работало на старой плате.

perestoronin
25.11.2018, 18:44
Замена 2 ИР16 (DD46,DD47) на 580ИР82.
Кроме того вместо остальных ИР16 возможна установка ИР1 кроме DD14.
Можно заменить и DD14 на ИР1, но придется резать и паять.

Зачем менять нормальные микросхемы на более чем странные ? Тем более что надо и резать и паять ?
ИР16 закончились ? Но ведь есть КР1533ИР16. Если хочется экзотики то можно еще вспомнить и про КР1533ИР9 и КР1533ИР10.
Но 580ИР82 не нужно тянуть в эту машинку.
А ИР1 это про какую серию ? про К155ИР1 ? Тем более не нужно.

tnt23
04.12.2018, 22:50
Среди декодированных файлов есть файл OKEAH.240, целиком состоящий из одних лишь ESC последовательностей. Первый, кто сможет проиграть его на экран командой TYPE, будет вознагражден невероятным зрелищем.

http://sensi.org/~tnt23/ok240/whoa.png

Все приходится делать самому (с) Зорг

Сконвертил файл в .HEX, загрузил командой .L, зашел в CP/M, сохранил файл на квазидиск командой save 64 okeah, и...

https://youtu.be/M6C2gXHD-to

tnt23
20.12.2018, 17:42
Наступила некоторая ясность относительно ESC последовательности со знаком вопроса (ESC?12345678): предположительно ею задаются частота и длительность BELL.

svofski
20.12.2018, 18:20
Ютубу с Гносиенной №1 исполненной командой TYPE в студию!

tnt23
20.12.2018, 21:28
Сперва надо на реале попробовать.

Но процедура проигрывания звука на компьютере, оснащенном трехканальным таймером ВИ53 и контроллером прерываний ВН59, выглядит в Мониторе следующим образом:

- настраиваем таймер на полупериод нужной частоты
- переворачиваем бит порта, к которому подключен излучатель
- периодически опрашиваем признак конца счета таймера
- обратно переворачиваем бит порта с излучателем
- снова сетапим таймер
- опять ждем конца полупериода
- заодно декрементим счетчик длительности в регистровой паре
- goto loop

И это не может не вызывать восхищения.

svofski
20.12.2018, 23:02
И это не может не вызывать восхищения.
Как все продумано!

tnt23
21.12.2018, 11:11
Как все продумано!

Я думаю, мы просто не знаем всего. Возможно, существовали другие варианты биосов и бдосов, но все кануло в Лету.

svofski
21.12.2018, 14:51
Я думаю, мы просто не знаем всего.
Ну у них же тоже время было не бесконечно резиновое. Скорее всего это было написано на скорую руку, документации либо не было, либо не успели разобраться. Получился гуденаф, переделывать никто не стал.

tnt23
23.12.2018, 10:03
ESC 7 n управляет отображением выводимых на экран символов. Параметр n записывается в рабочую ячейку BFF2h Монитора:


0 - выводятся символы латиницы
1 - выводятся символы кириллицы
2 - символы с кодами 40h..5fh выводятся латиницей, 60h..7fh заглавной кириллицей

tnt23
23.12.2018, 15:31
А в ESC 9 зачем-то задействуется клавиатура:

http://sensi.org/~tnt23/ok240/esc9.png

...и вывод на принтер :-O

svofski
23.12.2018, 19:17
Смутно как-то вспоминается, что в древних CP/M, да наверное и не только в них, можно было включить дублирование всего ввода-вывода на принтер. Делалось это разумеется какой-то интуитивной командой с терминала.

tnt23
23.12.2018, 22:19
Может быть, это что-то похожее. Только это встроено в биос.