LINUX.ORG.RU

DOS Navigator портирован на Linux

 , , , turbo vision,


2

2

Разработчик @unxed, неоднократно предпринимавший попытки запустить двухпанельный файловый менеджер DOS Navigator под Linux, добился, наконец, успеха. Для решения проблемы лицензионной чистоты встроенная модифицированная библиотека Turbo Vision для Паскаля, никогда не публиковавшаяся под открытой лицензией, была заменена на рерайт современного форка доступной легально C++-версии, с переходом на UTF-8 и современную классовую архитектуру взамен характерной для TV, но практически не применяющейся сегодня, объектной.

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

Для поддержки UTF-8 в DOS-сборках применяется специально разработанный для этого DOS UTF8 API, уже добавленный в DOSBox-X.

Отдельно стоит отметить порт на Linux Volkov Commander, предпринятый этим же разработчиком. Используется простой эмулятор 8088. Вывод рисуется в консоль за счёт скрейпинга видеопамяти текстового режима по аналогии с тем, как WinPTY скрейпил консоль Windows.

>>> DOS Navigator 1.20



Проверено: hobbit ()
Последнее исправление: dataman (всего исправлений: 3)
Ответ на: комментарий от Saakx

На самом деле, если строго формулировать, то это особенность не линуксовых терминалов, а DEC VTxxx-совместимых.

В линуксе традиционно используются именно такие в большинстве случаев (начиная от ядерного). Но теоретически никто не мешает в гуи-терминалах использовать другие варианты. По ссылке тебе дали как раз спецификацию альтернативного варианта сообщений о нажатых кнопках, где одиночный esc нельзя ни с чем перепутать. Но поддерживают её довольно мало софта.

firkax ★★★★★
()
Ответ на: комментарий от wandrien

Ты вместо сарказма лучше скажи прямо.

i-rinat ★★★★★
()
Ответ на: комментарий от Hiddenman

До сих пор иногда захожу посмотреть на то, как в 19 лет я мог ночами без интернетов и с единственной книжкой под рукой мог кропотливо писать даже огромную документацию для проекта, не говоря уж о коде

В 19 лет всё по колено, я также работал :)

который отлаживал просто методом тыка ночами напролет.

Метод тыка конечно хорош, но как-то оно не очень даже в 19 лет.

Сил и энтузиазма было нескончаемое количество :)

Вот это точно.

anc ★★★★★
()
Ответ на: комментарий от unxed

Сжёг 3/4 недельного Клода Макса, но доделал НОРМАЛЬНО. Всё, остатки спижженного кода вычищены, а заодно и FP IDE допереведена на мой TV окончательно, и всё это покрыто тестами. Скрипты аудита тоже доработаны, чтоб больше ничего не просачивалось.

Выводы на будущее:

  1. Модели уровня Sonnet для такой работы слабоваты. Невнимательные, пиздят код под копирайтом.
  2. Начинать надо сразу с максимально параноидальных скриптов аудита, чтобы спижженный код отлавливался сразу, а не когда поверх него дофига всего выстроено.
unxed
() автор топика
Ответ на: комментарий от unxed

… долбаный Соннет действительно спиздил код…

Нецензурная лексика на LOR’е не приветствуется. Лучше сформулируйте как-то так:

… долбаный Соннет действительно стащил/спёр код…

Mischutka ★★★★★
()
Ответ на: комментарий от Mischutka

стащил/спёр

тогда уж свагиналил ...

sunjob ★★★★★
()
Ответ на: комментарий от Mischutka

Сори, было на эмоциях. Впредь буду в литературных рамках!

unxed
() автор топика
Ответ на: комментарий от unxed

Редактор перепишу с нуля

А magiblot/turbo не годится как база?

GAMer ★★★★★
()
Ответ на: комментарий от GAMer

Нет, на pdp-11 писали в простом экраном редакторе.

ДВК/БК/УКНЦ за PDP-11 считаем? )

Не, они самостоятельно работать могли…

anc ★★★★★
()
Ответ на: комментарий от anc

Метод тыка конечно хорош, но как-то оно не очень даже в 19 лет.

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

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

Hiddenman ★
()
Ответ на: комментарий от Hiddenman

Вот честно непонял какое отношение const имеет к изменению переменных передаваемых в функцию.

anc ★★★★★
()
Ответ на: комментарий от Hiddenman

... особенно изменяемые константы! :о)

sunjob ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.