vak: (Улыбка)
[personal profile] vak
Сижу в центре кремниевой долины и программирую на фортране для БЭСМ-6. На дворе 2016 год, а вот поди ж ты, возникла настоятельная потребность. Нужно извлечь с диска некий бинарный образ и преобразовать в текстовый HEX файл. Надо сказать, Фортран-ГДР отличный инструмент для подобных задач. Мониторная система Дубна, симулятор ОС Диспак, книжки Мазного и Салтыкова-Макаренко под рукой. Решение выглядит так: hexdump.b6

История вопроса следующая. Есть процессор микро-БЭСМ, и для него есть тест системы команд. Тест написан на языке ассемблера, а сам ассемблер имеется в исходных текстах для БЭСМ-6. К ассебмлеру также прилагается линкер. Всё это запускается под мониторной системой "Дубна" на симуляторе ОС Диспак. На самом деле написана эта кросс-система была под ОС Дубна, и пользуется некоторыми её особенностями, поэтому пришлось на скорую руку привинтить несколько дубненских экстракодов к симулятору Диспака. Но это всё мелочи. В конце концов ассемблер с линкером заработали и на диске получился двоичный образ теста, размером около 24 килобайт. Как его извлечь оттуда? Тем более, что хранится он под управлением некой "библиотеки виртуальной памяти", и формат хранения не описан. Но есть API, набор фортрановских вызовов. Не вопрос: пишем програмулину и получаем нужный результат. Теперь можно смело запускать тест на симуляторе Verilog.

Date: 2016-11-24 06:48 (UTC)
From: [identity profile] juan-gandhi.livejournal.com
Восторг, конечно.

Date: 2016-11-24 07:12 (UTC)
From: [identity profile] juan-gandhi.livejournal.com
Вот меня тоже иной раз тянет тряхнуть, да зафигачить форт где-нибудь просто в джаваскрипте. Чо, делов-то.

Date: 2016-11-24 08:40 (UTC)
From: [identity profile] kbb.livejournal.com
Ну зафигачь например для:

10 a=a+1
goto 100

100 a=a-1
goto 10

Date: 2016-11-24 22:05 (UTC)
From: [identity profile] juan-gandhi.livejournal.com
Это фортран; а я если зафигачу, то форт.

Date: 2016-11-24 08:44 (UTC)
From: [identity profile] cross-join.livejournal.com
Смысла нет. Форт - высокоуровневая замена ассемблера и альтернатива Си для программирования встроенных систем. Яваскрипт - программирование терминалов конечного пользователя и "клей" для интеграции системных компонентов.

Date: 2016-11-24 09:10 (UTC)
From: [identity profile] nzeemin.livejournal.com
Года два уже как есть такой:
https://github.com/eatonphil/jsforth

Сейчас наверное имеет смысл реализовать Форт под asm.js.
Edited Date: 2016-11-24 09:12 (UTC)

Date: 2016-11-24 13:41 (UTC)
From: [identity profile] Евгений Х. (from livejournal.com)
Так asm.js уже наверно каменный век.
Теперь эпоха WebAssembly (отгрузка официально в Q1 2017)
А внутри там очень даже тортфорт!

(no subject)

From: [identity profile] juan-gandhi.livejournal.com - Date: 2016-11-24 22:10 (UTC) - Expand

(no subject)

From: [identity profile] Евгений Х. - Date: 2016-11-25 02:07 (UTC) - Expand

(no subject)

From: [identity profile] juan-gandhi.livejournal.com - Date: 2016-11-25 02:14 (UTC) - Expand

(no subject)

From: [identity profile] juan-gandhi.livejournal.com - Date: 2016-11-25 01:59 (UTC) - Expand
(deleted comment)

(no subject)

From: [identity profile] juan-gandhi.livejournal.com - Date: 2016-11-24 22:11 (UTC) - Expand

(no subject)

From: [identity profile] juan-gandhi.livejournal.com - Date: 2016-11-25 02:01 (UTC) - Expand

Date: 2016-11-24 13:43 (UTC)
From: [identity profile] Евгений Х. (from livejournal.com)
Это просто высший пилотаж!

(no subject)

From: [identity profile] andy-scott.livejournal.com - Date: 2016-11-25 17:52 (UTC) - Expand

(no subject)

From: [identity profile] andy-scott.livejournal.com - Date: 2016-11-26 15:29 (UTC) - Expand

Date: 2016-11-26 03:23 (UTC)
From: [identity profile] qvb.livejournal.com
Да, компьютерная археология - очень интересная штука.

Лет пять назад меня почему-то торкнуло вспомнить незабвенную CM4/CM1420 и RSX11M. Поставил эмулятор, пару месяцев поигрался, вспомнил тот ассемблер, даже начал зачем-то портировать TCP стэк на RSX11M, но потом занялся другими хобби-проектами и охладел.

(no subject)

From: [identity profile] qvb.livejournal.com - Date: 2016-11-26 06:20 (UTC) - Expand

(no subject)

From: [identity profile] avseyev.livejournal.com - Date: 2016-11-27 20:32 (UTC) - Expand

(no subject)

From: [identity profile] qvb.livejournal.com - Date: 2016-11-27 20:38 (UTC) - Expand

(no subject)

From: [identity profile] qvb.livejournal.com - Date: 2016-11-27 21:21 (UTC) - Expand

(no subject)

From: [identity profile] Евгений Х. - Date: 2016-11-28 10:28 (UTC) - Expand

(no subject)

From: [identity profile] qvb.livejournal.com - Date: 2016-11-28 15:23 (UTC) - Expand

(no subject)

From: [identity profile] Евгений Х. - Date: 2016-11-29 03:05 (UTC) - Expand

(no subject)

From: [identity profile] qvb.livejournal.com - Date: 2016-11-29 03:21 (UTC) - Expand

(no subject)

From: [identity profile] Евгений Х. - Date: 2016-11-29 03:36 (UTC) - Expand

(no subject)

From: [identity profile] qvb.livejournal.com - Date: 2016-11-29 03:44 (UTC) - Expand

(no subject)

From: [identity profile] Евгений Х. - Date: 2016-12-14 03:11 (UTC) - Expand

Date: 2016-11-24 07:54 (UTC)
From: [identity profile] archaicos.livejournal.com
Маньячно! :)

Date: 2016-11-24 13:54 (UTC)
From: [identity profile] Евгений Х. (from livejournal.com)
А вот получается, что полноценной МС Дубна/ДИСПАК под симулятор нету?
Или так было быстрее просто?

Date: 2016-11-25 02:09 (UTC)
From: [identity profile] Евгений Х. (from livejournal.com)
Я имел ввиду под симулятор на базе SIMH который.

(no subject)

From: [identity profile] andy-scott.livejournal.com - Date: 2016-11-25 17:54 (UTC) - Expand

Date: 2016-11-26 03:26 (UTC)
From: [identity profile] qvb.livejournal.com
Интересный проект.

А как микро-бэсм по производительности, если например сравнить с ДВК3 или подобными аппаратами?

Date: 2016-11-26 06:29 (UTC)
From: [identity profile] qvb.livejournal.com
Да, трудно сравнивать из-за разницы в разрядности и системе команд.

У старших моделей ДВК производительность была вполне ОК - где-то до 1 mips (на 16-битных операциях). Но в 4 раза большая разрядность - это существенно.

А операции с плавающей точкой на ДВК были очень медленные, там по-моему вообще только эмуляция была.

Date: 2016-11-27 20:38 (UTC)
From: [identity profile] avseyev.livejournal.com
Сопроцессор был. На ДВК-3 их ставили не так часто, но на поздних Квантах их ставили. Сопроцессор, правда, не самый быстрый. Археологи собирались реверснуть 1801ВМ3 со временем. Интересно, если кто-нибудь за ВМ4 возьмется. В итоге же может получиться полноценная железная реплика ДВК-3. Вот тогда и можно будет сравнивать. :)

(no subject)

From: [identity profile] qvb.livejournal.com - Date: 2016-11-27 20:47 (UTC) - Expand

(no subject)

From: [identity profile] avseyev.livejournal.com - Date: 2016-11-28 04:06 (UTC) - Expand

(no subject)

From: [identity profile] qvb.livejournal.com - Date: 2016-11-28 15:08 (UTC) - Expand

(no subject)

From: [identity profile] avseyev.livejournal.com - Date: 2016-11-28 20:44 (UTC) - Expand

(no subject)

From: [identity profile] qvb.livejournal.com - Date: 2016-11-29 01:42 (UTC) - Expand

Date: 2016-11-27 20:33 (UTC)
From: [identity profile] avseyev.livejournal.com
"Всяко мощнее" только с плавучкой, очевидно.