PDA

Просмотр полной версии : Каковы должны быть принципы новой ОС?



dwt
27.03.2005, 12:39
Я множество раз задумывался над таким вопросом - достаточна ли вычислительная мощность Спектрума для реализации на нем полноценной многозадачной ОС? И вообще, если рассматривать проблему шире, нужна ли новая ОС Спектруму? Для ответа на эти вопросы, давайте для начала постараемся определить для себя - что такое ОС на Спектруме и для каких целей она предназначена (или, дальше, должна быть предназначена)?

Этим вопросам была посвящена масса публикаций в различной прессе и они вызывали (и продолжают вызывать) довольно серьезный резонанс. Например, казалось бы, вполне очевидный вопрос - является операционной системой BASIC48? Можно вступать в продолжительную полемику, спорить об этом, но вывод один: BASIC48 - это язык программирования, в который интегрированы некоторые функции, присущие ОС. Однако сделано это несколько неудобно и, извиняюсь, даже можно сказать, коряво (вероятно, в силу "недописанности" BASIC48).

Теперь второй вопрос: является ли TRDOS полноценной ОС? Во-первых, давайте исходить из того, что это все-таки ОС, а вернее - ИСКЛЮЧИТЕЛЬНО ДОС. На сколько она является законченной, стабильной и "не-сырой" - это вопрос, который, пожалуй, и вызвал широкие дискуссии на эту тему.

То есть, основная проблема ОС-ДОС на Спектруме - это безнадежная устарелость концепций и приоритетов, заложенных в основу BASIC48 и TRDOS. Устарелость - это одно; глючность и недописанность - это то другое, что уже не позволяет молчать...

Цель создания этой темы - определить основные принципы, так сказть, "идеологию" ОС. На мой взгляд, нет необходимости в изначальность ставить графический интерфейс, и т.д. Необходимо создать ОС, ядро которой будет минимально. Ядро, которое посредством инкапсулирования функций распределения памяти (читайте "Менеджер памяти..." в этом разделе), и других, вызывающих конфликт моделей Спектрума, будет по-возможности конфигурированием "сглаживать" чрезмерное обилие стандартов и несовместимость.

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

А что вы думаете по этому поводу?

Conan
27.03.2005, 16:25
А вот какие мысли пришли мне:

Помните диалог Алисы и Чеширского кота из «Алисы в стране чудес»?

Алиса спрашивает кота:
- Скажите, пожалуйста, куда мне отсюда идти?
- Это во многом зависит от того, куда ты хочешь прийти,- ответил Кот.
- Да мне почти все равно,- начала Алиса.
- Тогда все равно, куда идти,- сказал Кот.
----------------------------------------------------------

Есть такой стандартный подход, в проектной деятельности, при выработке общего понимания чего-либо (Shared Vision):

1.Описание проблемы (где мы находимся)

2.Цели разработки (куда мы хоти придти)

3.Предлагаемое решение (путь)



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


Что бы не провоцировать флейм, скажу лишь что это – IMHO :smile:

dwt
27.03.2005, 16:34
А вот какие мысли пришли мне:

Помните диалог Алисы и Чеширского кота из «Алисы в стране чудес»?

Алиса спрашивает кота:
- Скажите, пожалуйста, куда мне отсюда идти?
- Это во многом зависит от того, куда ты хочешь прийти,- ответил Кот.
- Да мне почти все равно,- начала Алиса.
- Тогда все равно, куда идти,- сказал Кот.
----------------------------------------------------------

Есть такой стандартный подход, в проектной деятельности, при выработке общего понимания чего-либо (Shared Vision):

1.Описание проблемы (где мы находимся)

2.Цели разработки (куда мы хоти придти)

3.Предлагаемое решение (путь)



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


Что бы не провоцировать флейм, скажу лишь что это – IMHO :smile:

Да!
Spectrum (логин такой :) ) предложил создать группу по вопросам ОС. Как вы сотноситесь к тому, что если группа людей, объединившись, выработает концепцию ОС и начент ее создание? Как мне кажется, это будет выходом из ситуации. Кто желает вступить в эту группу?

random
27.03.2005, 17:07
зачем группы? неужели работа в текущем режиме невозможна? вообще мне очень не нравится идея что ограниченная группа людей беседует между собой и потом вдруг публикуют документ и последующие комментарии (особенно если они затрагивают архитектурные вопросы) игнорируются под предлогом "нам влом все переделывать" или встречаются в штыки.

особенно для операционной системы.

dwt
27.03.2005, 17:17
зачем группы? неужели работа в текущем режиме невозможна? вообще мне очень не нравится идея что ограниченная группа людей беседует между собой и потом вдруг публикуют документ и последующие комментарии (особенно если они затрагивают архитектурные вопросы) игнорируются под предлогом "нам влом все переделывать" или встречаются в штыки.
Работа в текущем режиме, на сколько я смею судить, является лишь разговором. Нет четкой, хотя бы одной концепции.
В принципе, никто не против публичного обсуждения чего-либо. Но предложите концепцию, которую НУЖНО обсуждать, и в которую можно вносить коррективы. А говорить в общих чертах, как это происходит сейчас (извиняюсь, воду в ступе толочь :()...
Нет конкретики... А ограниченному числу людей легче будет договориться... Естественно, это IMHO

random
27.03.2005, 19:54
Маленькие группы более подвержены давлениям со стороны "авторитетных" людей и команды быстро делятся по признаку свой чужой.

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

Необходима не концепция а структура ТЗ. То что обсудили маленькую толику задач не значит что обсуждение пустое. Одно другому не мешает если знать все части головоломки. Повторюсь, приготовьтесь переделывать структуру / архитектуру если кто-то найдет более оптимальный метод и большинство согласится.

Сам бы с удовольствием этим занялся, но одному мне такое дело не поднять. Нужна группа модераторов нового раздела про разработку. У ограничивать число разработчиков только из-за того что хочется побыстрее... Вы куда-то опаздываете? Без толкового ТЗ и постоянного развития это начинание будет обречено на гораздо более быструю смерть нежели DOORS (так и не вышла), не говоря уже о долгожителе IS DOS.

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

captain cobalt
27.03.2005, 21:33
А вот ещё немного ИМХО.

При проектировании ОС нужно решить много вопросов. Некоторые из них распадаются на подвопросы. Однако основные это:
-- Модель исполнения. Параллельность и синхронизация.
-- Управление памятью.
-- Ввод-вывод
-- Обработка прерываний (у Speccy их совсем немного)

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

Я вижу только единственный способ движения вперёд. Кто-то должен предоставить РАБОТАЮЩИЙ, ДОКУМЕНТИРОВАННЫЙ, С ЧИТАБЕЛЬНЫМИ ИСХОДНИКАМИ, ПРИГОДНЫЙ К ДАЛЬНЕЙШЕМУ РАЗВИТИЮ прототип. Только вокруг конкретного, а не абстрактного центра кристаллизации могут собраться единомышленники. Именно так разработаны все открытые программные проекты. Другого пути нет.

captain cobalt
27.03.2005, 21:33
Теперь немного о культуре обсуждения.

Зачем обсуждать?
Такое ощущение, будто обсуждающие думают, что здесь присутствует большое количество "блестящих кодеров", которые только и ждут, когда им представят "гениальную архитектуру", останется лишь реализовать её и наступит счастье. :)

Зачем обсуждать?
Нужно ли обсуждать то, что давно исследовано, обосновано и изложено в УЧЕБНИКАХ по теории операционных систем? Не полезнее ли прочитать эти учебники? А на досуге изучить архитектуру нескольких конкретных реально существующих операционных систем, не укладывающуюся в прокрустово ложе этих учебников.

Тем не менее, я не против обсуждений. Но настоятельно рекомендую придерживаться правила
ОДНА ВЕТКА ФОРУМА = ОДНО АРХИТЕКТУРНОЕ РЕШЕНИЕ.
Что происходит при невыполнении этого правила вы видели - обсуждается, к примеру, конкретный метод управления памятью, потом вдруг приходит некто и "толкает" свою "идею". После этого некоторые участники продолжают обсуждать первую идею, в то время как другие переключаются на вторую. Через некоторое время возникает полная неразбериха. Создаётся ещё одна тема. В ней снова повторяется эта ситуация. Поэтому, если у кого-то есть конкретная идея архитектурного решения, он ДОЛЖЕН создать для неё новую тему. В этой теме будут обсуждаться достоинства и недостатки ТОЛЬКО одного этого конкретного решения. Такой более систематизированный способ обсуждений будет способствовать большей продуктивности этих обсуждений, и появлению новых, лучших, идей.

breeze
28.03.2005, 10:10
Вот что мне "нравится" :( в этом форуме что каждый отвечает так как он хочет... вот conan поставил ряд вполне грамотных вопросов, но никто не торопится на них попробовать ответить...


Есть такой стандартный подход, в проектной деятельности, при выработке общего понимания чего-либо (Shared Vision):

1.Описание проблемы (где мы находимся)


Мы находимся в "гудке", причем полном :rolleyes: на данном этапе у нас есть бейсик48, чуть расширенный 128й и эмулятор кассетных образов на диске ! - TR-DOS (именно с этой целью он и создавался)



2.Цели разработки (куда мы хоти придти)


хотим придти? хотим возможность доступа к HDD и CD-ROM, как на уровне выбора начальной загрузки, так и произвольный доступ к файлам (не знаю конечно, если вдруг кому и понадобится можно и поддержать в basic , типа как rand usr 15619:rem bla-bla-bla); так же хотим иметь возможность запуска одной и более программ в памяти одновременно, хотим переключения между ними.



3.Предлагаемое решение (путь)

решения два: либо мы переписываем TR-DOS, BASIC и еже с ними (геморно, нудно, долго - но зато будет совместимо со страрым веком ),
либо мы посылаем всё к черту и пишем так как думаем с возможной эмуляцией среды для особо привязванных (программ и игр). Хотя я думаю что если программа ценна то её можно и отучить от того же ПЗУ. Но как мне кажется для новой ос - будут и новые программы...

dwt
28.03.2005, 12:40
Вот что мне "нравится" :( в этом форуме что каждый отвечает так как он хочет... вот conan поставил ряд вполне грамотных вопросов, но никто не торопится на них попробовать ответить...
Об этом я и хтел сказать - давайте КОНЦЕПЦИИ!!! Ведь ответы на поставленные Conan`ом вопросы - это и будет обобщенная концепция!

Мы находимся в "гудке", причем полном :rolleyes: на данном этапе у нас есть бейсик48, чуть расширенный 128й и эмулятор кассетных образов на диске ! - TR-DOS (именно с этой целью он и создавался)
Вот-вот, и я о том же. Тем более, плюс ко всему - обилие стандартов не только памяти и скорости, но и различных других временных характеристиках. То есть все эти неровности должна "сглаживать" ОС. А что у нас?... :(

хотим придти? хотим возможность доступа к HDD и CD-ROM, как на уровне выбора начальной загрузки, так и произвольный доступ к файлам (не знаю конечно, если вдруг кому и понадобится можно и поддержать в basic , типа как rand usr 15619:rem bla-bla-bla); так же хотим иметь возможность запуска одной и более программ в памяти одновременно, хотим переключения между ними.
Я думаю, что проблема во многом еще и втом, что мало кто представляетчто именно нужно, что именно необходимо. Говорят, необходимо поступить так-то так-то, как на платформе той-то. Но не будем забывать, что каждая платформа уникальная и то, что, к примеру, пригодно для С64 по каким-то уникальным аспектом не пройдет на Спектруме. Да, необходимо учитывать опыт, но работать надо в сторону своих, спектрумовских интересов. У Спектрума, на мой взгляд, основная "железная" проблема - это обилие различных вариаций схем, откуда, как я уже говорил, чрезмерное обилие стандартов. Поэтому и ОС необходимо ориентировать на сглаживание этих неровностей... Разве это не часть "постановки проблемы"?
Если мы справимся с этим аспектом (предусмотрение в ОС менеджера памяти, ориентированного на работу с драйвером памяти, в принципе подробная концепция изложена на соответствующей теме раздела), то уже тогда можно с помощью модульности и открытости подулючать hdd, реализовывать tcp/ip-стек, и т.д.

решения два: либо мы переписываем TR-DOS, BASIC и еже с ними (геморно, нудно, долго - но зато будет совместимо со страрым веком ),
либо мы посылаем всё к черту и пишем так как думаем с возможной эмуляцией среды для особо привязванных (программ и игр). Хотя я думаю что если программа ценна то её можно и отучить от того же ПЗУ. Но как мне кажется для новой ос - будут и новые программы...
Проблематично, на мой взгляд. Я думаю, вполне можно пойти путем, предлагаемым SfS, читай раздел "Менеджер памяти", там выложена интересная концепция.

Ronin
28.03.2005, 14:24
Мы находимся в "гудке", причем полном :rolleyes: на данном этапе у нас есть бейсик48, чуть расширенный 128й и эмулятор кассетных образов на диске ! - TR-DOS (именно с этой целью он и создавался)


хотим придти? хотим возможность доступа к HDD и CD-ROM, как на уровне выбора начальной загрузки, так и произвольный доступ к файлам (не знаю конечно, если вдруг кому и понадобится можно и поддержать в basic , типа как rand usr 15619:rem bla-bla-bla); так же хотим иметь возможность запуска одной и более программ в памяти одновременно, хотим переключения между ними.

решения два: либо мы переписываем TR-DOS, BASIC и еже с ними (геморно, нудно, долго - но зато будет совместимо со страрым веком ),
либо мы посылаем всё к черту и пишем так как думаем с возможной эмуляцией среды для особо привязванных (программ и игр). Хотя я думаю что если программа ценна то её можно и отучить от того же ПЗУ. Но как мне кажется для новой ос - будут и новые программы...

судя по тому "где мы" и "куда хотим прийти", все опять забыли про IS-DOS :D
чего жутко не хватало(ет) исдосу - нормального менеджера памяти. ну да ладно.

А вообще все тут говорят - разные схемы бла-бла-бла. но при этом вообще без оси под дырдосом пишут работающие проги, имея в качестве траблов только memory>128k. короче мысль в том что все эти отличия схем - несущественны, для ОС, на память - менеджер памяти, на диски - драйвера, и все будет работать. Никакой Спек не "особенный", все то же что и для других, тут работать будет. и более того - под исдосом ВСЕ это работает вполне корректно и удобно. вот только память там через одно место...

мысль номер два - отличия базовых архитектур минимальны, а вот перспективных и потенциальных (для которых ОС вроде как и планируется) - существенны, и вот именно БУДУЩИЕ архитектуры и должна корректно поддерживать ОС, даже пока они нам и неизвестны. Т.е. ВМЕСТЕ с ОС надо думать о новом железе (а вот вопрос его целесообразности, вернее экономической хотя бы неубыточности - под вопросом)

мысль номер три - блин забыл, пока думал первые две ;)

Ronin
28.03.2005, 14:30
а, мысль номер три :) - пора бы обоснованно отваливать местами от асма к тому же си например. Культура программирования, например, структурность и тп, на асме нулевая (хотя тоже возможна). Т.е. пора бы серъезно задуматься о модульности, структурности и ЯВУ.

Vladimir Kladov
28.03.2005, 15:54
а что, уже появился приличный C для Z80?
а если в асм добавить IFcond ... ELSE ... ENDIF (кстати в некоторых вариантах асма это даже макросами можно сделать), то код получается вполне даже блочный. Если еще и PROC / EPROC есть, который позволяет ограничивать область видимости локальных меток, то вот вам и модульность. Не ожидаю особой радости от применения ЯВУ на спеке.

GriV
29.03.2005, 10:56
Здесь уже пролетал совет (в треде про менеджмент памяти), про то что прежде чем дискутировать на тему, желательно вообще то говоря в теме разбираться.

В любой нормальной книге по ОСям имеется чёткое разделение: для чего нужны ОСи, почему они создаются так, а не иначе.
Каждая ОСь создаёт т.н. виртуальную машину, которая позволяет абстрагироваться от особенностей вашей реальной (физической) машины.
Пример: пусть у вас на машине имеется N-ое количество памяти для работы программ. Тогда за счёт возможностей ОСи (вариант с файлом подкачки) количество доступной для приложения памяти увеличивается.

Учёт особенностей физической машины целиком ложится на плечи ОСи (именно поэтому в рассмотрении треда про менеджмент памяти я говорил что некоторые моменты абсолютно безразлично как реализовывать), виртуальная же машина, которая представляется для работы приложений/программ зависит только от версии ОСи, как правило чем выше версия ОСи, тем шире возможности виртуальной машины.

Теперь по задачам.

Задача, которая ставится вообще - создание нормальных средств разработки ПО и залог развития Speccy как платформы с средствами разработки.
Подзадачи: разработка ОСи, ЯВУ (языков высокого уровня)

Т.е. написание ОСи нужно не само по себе (не как самоцель) а как подзадача создания комфортного общения пользователя/программиста с компьютером.

Любое ядро ОС состоит из двух компонентов:
- Менеджер задач (даже для однозадачных систем)
- Менеджер памяти
Т.о. главное для любой ОСи - написать её ядро (менеджеры задач и памяти)

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

Т.о. именно за счёт специфики общей модели Спектрума разработка менеджера памяти и менеджера задач должна вестись параллельно с разработкой всех остальных частей системы (драйверы устройств вввода/вывода).

GriV
29.03.2005, 11:00
1.Описание проблемы (где мы находимся)

Проблема в отсутствии единой среды разработки и единой среды пользования для компьютера ZX Spectrum любой модификации.


2.Цели разработки (куда мы хоти придти)

Хоти придти к созданию указанных средств.


3.Предлагаемое решение (путь)

Решение - создать многозадачную ОСь, создать ЯВУ (по крайней мере Си).

GriV
29.03.2005, 11:04
1. Физический уровень - драйвера
2. Системный уровень - виртульная машина
3. Пользовательский уровень - консоль/GUI и т.д.

Физический уровень написать несложно (память, FDD, HDD и т.д.)
Пользовательский уровень конечен и вообще говоря пока не важен.
Системный уровень - его собственно и предстоит разработать.

P.S. К уровням не придираться, упростил.

Ronin
29.03.2005, 12:34
Задача, которая ставится вообще - создание нормальных средств разработки ПО и залог развития Speccy как платформы с средствами разработки.
хотел бы отметить что развитие как платформы - в первую очередь аппаратное развитие. т.е., да, таки нет в базовой конфигурации ни таймера на нми, ни хорошей схемы управления памятью. НО если мы рассматриваем развитие - то должны ОЧЕНЬ сильно учитывать существование хотя бы eZ80 (про возможность работы параллельно с ним на периферии скажем ARM или TI пока вообще молчу, а хотелось бы единую среду вобще-то), а там управление памятью несколько иное (24-битное)


Т.е. написание ОСи нужно не само по себе (не как самоцель) а как подзадача создания комфортного общения пользователя/программиста с компьютером
и с тем кто эти компьютеры разрабатывает/производит, if будут таковые ;)


Проблема в отсутствии единой среды разработки и единой среды пользования для компьютера ZX Spectrum любой модификации

любой МЫСЛИМОЙ модификации тогда уж :-)))))))))

проблема в том, что сначала нужно определить, на какую модель аппаратной архитектуры ориентироваться. если сильно абстрагироваться, то вообще можно занятся портированием *никсов, только результатом будет тормоз и масдай. если же сильно привязаться к архитектуре, результатом будет торможение аппаратного развития платформы. т.е. проблема по-большому счету в том, каким мы видим будущее ZX и какой вообще дорогой идем, товарищи. пока что мы топчемся на месте вокруг да около архитектуры ZX-128k...

но это пожалуй тема отдельного топика...

dwt
29.03.2005, 14:20
Мы опять начинаем лезть, извиняюсь, в какие-то филологические дебри, которые можно квалифицировать как лишь "розлагольствования".
Давайте будем немного конкретнее.
Да, действительно, система должна быть таковой, чтобы любая техническая инновация в Спектруме не повлекла за собой рок для ОС. Но все дело в том, что нам необходима и архитектура, так сказать "сегодняшнего" дня, которой, если можно так сказать, зачастую, действительно не хватает нормальной ОС. Однако, "открытость" архитектуры самой ОС должна предусматривать действительно гибкость во всех аспектах и, наверное, должна предусматривать "перестройку внутренней архитектуры и структуры", а для этого, необходимо именно минимальное ядро, инкапсулированные (закрытые для вмешательства) элементы которого при определенных обстоятельствах также могут подлежать "замене" без всяких последствий для совместимости.

GriV
29.03.2005, 14:56
Мы опять начинаем лезть, извиняюсь, в какие-то филологические дебри, которые можно квалифицировать как лишь "розлагольствования".
Давайте будем немного конкретнее.
Да, действительно, система должна быть таковой, чтобы любая техническая инновация в Спектруме не повлекла за собой рок для ОС. Но все дело в том, что нам необходима и архитектура, так сказать "сегодняшнего" дня, которой, если можно так сказать, зачастую, действительно не хватает нормальной ОС. Однако, "открытость" архитектуры самой ОС должна предусматривать действительно гибкость во всех аспектах и, наверное, должна предусматривать "перестройку внутренней архитектуры и структуры", а для этого, необходимо именно минимальное ядро, инкапсулированные (закрытые для вмешательства) элементы которого при определенных обстоятельствах также могут подлежать "замене" без всяких последствий для совместимости.

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

GriV
29.03.2005, 15:07
хотел бы отметить что развитие как платформы - в первую очередь аппаратное развитие. т.е., да, таки нет в базовой конфигурации ни таймера на нми, ни хорошей схемы управления памятью. НО если мы рассматриваем развитие - то должны ОЧЕНЬ сильно учитывать существование хотя бы eZ80 (про возможность работы параллельно с ним на периферии скажем ARM или TI пока вообще молчу, а хотелось бы единую среду вобще-то), а там управление памятью несколько иное (24-битное)

Здесь есть множество возражений: любое развитие аппаратной части происходит иммено из-за "завышенных" потребностей к железу от ПО. Мировая практика показывает это. Потом, я бы порекомендовал тебе повнимательней читать все сообщения в этом треде - в виртуальной машине тебя не будут волновать ни таймеры ни память - ничего.
А про eZ80 ARM TI (вначале бы объяснил что это такое - мне например непонятно), все эти тонкости и лягут на плечи системы. Про 24 бита вообще выглядит как бред, это уже не спектрум...


и с тем кто эти компьютеры разрабатывает/производит, if будут таковые ;)

Такие есть и будут, и у них при этом будет очень хорошая мотивация для развития железа, так как теперь оно действительно нужно.
Раньше с развитием железа (повышение частоты, увеличение памяти и т.д.) принципиально ничего не менялось (всё и так работало). Теперь же есть резон: нужна быстрей память, нужен быстрей процессор, нужен быстрей носитель и т.д.


любой МЫСЛИМОЙ модификации тогда уж :-)))))))))

проблема в том, что сначала нужно определить, на какую модель аппаратной архитектуры ориентироваться. если сильно абстрагироваться, то вообще можно занятся портированием *никсов, только результатом будет тормоз и масдай. если же сильно привязаться к архитектуре, результатом будет торможение аппаратного развития платформы. т.е. проблема по-большому счету в том, каким мы видим будущее ZX и какой вообще дорогой идем, товарищи. пока что мы топчемся на месте вокруг да около архитектуры ZX-128k...
но это пожалуй тема отдельного топика...

Вот уж точно имеет тебе смысл про ОСи почитать общие обзоры... чтобы *nix'ы были тормозами и mustdie... :D да тебя любой системщик засмеёт.

Хорошо, пусть не *nix-интерфейс, тогда что ты предлагаешь?

dwt
29.03.2005, 15:26
Согласен, если есть какие то возражения по существу, пожалуйста, приводите схемы, рисуйте диаграммы, стройте графики и показывайте изменения, которые повлекут (плюсы и минусы).
Критиковать же просто без всяких выводов, дополнений и пр. может каждый...
Да мое высказывание о приближающейся тупиковости и этой темы касалось не Вас, GriV. И говорить конкретно я призываю уже который раз!!! Да, сегодня я постараюсь выстроить свое предложение (КОНКРЕТНОЕ предложение) концепции, чтобы не быть голословным. И если другие будут не против, предоставлю ее для обсуждения.

GriV
29.03.2005, 16:00
предполагается стандартная архитектура (вплоть до ZX16).
1. Вытесняющая многозадачность использует прерывания второго рода. Все задачи работают при включенных прерываниях
2. Имеется монопольный режим (отключаются прерывания второго рода или запрещаются прерывания вообще) - в простейшем случае инициализируется командой запрета прерываний, нормально должен быть разрешён системой. Область применения: драйверы блочных устройств, режим совместимости
3. Каждая задача имеет отдельный стек, отдельный heap и т.д.
4. Менеджер задач для каждого процесса выделяет структуру:
4.а) Регистры (в том числе стек)
4.б) Приоритет
4.в) Текущее значение приритета (накопительная часть приоритета)
4.г) Точка прерывания
4.д) Флаги процесса
4.е) Индексы используемых файлов
4.ж) и т.д.

Ronin
29.03.2005, 16:52
Про 24 бита вообще выглядит как бред, это уже не спектрум
это не бред, а реальный проц Zilog (eZ80), наиболее логично развивающий концепции Z80, 8 бит данных и 24 бит на адрес. про ARM, TI вообще забудьте.


Потом, я бы порекомендовал тебе повнимательней читать все сообщения в этом треде - в виртуальной машине тебя не будут волновать ни таймеры ни память - ничего
ну вот, а чуть выше говорилось, что де нужно обращать внимание на структуру однооконного отображения памяти в zx128. ну да, понятно виртуальная машина и бла-бла-бла. но приведу простой пример - вы сделали поддержку страничного управления памятью с дискретностью 16к (например), а в Z180 (и вообще многих Zilog процессорах) этот шаг принят 4к - итог - несоответствие - потеря эффективности, если вообще возможна работа.
т.е. это относится не к теории виртуальной машины, а к тому как эта машина спроецируется на аппаратные архитектуры.


Вот уж точно имеет тебе смысл про ОСи почитать общие обзоры... чтобы *nix'ы были тормозами и mustdie... да тебя любой системщик засмеёт
давайте тогда портируем линух на z80 3.5mhz и все, чего тут шума нашумели-то :D

Знахарь
29.03.2005, 17:28
Народ!

А где те, кто уже занимался подобными вопросами ?
Давайте спросим у них - пусть чего умного скажут :)

Vitamin что-то когда-то делал. Очень толковое, кстати.

Aqua OS кто делал ? DOORS ? NEOS ?

Может они чего посоветуют умного ?

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

Мне, как разработчику хочется, о чем уже говорили: ram manager и файлы.

Вот, кстати в BGE что-то было интересное. Да, это граф редактор и тут ни при чем, но в нем именно реально и неплохо (по скорости, простоте, доступности) реализованы некоторые вещи.

Работа с курсором - отлично
Система прерываний - хорошо. Можно и di:halt и просто к уже имеющемуся обработчику можно присосаться. Это же надо и в оси.

Потом вопрос прошивать ли такую ось в ПЗУ ? Скажем теневое ? Как NEOS ? Есть куча плюсов. Быть может главный - защищенного режима аппаратного нет - значит чуть что не так - всё накрывается. А так, можно сказать, хоть какая-то защита от затирания ядра оси в памяти.

GriV
29.03.2005, 17:49
система точно хранится не в ПЗУ. Система должна запускаться даже на 48К а там уж точно нет теневого ПЗУ. В крайнем случае это может быть 128BASIC, но тогда жертвуется парк 48к машин...
Ядро настраивается под тот тип, которые использовать наиболее оптимально.
Минимальным (самым неоптимальным) ограничителем является 48К машина.
От затирания (кстати это чисто техническая деталь) ни одна система не защищена.
Для защиты предлагается как раз использовать два типа приложений: классические (не под ОСь) и оптимальные (специально написанные под ОСь). Последние чисто технически будут ограждены от того, чтобы испортить систему...

Ronin
29.03.2005, 17:51
значит чуть что не так - всё накрывается
винт нас спасёт куда лучше чем ПЗУ.
слетел - перезагрузись (пару сек).

dwt
29.03.2005, 17:55
винт нас спасёт куда лучше чем ПЗУ.
слетел - перезагрузись (пару сек).
Винт не вписывается в концепцию минимального ядра... Это модуль "extern". На мой взгляд, конечно....

GriV
29.03.2005, 17:56
в ПЗУ это чтото не то, сами посудите как надо обновить версию ядра, то надо бежать искать программатор, программировать, а у кого то ПЗУ жёстко запаяно, а как быть владельцам скорпионов, у которых на ПЗУ вся оснастка лежит?

random
29.03.2005, 18:12
скажем так, с самого начала подразумевалась доработка когда можно в страницу с адресом 0 вписать страничку ОЗУ. если уже сейчас начались вопросы по второму кругу, то надо однозначно создавать ФАК и прибивать гвоздями в этом разделе.

Знахарь
29.03.2005, 18:14
Вот. Значит вывод: в ПЗУ не шьем ?

Griv, ну как ты на ПЦ, к примеру, просто так затрешь ось ? Там это аппаратно невозможно. А тут нужно аккуратненько и программно.

DWT прав. Винт - довесок. К нему надо кучу софта, но опять :( на ПЦ с винта грузиться или не с винта - пофиг. Верно ? А в нашем случае это целое дело! И тут опять как и с ПЗУ: у кого он есть, у кого его нет :( Думаем. Я с винтом не работал на ZX :( Может, кстати с него и можно грузиться как с дискты сразу после ресета. Тогда это уже гораздо лучше. Тогда, как в ПЦ boot сектор какого-то стандарта. и прога смотрит чего откуда и как грузить дальше: хоть linux хоть macOS :))))

Знахарь
29.03.2005, 18:24
Так, страничку ОЗУ с 0 ? Слушайте, народ... А как вообще кто себе представляет процесс загрузки ОСИ ну и по порядку. ? Т.е.

1. reset
2. с адреса 0 начинает работать.... 128 basic ?
3. из TRdos грузим boot - ОСЬ ?
4.

или как ?

GriV
29.03.2005, 19:37
идёт следующими этапами.
Оговорка: первоначальная загрузка ОСи должна осуществляться хоть с магнитофонной ленты, поэтому привязка к версии ПЗУ должна быть минимальная.

1. Включение компьютера (аппаратный сброс, RST 0)
2. Загрузка первичного ядра системы в память
3. Первичное ядро производит самоорганизацию в зависимости от того, что имеется в распоряжении (память, FDD, HDD и т.д.)
4. Происходит уничтожение первичного ядра и инициализация системного ядра
5. Загрузка интерфейса (консоль или GUI)
6. Собственно всё :)

Знахарь
30.03.2005, 15:22
Хорошо. Т.е. грузится типа обычный boot стандартными средствами ? Ось висит в ОЗУ как всяка прога, не юзает ПЗУ и полностью напрямую работает с периферией своими средствами ? А сколько она тогда будет жрать памяти ? И как удобно станет кодить ?

Conan
30.03.2005, 18:56
Выскажу свои мысли (правда кое-что я подглядел у других).

Три подхода (концепции) к созданию ОС:



Demo-подход.

1.Много всего сделано вокруг, но мне ничего не нравится, а самое главное среди этого нет моего или оно не самое крутое.

2.Хочу самореализоваться, занять место на пати, прописать свое имя… ну, в общем, что бы все удивились, и было круто.

3.Делаем что-то, что называем ОС. Она должна быть многозадачной, многопоточной, многоуровневой, многооконной, многоплатформенной, и еще много-много всего. Работать это должно не обязательно, главное обозначить. Затем выкладываем очередной макет (круто оформленный) на всеобщее обозрение и забываем про это дело навсегда. Какое то время все в отпаде.



iS-DOS-подход

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

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

3.Собирается команда единомышленников (как правило, на коммерческой основе) и начинает многолетний труд. В процессе реализации приходится идти на массу компромиссов и упрощений. В результате получается OC пригодная для работы с десятком не самых лучших приложений, созданных специально под нее и некоторым количеством портированных игр. Заканчивается все, так же как и с iS-DOS, только намного быстрее, ибо на руках реальных пользователей нет прежнего кол-ва Speccy, а данная ОС делает невозможным запуск большинства игр или Demo. Да и оплачивать труд разработчиков никто не торопится.



Подход супер-загрузчика

1.Есть определенная модель Speccy (клон), у которого масса всяких наворотов в железе, да только вот используются они все разрозненно или не поддержаны вообще.

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

3.Создаем супер-коммандер с поддержкой HDD, CD и DVD. Забываем про многозадачность и универсальность, зато почти не теряем в совместимости. Такой коммандер живет очень долго (пока жив клон), но не получает сколько ни будь широкого распространения. Даже эмуляторщикам он не очень интересен, поскольку у них уже есть доступ к HDD, CD и DVD и масса других удобств.



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



Если вы знаете о других подходах (уже имевших место быть или реализуемых), поделитесь этими знаниями. Думаю, всем будет интересно.

random
31.03.2005, 00:41
комбинация из частей:
демо 1 и 3
isdos 2 и 3 (разница не в годах, а в человеко-часах)
супер 2

повторяю, не все целиком, только некоторые моменты с которыми я согласен.

Знахарь
31.03.2005, 12:43
Соглашусь с IS-DOS походом! Конан, давай!

Знахарь
31.03.2005, 12:50
Я только не пойму, Конан, ты реалист или пессимист :)

Conan
31.03.2005, 13:27
Соглашусь с IS-DOS походом! Конан, давай! Бери сколько хочешь:
http://trd.speccy.cz/sbor/is-dos/ISDBASE1.ZIP
http://trd.speccy.cz/sbor/is-dos/ISDBASE2.ZIP
:wink:


Я только не пойму, Конан, ты реалист или пессимист :)Оптимист :wink: - иначе не читал бы километровые треды в надежде на то, что хоть немногое из описанного будет реализовано на практике.

ukms[z]
04.04.2005, 23:40
как насчёт драйвер-ориентированой трдос ?
концепт такой :

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

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

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

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

captain cobalt
05.04.2005, 06:16
Замечательно.
Только это скорее не "драйвер-ориентированная" а "модульная" система.

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

acidrain
05.04.2005, 12:59
зачем группы? неужели работа в текущем режиме невозможна? вообще мне очень не нравится идея что ограниченная группа людей беседует между собой и потом вдруг публикуют документ и последующие комментарии (особенно если они затрагивают архитектурные вопросы) игнорируются под предлогом "нам влом все переделывать" или встречаются в штыки.

особенно для операционной системы.

Нет, не возможно. Это тот же вопрос, что и "почему на виду у прохожих не занимаются сексом?". Вы где нить видели комп или ось созданную в форуме? Нужен лидер и четкая координация. А здесь мы можем высказать лишь свои предположения и желания =)

ukms[z]
05.04.2005, 19:48
Замечательно.
Проблема - разные видеорежимы иогут иметь разное пиксельное и цветовое разрешение, а также пиксели разной степени неквадратности.

где ? не вижу проблемы :) разрабатывается стандарт общения с драйвером экрана, что-то типа zx-gl и всё. остальное - проблемы драйвера и чела его написавшего. разве мы могли в далёком 91 году подумать о том что сейчас видим в демках ?

random
06.04.2005, 08:40
Нет, не возможно. Это тот же вопрос, что и "почему на виду у прохожих не занимаются сексом?". Вы где нить видели комп или ось созданную в форуме? Нужен лидер и четкая координация. А здесь мы можем высказать лишь свои предположения и желания =)
я видел несколько операционных систем созданных группой лиц, где не было ограничения в распространении информации наружу и приема комментариев извне. лидер нужен, это однозначно. но он не должен ограничивать команду, а просто _РАБОТАТЬ_ как менеджер проэкта. пока я здесь специалистов такого профиля НЕ ВИДЕЛ.

GriV
07.04.2005, 20:31
я видел несколько операционных систем созданных группой лиц, где не было ограничения в распространении информации наружу и приема комментариев извне. лидер нужен, это однозначно. но он не должен ограничивать команду, а просто _РАБОТАТЬ_ как менеджер проэкта. пока я здесь специалистов такого профиля НЕ ВИДЕЛ.

Возьму на себя роль менеджера и лидера :D

random
07.04.2005, 21:27
предъявите список и результаты вашей работы в такой роли в прошлом, пожалуйста.

GriV
07.04.2005, 21:54
предъявите список и результаты вашей работы в такой роли в прошлом, пожалуйста.

нет такого :)
А можно ко мне и на "ты" я не обижусь :)

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

Писал (и пишу) на Pascal, не писал (в смысле очень мало было), но могу писать на С, пожалуй на том мой программисткий опыт исчерпывается.

Если насчёт организационной деятельности, то опыт есть, хоть и не очень большой.

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

В данный момент нахожусь в активном сотрудничестве с Vitamin'ом, работаем над развитием системы.

random
07.04.2005, 22:45
поверь я ничего против тебя не говорю, просто при выдвижении своей позиции неплохо было бы ее еще аргументировать.

к сожалению, навыки программирования тут играет очень маленькую роль, необходим именно менеджер устанавливающий задачи и сроки, занимающийся поиском и назначением людей на тот или иной участок работы, постоянно находящийся в курсе дел КАЖДОГО участника работы, составляющий и компилирующий техническую и организационную документацию по проэкту и еще очень много обязанностей.

это огромный труд и если нет опыта в этом весьма сложном деле, то легко наделать ошибок или не делать эту работу добросовестно. результат (и время разработки) всего проэкта более чем на половину зависит от этого человека и именно ОН будет в ответе если проэкт провалится.

готов ли ты взять на себя эту ношу? есть ли у тебя достаточное количество свободного времени? хватит ли у тебя энтузиазма серьезно работать над этим ДО КОНЦА?

(вопросы не только Griv'у, а вообще всем кто желает взять на себя эту важную роль).

GriV
07.04.2005, 22:57
только настолько серьёзно даже менеджеры очень серьёзных организаций не работают...
Работать я готов, но по крайней мере то что ты меня не поддерживаешь, для меня уже показатель моего для тебя авторитета (ничего личного).
Аналогично и для остальных.
Вот с витамином мы нашли общий язык, разговаривал я и с Dwt - по основным позициям мы с ним тоже имеем общий курс, общаться я могу только через Internet и связанные с ним службы, хотя далеко не всегда конечно, просто график работы у меня очень сложный.
Хочется чтобы все те люди, которые раньше работали над системами отбросили свои "принципы" или как там ещё это назвать и пришли в команду.
Всё своё оставшееся после работы время я готов тратить на проект, однако сделать такую работу только одному (только мне вместе с витамином и Dwt) совершенно не реально.
Почему бы тебе не подключиться?
У тебя ведь тоже есть наработки, есть свои мысли и т.д., ты бы хотя бы своим своевременным словом помог.

GriV
07.04.2005, 23:01
']как насчёт драйвер-ориентированой трдос ?
концепт такой :

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

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

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

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

Это уже будет не TR-DOS, а что то другое
И совместимости здесь тоже не будет.
Проще на самом деле новый обработчик DOSa написать чем TR-DOS коверкать...

ukms[z]
08.04.2005, 00:04
Это уже будет не TR-DOS, а что то другое
И совместимости здесь тоже не будет.
Проще на самом деле новый обработчик DOSa написать чем TR-DOS коверкать...

во первых - почему не трдос ? хотя да, это будет vtr-dos.
во вторых - это почему ещё не будет совместимости ? старый софт просто не использует новые возможности. все старые остались. зато для автора новой программы нет никакой возни с драйверами верхней памяти - пользуй уже загруженный и не парься. или мыши. или ат клавы. или модема. чего тут думать-то ? на мой взгляд это самый реальный и доступный путь развития спека. не 128-го конечно. он есть вешь в себе и все его возможности давно использованы полностью.

GriV
08.04.2005, 00:17
']во первых - почему не трдос ? хотя да, это будет vtr-dos.
во вторых - это почему ещё не будет совместимости ? старый софт просто не использует новые возможности. все старые остались. зато для автора новой программы нет никакой возни с драйверами верхней памяти - пользуй уже загруженный и не парься. или мыши. или ат клавы. или модема. чего тут думать-то ? на мой взгляд это самый реальный и доступный путь развития спека. не 128-го конечно. он есть вешь в себе и все его возможности давно использованы полностью.

А ты начни перерабатывать.... Точки входа поплывут, начнётся копание-ковыряние... в общем ты просто начни и поймёшь....

Looker
08.04.2005, 03:23
Нет, не возможно. Это тот же вопрос, что и "почему на виду у прохожих не занимаются сексом?".

таа че там :):) лично я недпавно зпанимался :) прямо на видуу. сорри за повт. бцуквы - йя пьян

ukms[z]
09.04.2005, 08:22
А ты начни перерабатывать.... Точки входа поплывут, начнётся копание-ковыряние... в общем ты просто начни и поймёшь....
:) я уже закончил :)
и это уже работает :)

acidrain
14.04.2005, 23:55
я видел несколько операционных систем созданных группой лиц, где не было ограничения в распространении информации наружу и приема комментариев извне. лидер нужен, это однозначно. но он не должен ограничивать команду, а просто _РАБОТАТЬ_ как менеджер проэкта. пока я здесь специалистов такого профиля НЕ ВИДЕЛ.

Фух, а я уж подумал, что ты видел, как люди занимаются ... =). Знаешь, прошло около месяца, а воз и ныне там. Поэтому команду _НАДО_ ограничивать. Поверь, я знаю толк в менеджменте (модное слово), не спрашивай откуда - не расскажу - это реальная жизнь, а здесья отдыхаю.
Поэтому, считаю, что надо для начала определить цели и задачи, а потом уж советоваться с народом.
Или опять получиться все через зад.

acidrain
15.04.2005, 00:04
таа че там лично я недпавно зпанимался прямо на видуу. сорри за повт. бцуквы - йя пьян
И что намано получилось? Помошники не подходили? ;)))
Думаю здесь не место обсуждать эту тему =)

acidrain
15.04.2005, 00:05
]я уже закончил
и это уже работает

Делись =)

random
15.04.2005, 11:28
... Поверь, я знаю толк в ...

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

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

ограничением команды ты не исправишь главную причину "недвижимого воза", у народа не появится магически дополнительное время. а в ограниченой команде общее количество свободного времени по определению ОГРАНИЧЕНО.

цели и задачи как раз таки уже определены, но нет:
ТЗ,
менеджера,
организационной силы,
команды (сплоченной),
свободного времени.

если я не прав, то, пожалуйста, по пунктам. и без "поверь".

acidrain
15.04.2005, 12:12
лично для меня, ты одним этим выражением добился того чтобы я всерьез твои слова не воспринимал. когда человек спускается до такого уровня "аргументов", это полный абзац, имхо.

Дружище, знаешь, иметь собственное производство и управлять коллективом из 15 человек - для тебя не аргумент? Тогда, уволь...
Знаешь я в перерыв, успеваю делать кучу дел, не говоря о том, что писать тут и обедать. А свободное время чаще бывает, когда дочь и жена спать ложаться. =) Так что о свободном времени и правильном его расходовании мне не указывай, ок?
Ту глуп или как? :)Я не говорил, что установить ограничения и все, я сказал:
что надо для начала определить цели и задачи
Добавлю - дружная комманда с одной целью, залог успеха.
Еще разжевать? :mad:

acidrain
15.04.2005, 12:53
цели и задачи как раз таки уже определены, но нет:

Где расписанные пунктики, так сказать бизнес план? Тут каждый пишет то, что он хочет. Вот у тебя времени достаточно? Если да, то набросок плана в студию =)

ukms[z]
15.04.2005, 14:46
Делись =)
терпение :)
большой финальный релиз будет на сайте максагора.

random
15.04.2005, 14:51
батенька, сбавьте пыл. то что вы называете цели и задачи, я называю ТЗ.
никаким образом ВАМ советовать про ВАШЕ свободное время я не намеревался, увольте.
ваши личные дела меня тоже как-то слабо волновали, мои слова были реакцией на ваш позыв "поверь".

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


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

да, я об этом уже писал конечно.

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

GriV
15.04.2005, 15:22
Дружище, знаешь, иметь собственное производство и управлять коллективом из 15 человек - для тебя не аргумент? Тогда, уволь...
Знаешь я в перерыв, успеваю делать кучу дел, не говоря о том, что писать тут и обедать. А свободное время чаще бывает, когда дочь и жена спать ложаться. =) Так что о свободном времени и правильном его расходовании мне не указывай, ок?
Ту глуп или как? :)Я не говорил, что установить ограничения и все, я сказал:
Добавлю - дружная комманда с одной целью, залог успеха.
Еще разжевать? :mad:

Я так считаю что 15 человек не очень большой коллектив и аргументы твои плюшевые.
А как менеджер я тебе точно скажу, что командный дух воспитывается не похлопыванием по плечу, а очень сложной и нудной работой, которую тем не менее надо делать, и вот как выполнишь работу - так и будет тебе и командный дух и бутылочка пива...
Согласен с RANDOM что надо определяться что надо то...
И ещё, будь повежливей в форуме, в правилах написано что запрещается опускаться до взаимных оскорблений.

CHRV
15.04.2005, 15:40
']терпение :)
большой финальный релиз будет на сайте максагора.
И у пользователей реальных АТМ :wink:, если они захотят!

acidrain
15.04.2005, 22:15
Я так считаю что 15 человек не очень большой коллектив и аргументы твои плюшевые.
А как менеджер я тебе точно скажу, что командный дух воспитывается не похлопыванием по плечу, а очень сложной и нудной работой, которую тем не менее надо делать, и вот как выполнишь работу - так и будет тебе и командный дух и бутылочка пива...
Согласен с RANDOM что надо определяться что надо то...
И ещё, будь повежливей в форуме, в правилах написано что запрещается опускаться до взаимных оскорблений.
оскорблять никого не собирался. А коллектив маленький, но могучий - позасовывал гораздо более крупных конкурентов за пояс %).
Если Вы считаете, что я оскарбил кого-то, то приношу свои извинения.
А про аргументы, если интересно, могу еще много рассказать, но в личной переписке. И не доказывал я ничего. Пытался указать на то, что еще здесь не было сделано. Помнится, кто-то выдвигал свою кандидатуру, так думаю все ТЗ, выражаясь принятым здесь языком, надождать с его стороны.
Думаю мы все поняли др др?

SonOD
04.07.2005, 01:25
Блин, докатились до элементарного флуда !!! А как всё хорошо начиналось. :cool:

Dima_ZX
14.12.2005, 18:49
Тут как-то вопрос поднимался что нету мол таймера на NMI, для полноценного написания полноценной оси и так далее, почему бы не придумать некую платку которая в слот вставляется, на этой платке будет допустим Flash-ROM где будет BIOS нашей супер ОС, который будет при подклячаться вместо основной ROM при включении компьютера, так-же на этой платке разместить прокраммируемый таймер, может быть какой-нибудь сопроцессор, где то на форуме пролетала идея о создании что-то вроде сопроцессора для TCP/IP стека. Так как размеры платки могут быть побольше то сразу можно предусмотреть контроллер DMA, USB или еще что нибудь, диспетчер контроллера за исполнением программ в RAM например, и тогда некоторые вопросы поднятые вверху отпадут сами собой. И при этом подходе минимум переделок основной платы, практически единственная доработка это затенение системного ROM. При использовании Flash-Rom появляется возможность быстрой смены версии BIOS и не надо выпаивать и бегать за программатором.

geners
18.12.2005, 17:10
Вот смотрю на вас ,и понимаю почему вы некогда не будите довольны неодной оськой для спека - ВЫ ЕЕ ПРОСТО НЕ ХОТИТЕ ,ненужна она вам
И Платформа то загибается благодаря выкрикам "патриотов" что это все PCцизм и для спека нам ненадо
При этом все сарательно делают вид что им нужна новая ось .
Но при этом чтоб онабеспроблемно работала с тырдосом , и понимала все неаработаные стандарты ,которые ктстати уже давно и морально и физически устарели . Нельзя получить чегото нового не отказываясь от старого , а старое это ТРДОС и еже с ними . Любые нововедения воспринимаются в штыки , и это особенно поражает меня - ведь на этом самом сайте было сказано "Большенсво спектрумистов это эмуляторщики" дак не всели равно вам что деают реальщики
сидите за эмулями и геймитесь .
А теперь вывод - вы просто ленитесь боитесь работы ,нежелаете разрабатывать новый софт под новые оси ,вам лень изучать особенности новых систем - отсюда нет конкуренции !!!!
Поэтому спек обречен.
И пусть меня забанять ,или освистают - но это будет только потому что выше сказаное есть правда, какой бы она вам не представлялась.

ws_mason
19.12.2005, 06:15
Тыщу пятьсот раз прав. Нихрена не делается для всех. Делают для себя или в корзину.

CHRV
19.12.2005, 10:49
Тыщу пятьсот раз прав. Нихрена не делается для всех. Делают для себя или в корзину.
Так сказать между строк напоминаю что вышел релиз TASiS правда только под Турбо2+, по сути занимались только двое человек Юра Корсунин и Максагор.

Ну и конечно нельзя не заметить виртуалTRDOS для Турбо2+ - который позволяет загружать и сохранять TRD образы и работать с ними из под любой ОС на Турбо2+. ЧТо обеспечивает требование совместимости ОС с ТРДОС. Это расширение написал вообще один человек Юра UKMSz.

Так что все нормально делается когда есть нормальный руководитель который ведет проект (в нашем случае Максим Тимонин) и желание чтото делать полезное.

Максагор
19.12.2005, 15:44
Ну и конечно нельзя не заметить виртуалTRDOS для Турбо2+ - который позволяет загружать и сохранять TRD образы и работать с ними из под любой ОС на Турбо2+. ЧТо обеспечивает требование совместимости ОС с ТРДОС. Это расширение написал вообще один человек Юра UKMSz.


Ну, в случае с xBIOS/vTR-DOS я свою руку в качестве кодера тоже приложил. Хотя доля моего кода, ессно, посравнению с Юрой крайне минимальна. Но концепции того, что должно быть реализовано, выдвинутые мной и Юрой, осуществлены примерно в одинаковом количестве.

geners
22.12.2005, 19:20
господа и опять tasis - это для атмки а какже другие машины
получается - если хочешь работать в новой оси -покупай АТМ
както нехорошая реклама 6)

CHRV
22.12.2005, 20:36
господа и опять tasis - это для атмки а какже другие машины получается - если хочешь работать в новой оси -покупай АТМ
както нехорошая реклама 6)
А что еще какието клоны сейчас производятся?
Мы поэтому и затеяли эту ОСЬ в рамках большого проекта по продвижения нашего клона, что по моему очень неплохо. Было плохо если бы имея большие возможности нельзя было реализовать их...
Ну а в конце концов а что мешает пользоваться обычном ИзДОСом, а забыл - он же платный, а значит заподло :).

geners
23.12.2005, 13:46
ну на сколько я помню еще и скорпион -тока он довольно дорогой
ну а потом исдос не веход да и морально устарела
ктати пожклста у меня исдос купленый

CHRV
23.12.2005, 21:54
ну на сколько я помню еще и скорпион -тока он довольно дорогой
ну а потом исдос не веход да и морально устарела
ктати пожклста у меня исдос купленый
Тему нашу перенесли в железо, там я по поводу пенатгона опять прощелся :).
Это хорошо что купленный. Уважаю!

GriV
30.12.2005, 19:39
Тут как-то вопрос поднимался что нету мол таймера на NMI...

Вопрос вовсе не в платах, ты посмотри в разделе "железо" - Caro предлагал много вариантов - и для стека TCP и для мышки PS/2 и много чего другого, однако каждая из этих микрушек тянет карман и приводит к удорожанию и без того не такого-то дешёвого компьютера (просто поинтересоваться - сколько людей купили Пень-1024 или любой другой спектрум хотя бы за год - их очень мало и цена всё-таки является весомым фактором, ведь вы те же 2000 рур будете сравнивать с аналогичным компутером за те же деньги, но IBM-совместимым), если все прибамбасы навешать так получится цена бюджетного но СОВРЕМЕННОГО IBM-совместимого кмпьютера. И конечно, есть люди, которые будут всё равно железки паять к своему спекку, а прививать это как стандарт не получится (просто напросто здоровый скепсис) - уже не раз пытались и ни к чему не приводило это.


Вот смотрю на вас ,и понимаю почему вы некогда не будите довольны неодной оськой для спека - ВЫ ЕЕ ПРОСТО НЕ ХОТИТЕ ,ненужна она вам

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


Тыщу пятьсот раз прав. Нихрена не делается для всех. Делают для себя или в корзину.

вот и оно есть про что я писал абзацем выше - в корзину - это тот самый отказ от всех совместимостей - для себя - аналогично. Любая ОС должна быть поддержана - именно потому "счастливые" обладатели IBM-совместимых компьютеров ставят на нём Windows а не Unix и его клоны - программ коммерческих в разы больше, пиратского ПО больше, игрового (не-)пиратского ПО просто экслюзивно много. Ну написал автор супермегауникальную систему - и что? - опять же главное - поддержка. С этой точки зрения самым лучшим решением является iS-DOS (самая старая ОСь на спекке в которой на самом деле есть драйвера и вся оснастка, хотя есть и множество недостатков), самым практичным - TR-DOS - его функции вообще по сути обрезки, зато они работают из раза в раз - как в анекдоте про программиста - именно потому так и есть "где были там и остались".

Я сам начал писать менеджер памяти, однако опять же времени нет, хочется на спекке и другим заняться и т.д., я не один такой оттого проект и движется так "быстро".

ws_mason
03.01.2006, 15:05
Вот-вот вспомним BeOS. Ось надо писать под 128 спектрум с ТР досом и нефиг выеживаться. Хотя можно и круче, но тогда господа пишите сразу и асм и графредактор и еще что-то.

Umka
14.01.2006, 13:41
Я думаю, что новую ось надо писать с полного 0 и не добавлять поддержку старых программ, чтобы не усложнять ОС. Как тут уже писали, лучше старые программы адаптировать к новой ОС или вообще переписать их заново.

Также, ИМХО, не следует пытаться поддерживать Spectrum 48
Это тоже самое, как если бы Микрософт пыталась добавить в Windows XP поддержку 386 машин....

А если кому-то хочется поиграть в ретро-игры и т.д. - то добро пожаловать на радиорынок или любую другую барахолку, где за 50-100 руб. можно купить Spectrum 48

geners
17.01.2006, 14:50
2 umka
да некто не будет писать новую ось - это факт ,будут мутировать тоже isdos cp\m
и портированием некто не будет заниматься все хотят уже все готовинькое , причем уже с кучей прикладных прпограмм , которые сами не хотят писать

James DiGreze
20.01.2006, 12:06
офф: у меня на 386sx-33/ram-4mb работала win95 rus oem (lic.:))

в очередной раз скатились на флейм... жаль...
ws_mason, мы с тобой тоже на урну поработали неслабо... project thunder moon канул в лету. ты бы выложил здесь наработки по драйверам... я тож по архивам пороюсь. ведь и про ось задумывались :)

2 all. в качестве координатора поддерживаю кандидатуру GriV'a.
Могу оказать посильную помощь в написании модулей/подпрограмм, так как имею довольно богатый проф. стаж программёра.

Так же поддерживаю минимальную конфигурацию: ZX-16 с магнитофоном (may be, hardtaper?), хотя у самого kay1024, скоро будет винт...

ws_mason
23.01.2006, 07:10
"Громовую Луну" я выкладывал, только в теме про графику, про туториал по рисованию однобитной графики. В данный момент Спектрумом напрямую не занимаюсь, только слежу за новостями.

breeze
23.01.2006, 13:07
Мдя... теме уже скоро будет год :eek: а воз и ныне там, я уж не говорю про то что уже явно разговор пошел не по теме... :mad:

captain cobalt
23.01.2006, 14:15
Насколько я понимаю, основные технические вопросы рассмотрены. В настощее время все заинтересованные лица разделились на несколько групп. Гаждая группа разрабатывает свою ОС в соответствии со своими представлениями. Единой ОС не получится.

Vovoi
23.01.2006, 20:35
2Umka барахолку, где за 50-100 руб. можно купить Spectrum 48

А что не судьба 128й Спек переключить в режим 48?
:(
Как с 48го так и со 128го Спека прекрасно видна область памяти 49152-65535. Кроме того, есть область 32768-49152 как своеобразное "окно". Таким образом "система" (наипростейшая многозадачная управляющая оболочка) пойдет на обоих машинах. Преимуществом машины 128 является дополнительные банки памяти, которые будут отмечены сэтапом, наверное так.
CHRV как-то говорил, что чем придумывать как извернуться в кодах, проще сделать профессиональный загрузчик программ (бут-манагер). Поработал в графредакторе - сохранил картинку, вышел в манагер, запустил HTML-редактор - вставил картинку и т.д. Или вообще, по команде - минуя манагер вышел из одной проги в другую.

2genersда некто не будет писать новую ось - это факт ,будут мутировать тоже isdos cp\m

Почему же так? Впрочем писать, может быть, но ведь концепцию можно выложить? А кому понравится - реализует. Так ведь кроме Doors и Beeos ничего нет, никакой доки... почти. Я щас занят ПЦ-шной "дурью", после её обкатки примусь за Спека. Многое позабылось, так что сам механизм будет отлажен на ПЦ, а потом, потихоньку похожее будет написано для Спектрума (возможно 48/128 для ТР-ДОС) не обязательно мной, но другим кодером. В любом случае, документация на 40% подготовлена и будет выложена в сеть, а дальше - на любителя. Давайте смело глядеть вперед! Судя по всему некоторые форумовики сидят и ждут какую-нить сырую дему, чтиобы потом облаять её, не так ли произошло с красавицей Doors?
зы: по поводу "дури", могу выслать емылом демку, но она вряд ли заинтересует, это лишь частицы целого.

ws_mason
24.01.2006, 05:20
Я уже где-то писал... Если кто хочет продвинуть свою ось, то ему придется к ней написать еще и ассемблер + дебаггер, да чтобы покруче или, по крайней мере, не хуже чем лучшие из имеющихся. Оптимаьный вариант, к нему я и сам приходил, писать программу, например игру, так как буд-то она работает под управлением вашей, еще не написанной ОСи. Соответственно некоторые части программы, например работа с диском, писать как части ОС (так сказать задел на будущее). Только скорее всего получится просто набор более менее универсальных билиотек. Отсюда вывод -> писать надо ассемблер с дебаггером: получим и новый инструмент и зачатки ОСи.

CHRV
24.01.2006, 10:56
Я уже где-то писал... Если кто хочет продвинуть свою ось, то ему придется к ней написать еще и ассемблер + дебаггер, да чтобы покруче или, по крайней мере, не хуже чем лучшие из имеющихся. Оптимаьный вариант, к нему я и сам приходил, писать программу, например игру, так как буд-то она работает под управлением вашей, еще не написанной ОСи. Соответственно некоторые части программы, например работа с диском, писать как части ОС (так сказать задел на будущее). Только скорее всего получится просто набор более менее универсальных билиотек. Отсюда вывод -> писать надо ассемблер с дебаггером: получим и новый инструмент и зачатки ОСи.
Как я уже писал выше. Должна быть рабочая группа которая занимается Осью, причем должное быть достаточно жесткое руководство группой человеком который четко видит что нужно сделать, и может написать некое техническое задание (из присутствуещих я уже называл ранее кому это можно доверить).
Если этого не будет то естественно ничего не будет.

CityAceE
24.01.2006, 12:11
Должна быть рабочая группа которая занимается Осью
А я предлагал сделать отдельный невидимый раздел для подобной группы!

CHRV
24.01.2006, 12:33
А я предлагал сделать отдельный невидимый раздел для подобной группы!
Зачем невидимый, достаточно readonly для всех, а кто даст заявки тот сам попадает.
Breeze ты еще не раздумал взять руководство? ;)

geners
24.01.2006, 14:35
2 VOVOI
пришли пжаста демку

breeze
24.01.2006, 23:25
Breeze ты еще не раздумал взять руководство? ;)

мдя... даже и не знаю что сказать :( голова сейчас забита несколько другой проблемой, я одолжил крупную сумму и влетел... теперь вот думаю как отдавать... :o

CHRV
25.01.2006, 10:10
мдя... даже и не знаю что сказать :( голова сейчас забита несколько другой проблемой, я одолжил крупную сумму и влетел... теперь вот думаю как отдавать... :o
На автоматах чтоли прокрутил :). Шучу.
Ну у всех такие проблемы.

breeze
25.01.2006, 11:49
На автоматах чтоли прокрутил :). Шучу.
Ну у всех такие проблемы.

ну не думаю что каждый пытался открыть свою фирму, а у него воровали деньги :mad:

мдя... вот оно золотое правило! доверяй - но проверяй! и желательно почаще :(

зы: ладно! проехали! по возможности буду вносить свой вклад! но на team leader явно не потяну :( sorry!

Vovoi
25.01.2006, 19:09
ws_mason> Я уже где-то писал... Если кто хочет продвинуть свою ось, то ему придется к ней написать еще и ассемблер + дебаггер
Если этого не сделать, то такая ОСь никому будет не нужна. Т.о. ты создаешь простой бут-манагер и прикручиваешь к нему типа-микроасм, заточенный под бут. Тот кому хочется придираться, потом захочется что-нить сделать и когда прога скомпилится и будет работать в тандеме с бутом, то чеек начнет думать дальше, а что бы еще туда прикрутить? а что улучшить?
Мало знаю про Линукс, но где-то слышал, что там был С-компилер и потому Линукс не сдох. Т.е. нашлись люди, которые сразу смекнули, что для новой системы, запросто МОЖНО писать СВОИ проги. Без компилера проект наверное давно заглох бы или был бы игрушкой избраных. (имхо)
Например, Спековская "система" Windows 1.4, хорошо хоть автор расписал КАК делать проги и ведь они получаются (правда иногда с матами), если бы он прикрутил туда асм, то как и для iS-DOS (with is-assemler), так и для Win1.4 стало бы возможным создавать приложения. А так, расписаны лишь точки входа, а реализуй как знаешь, вот такого, имхо, не должно быть. То есть, если в системе сказано "не используй #3D13!", то нарушать правила не следует, как бы не хотелось, то же касается вывода текстов на экран и использования RAM.

Оптимаьный вариант, к нему я и сам приходил, писать программу, например игру, так как буд-то она работает под управлением вашей, еще не написанной ОСи.
К такому пришел и я и наверное многие. И (если не ошибаюсь) в DomenOS автор сказал, если бы кодеры оставляли бы хоть 50 байт свободного места, тогда в эти участки проги можно было натолкать вырубалки процесса и прочее, для оранизации хотя бы плагинной работы системы.

Соответственно некоторые части программы, например работа с диском, писать как части ОС (так сказать задел на будущее). Только скорее всего получится просто набор более менее универсальных билиотек.
Получится набор плагинов, на Спеке видимо это один из выходов.
:smile:
Даже проще, создать основные библиотеки по загрузке и выгрузке данных, прочие операции (которые, как правило, выполняются многими программами, даже вывод текста). Эти библиотеки подгружаются в конец асмового текста, ну:
ORG PROGA
LOAD EQU 10000;забыл как это оформляется, но общий смысл, полагаю будет ясен
...
LD HL, Address
LD BC, Lenght
CALL LOAD; примерно так
...
RET

LOAD ORG;сама библиотека, процедура загрузки даных в ОЗУ
...
RET
После создания системы и опубликования точек входа, исходные тексты подвергаются минимальной редакции, а все изменения концепции системы (допустим, я так реализовал загрузку, а в системе слегка по-иному) будут касаться видоизменениям в процедуре LOAD таким образом, что данные, получаемые от системы (loading) были приведены к виду, понятному программе, ну а для SAVE приказ отданный прогой был сформирован в формате, принятом в системе и так далее.

Максагор
25.01.2006, 22:29
Например, Спековская "система" Windows 1.4, хорошо хоть автор расписал КАК делать проги и ведь они получаются (правда иногда с матами), если бы он прикрутил туда асм, то как и для iS-DOS (with is-assemler), так и для Win1.4 стало бы возможным создавать приложения. А так, расписаны лишь точки входа, а реализуй как знаешь, вот такого, имхо, не должно быть. То есть, если в системе сказано "не используй #3D13!", то нарушать правила не следует, как бы не хотелось, то же касается вывода текстов на экран и использования RAM.

У тебя устаревшие сведения: уже давным-давно существует более продвинутая версия ZX-Windows v1.6
Среди "вкусностей" - наконец-то можно свободно перемещать иконки по рабочему столу как душе угодно, самих иконок одновременно можно иметь больше, ну и еще по мелочам...

Vovoi
26.01.2006, 15:41
У тебя устаревшие сведения: уже давным-давно существует более продвинутая версия ZX-Windows v1.6
Среди "вкусностей" - наконец-то можно свободно перемещать иконки по рабочему столу как душе угодно, самих иконок одновременно можно иметь больше, ну и еще по мелочам...

Простите, если я Вас чем-то обидел, но мне показалось, что изменения были более существенными.
:o

Максагор
26.01.2006, 18:28
Простите, если я Вас чем-то обидел, но мне показалось, что изменения были более существенными.
:o

Какие абиды, дарагой, слющай! С обидами - к автору сабжа. А какие там еще были изменения - уже и сам запамятовал, так как тыщу лет не использовал. Хотя были времена... :)

fk0
26.01.2006, 18:31
Я множество раз задумывался над таким вопросом - достаточна ли вычислительная мощность Спектрума для реализации на нем полноценной многозадачной ОС?


Сколько ангелов умещаются в бутылке из под пива?



И вообще, если рассматривать проблему шире, нужна ли новая ОС Спектруму?


Какой командой процессора колобок есть чёрта?



Цель создания этой темы - определить основные принципы, так сказть, "идеологию" ОС. На мой взгляд, нет необходимости в
изначальность ставить графический интерфейс, и т.д. Необходимо создать ОС, ядро которой будет минимально. Ядро, которое


Ядру место там же, где и графическим интерфейсам.

Ядра, GUI, мыши, кнопка пуск -- вот главные атрибуты любой ОС.
Конечно... А софт мы напишем. От нефиг делать. Бросим нести
всякую чушь в форумах и пойдём строем писать софт. А то ежели
бы с такой скоростью софт писат, уже windows ха-эр переписали
бы. Два раза.



А что вы думаете по этому поводу?

Это абсолютный бред. ОС на спектруме...


Что имеет смысл. Вот взять например спектрум типа пентагон-512.
Или KAY-1204. И TR-DOS. Хоть каевский, хоть 5.13, хоть 6.xx.
Для чего используется память сверх 128-и килобайт? Под RAM-диск.
И если у вас один дисковод 3.5, а другой 5.25, или вообще, ужас,
один дисковод. Или даже если 2 дисковода -- RAM-диск наиполезнейшая вещь. Вот почему: когда вы в Lara Croft разюючили
очередной варез свалившийся из ZX.SPECTRUM вам нужно:

1. запустить unzip и распаковать.
2. запустить, забыл уже как её там, для вытаскивания из SCL.
3. посмотреть, стереть, остальное куда-то скопировать.

Дисковод B: занять Ларой и почтовой базой, дисковод A: мелоном
и ММД. Без рамдиска будешь как проклятый эти диски, нечитаемые,
переформатировать, вставлять туда-сюда. Медленно всё. А с
рамдиском всё делается всего-лишь за 10 минут. Вот для чего нужен
RAM-диск. С НИМ УДОБНО РАБОТАТЬ. На нём удобно держать
временные файлы. Файлы передаваемые от программы к программе.
Он MOVE'ится за минуту. А не за 10. На нём не бывает сбоев. Кроме
сбоев питания.

Но вот есть одна беда. Есть такие, типа кодеры, которые пишут
программы, которые портят этот рам-диск. У меня даже переключатель был, для запуска таких программ. Чтоб верхнюю
память отключать. НО ТОГДА И РАМ-ДИСК НЕДОСТУПЕН!
Вот это проблема.

А почему так происходит? Вот взять, например, ALASM. Ему нужно,
ну банка, ну две-три. Исходники хранить. А он из-за этого рам-диск
гробит. Потому что он не знает что там рам-диск. А даже если и знает, то не умеет им воспользоваться. А было бы нужно всего-то
создать в этом рам-диске файлик, выяснить в какую банку он попал
и ту банку использовать. Налицо плюс: состояние исходника надёжно
сохраняется между запусками аласма. Потому что другие программы,
если они тоже корректно работают с рам-диском, они не будут портить файлик, который был занять аласмом.

Больше того, тот же аласм можно временно прервать, записать
как @ файл на рам-диск, поработать с другой программой, и
вернуться обратно в аласм. Чем не многозадачность? И никто
этот аласм, резидентный в памяти, не испортит. Даже если параллельно два аласма запускать. Потому что они знают --
вот это мой файлик, а вот это чужой. И где какая банка.

Дальше больше. Введём понятие "виртуальный диск" вместо
рам-диска. С пользовательским драйвером. Разумеется для тр-дос.
Что получим? Пользователь *без прошивки ПЗУ* имеет возможность
пользоваться разными программами виртуализации дисков.
Кому-то на винчестер, кому-то в рам-диск, кому-то на CD-ROM...
Где размещается драйвер? В том же рам-диске. Он используется
просто как средство выделения памяти.

Совсем не сложно написать программу, которая бы виртуализировала TRD-файл записанный на CD-ROM...
А это дасть возможность полноценного использования коллекций
софта на спектруме. Не как сечас:

1. CD-walk.
2. Unzip
3. dehobeta или unscl

ТРИ РАЗНЫХ ПРОГРАММЫ. И хорошо, если это не коллекция славки
калинина, где всё исключительно в *.RAR.

Многозадачность опять же. Это не означает ПАРАЛЛЕЛЬНОГО
ИСПОЛНЕНИЯ. Кнопка Magic. Во-первых к ней тянуться, во-вторых
она не всегда корректно срабатывает. Это может быть и хорошо
(я имею ввиду NMI) для программ с защитой. Но плохо для
обычных таких программ, в которых стек портится. Есть решение.
ПРОПАТЧИТЬ ПЗУ, функцию RST #38. Чтоб, например, нажатие
SS+CS+Space (SS+BREAK) срабатывало как БЕЗОПАСНЫЙ MAGIC.
С определяемой пользователем функцией. Из того же RAM-диска. НАжал SS+BREAK, из рам-диска запустилась специальная
программа. Она может, например, записать в тот-же рам-диск
сжатый дамп памяти и вызвать boot. Конечно же из рам-диска.

ПОЛЬЗОВАТЕЛЬ ОДИН РАЗ ЗАГРУЖАЕТ В РАМ-ДИСК САМЫЕ
НУЖНЫЕ ПРОГРАММЫ И ПОТОМ работает быстро!.

Адаптацию существующих программ, портящих какую попало
память. Да, это проблема. К счастью, таких программ относительно
мало. И они или запускаются в 128-режиме. Или их можно пропатчить для выделения банок из рам-диска.

Но самое важное, что я хотел сказать -- каждый раз когда разговор
заходит о всяких там ОС начинают изобретать всякую херню. ZX-Windows, ZX-Linux, окна, мыши, ядра, "таскменеджеры". А хрен
ли с них толку, если я хочу в аласм код писать под этим всем?
А вот элементарная вещь -- рам-диск. Это же готовый менеджер
памяти. И вообще очень удобная штука. Без неё спектрумом пользоваться вообще нереально. Только если нет SMUC.
Впрочем, о чём тут писать. Писюканцы-эмуляторщики ниасилят.
Посидели бы за реальным недельку...

CityAceE
27.02.2006, 16:05
Перечитал ещё раз заново всю ветку. Начали за здравие, а закончили за упокой. То есть начали было здравое обсуждение, которое, увы, ни к чему не пришло. Жаль.

Вполне очевидно, что если новая ОС и будет написана, то никто не ринется поддерживать её программно, даже если предположить, что будет создана идеальная система, которая будет использовать на 100% все возможности и ресурсы Спектрума. Так что так или иначе новая система будет скорее всего ради самой системы. Ну и пусть! Мне лично будет интересно принять участие в её разработке.

Хочу высказать свои мысли по поводу того, как я лично вижу новое программное обеспечение, которое возможно можно будет назвать операционной системой. Я не знаком с теорией построения операционных систем и могу судить о OS только с позиции пользователя. За последнее время я попытался ознакомиться с операционными системами других раритетных компьютеров – они внешне очень похожи между собой и мало похожи на Windows. И вот к чему я пришёл.

Итак, многозадачность. Скорости процессора Z80 вряд ли хватит чтобы обеспечить параллельную работу нескольких одновременно запущенных задач. Для Спектрума вполне хватит одной работающей программы за раз (как и в современной PalmOS!). Нужно сделать так, чтобы следующая запущенная программа замораживала в памяти предыдущую программу. То есть создать вытесняющую многозадачность, подобно программе MagOS на Скорпионе. Нечто подобное было создано и для Pantagon’а с кэшем. Переключаться между программами, которые ничего не знают о новой операционной системе, вероятно, придётся лишь с помощью кнопки NMI.

Как это выглядит: Загружаем операционную систему, щелкаем на иконку с CD-ROM’ом, перебираем папки и на ходим нужную нам с заголовком SNA, там находим файл Exolon.SNA и запускаем его. Стартует игра Exolon. Поиграв немного, жмём кнопку NMI и тотчас Exolon исчезает, а на экране появляется тот же рабочий стол нашей операционной системы со всеми открытыми нами окнами, на котором мы видим новый значок, который говорит нам, что в памяти (или в swap-файле на винчестере) у нас хранится запущенная программа Exolon. Указатель свободной памяти говорит нам, что у нас хватает места для запуска ещё одной программы. Мы выходим из папки SNA и перемещаемся в папку Z80, откуда запускаем файл Batty.Z80. Поиграв в Batty мы снова нажимаем на NMI и снова оказываемся на нашем рабочем столе. На этот раз мы видим, что кроме программы Exolon появилась ещё одна запущенная программа – Batty. Мы щелкаем по сигнальному значку Exolon и оказываемся в игре ровно на том моменте, когда была первый раз нажата кнопка NMI. И т.д. Любая запущенная и свёрнутая программа может быть закрыта методами нашей операционной системы.

Те же программы, которые возможно будут написаны под нашу операционку должны будут иметь возможность к переключению без NMI. Например, вот так: На рабочем столе одновременно запущено окно с калькулятором и окно с Тетрисом. В настоящий момент активно окно с Тетрисом – фигурки падают. Подводим указатель мыши к окну с калькулятором и кликом активируем его. Фигурки в Тетрисе замирают, зато теперь можно произвести необходимые расчёты на калькуляторе. Активируем мышкой окно с Тетрисом и фигурки снова оживают.

Операционная система не должна быть привязана к стандартному экрану Спектрума как IS-DOS, не должна быть привзязана к Beta Disk Interface’у или к чему-то ещё. Система должна храниться и запускаться с чего угодно, лишь бы дать ей толчок, как например ПЗУ в Kay имеет опцию загрузки с HDD. Драйвера должны быть абсолютно на любое устройство, начиная с памяти и заканчивая экраном. Например, кто-то разрабатывает новый, сверхкрутой видеорежим, но опасается, что под этот режим никто никогда ничего не напишет, но самому автору достаточно будет написать драйвер под нашу систему, после чего на новом режиме запросто пойдут и упомянутые выше Тетрис с калькулятором. А ведь уже сейчас на Спектруме есть видеорежимы отличные от стандартных 256x192@16. Вспомните 512х192@2, расширенные режимы AlCo, режимы ATM, Профи и др. Достаточно только одного драйвера и всё! То же касается памяти, то же касается мышки и джойстика, то же касается звука и всего остального. Ясное дело, что игры под такое дело не напишешь – всё будет слишком медленно. Но! Вспомните любимую многими Amiga. Очень и очень многие игрушки на ней запускаются только с дискеты, и плевать они хотели на Workbench, предпочитая напрямую обращаться к железу. А чтобы записать их на HDD приходится использовать всякие хитрости и загружать образ диска целиком в память. То есть весьма похожая ситуация.

Как уже понятно из моего описания система просто обязана иметь GUI. Уже заранее известно, что всё в один фрейм уложить не удастся и что всё будет притормаживать. Однако я уверен, что это будет работать быстрее чем GEOS на Commоdore 64. Да и на старых версиях PalmOS под MC68000 авторы не стеснялись перерисовывать иконки прямо на глазах пользователей. Кроме того GUI, как мне кажется, должен быть настраиваемым и иметь возможность менять skin. Как я уже писал в другой ветке, нужно отказаться от цвета и от привязки к знакоместам, как по горизонтали, так и по вертикали.

Для любителей и для экономии памяти нужно предусмотреть и консоль. Желательно сделать так, чтобы консоль могла жить и без загруженного GUI как в Linux.

Основные назначения системы на первое время:
1. Поддержка всего многообразия железа и доработок Спектрума.
2. Комфортная работа с файлами с рахными файловыми системами и на любых доступных носителях, будь то винчестер или флэшка, подключенная по нестандартной схеме.

Программы, которые можно написать под эту систему для разминки:
1. Простенькие игрушки типа Тетриса, Сапёра, Арканойда и т.д.
2. Калькулятор.
3. Блокнот.

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

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

CHRV
27.02.2006, 16:23
У меня, к сожалению, свободного времени практически нет - я могу лишь немного его выкроить в выходные дни. Но я обязуюсь принять участие в этой затеи. Я могу писать какие-то процедуры, поработать на интерфейсом, подать какие-то и идеи и т.д. Главное было бы над чем и с кем работать.
Щаз идет работа над TASiS 6.0 но она токо под Турбо2+ и выше.

James DiGreze
27.02.2006, 16:39
Имхо, но большое... ;)
Рац.предложения могут выноситься на обсуждение каждым участником проекта.
Каждое рац.предложение должно быть доставлено каждому участнику проекта для ознакомления, обсуждения и корректировки.
Решение по внедрению того или иного рац.предложения в проект принимает ТОЛЬКО координатор (руководитель) проекта.
Определенное задание выдается конкретному участнику проекта на условиях тендера (ниже объясню), при условии, что этот участник не занят исполнением другого задания проекта.
Тендер, суть "торг" на наиболее быстрое и качественное исполнение того или иного задания.
Т.е. всем незанятым участникам проекта выдается список текущих заданий, а участники вправе выбрать для себя то задание, которое им по силам, из той области, которую они уже знают или имеют об этой области представление. По идее подобный подход должен сократить срок
реализации всего проекта. Можно еще добавить, что на тендер лучше выставлять задания по методу оптимизации потоков, но это сложно организовать не имея четкого представления о конечном продукте...

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

ЗЫ: Одного желания мало... Потому-то "воз и ныне там..."

maximk
27.02.2006, 17:22
А объясните, чем плоха cp/m? Тем, что не может работать на классическом 128k? Или тем, что изначально не для spectrum'а?

По-моему, это вполне профессиональная система, под нее есть софт, тоже профессиональный. Ну, много коммерческого, правда... Но и писать под cp/m можно нормально! Нормальное API, содержащее файловые операции и всякий другой I/O.
Нужо лишь добавить туда некоторые актуальные на сегодняшний день фишки (прежде всего, ФС с каталогами). Опять же, придумывть ничего не надо - сделать хотя бы как в MS-DOS.

А многозадачность, java - это, ИМХО, явно не для спектрума... Тут кто-нибудь представляет себе сложность виртуальной машины java?

James DiGreze
27.02.2006, 18:52
Или тем, что изначально не для spectrum'а?
Каждой платформе свою оську пишут... Да и не одну... К чему бы это?
Почему на х86 есть как минимум "Вынь" и "Тукс"?
В настоящий момент для Спектрума написано много ОСей и ОСек, что тоже неспроста...
Проблема кроется в использовании компьютера для решения какой-либо задачи.
Возьмем существующие примеры:
TRDOS за некоторым исключением подходит для любой работы, но ограничено использованием гибких дисков...
ISDOS достаточно хороша для набора больших текстов и переноса данных с одного формата диска на другой, но под нее сложно писать игрушки...
Других не видел, потому писать про них не буду.
Единственное, хочу отметить, что фактически каждый, в достаточной мере, качественный продукт (н-р: ZX-Format, ЧВ, НЛО и т.д.), имел свою недооську, адаптированную для нужд конкретного продукта...

А иногда и мозги "размять" хочется ;)

CityAceE
28.02.2006, 03:24
Решение по внедрению того или иного рац.предложения в проект принимает ТОЛЬКО координатор (руководитель) проекта.
Ты готов взять на себя роль координатора проекта?

Максагор
28.02.2006, 14:33
На данный момент являюсь координатором проекта OS TASiS. Результаты, думаю, все кто хотел, уже видел - или на реальной ATM или в эмуляторе. Прииопределенных условиях, мог бы взяться и за этот проект. НО! Пока что считаю, что наиболее рационально поддерживать уже существующие системы и прежде всего iS-DOS (вовсе не обязательно в ее TASiS-модификации), которая, по моему личному глубокому убеждению, далеко еще не исчерпала свой потенциал. Например, по смутным слухам, доходящим ко мне изредка от Илясова, могу сказать, что ведется работа по созданию для iS-DOS графической оболочки в дополнение к стандартному SHELL. Другая ветвь системы - OS TASiS v6.xx также будет оснащена подгружаемыми графическими библиотеками, на основе которых также будет создана GUI-оболочка, да и псевдомногозадачностью систему тоже не обделим - в принципе, это возможно реализовать в рамках самой обычной iS-DOS уже сейчас, но, естественно, в обычном "текстовом" режиме оболочки SHELL.

Вот чтобы я усовершенствовал в данной системе, так это файловую систему - она сама по себе хорошая, да уж больно напрягает максимальный объем устройства в 16Мб. Надо увеличивать, и увеличивать серьезно! Поэтому, как координатор проекта TASiS объявляю конкурс рац-предложений по УСОВЕРШЕНСТВОВАНИЮ (или безболезненной замене) с сохранением совместимости с основным количеством софта, файловой системы данной ОСи. Просьба писать людям, НЕ ПОНАСЛЫШКЕ знакомых с iS-DOS и ее ФС, и прежде всего с точки зрения знаний о ее структуре, идеологии, рестартах. Людей, пару раз запустивших с дискетки систему, потыкавших опции и походивших по подкаталогам и закинувших после данную дискетку пылиться на антресоли - просьба не беспокоить. Меня не интересует флейм про достоинства и недостатки iS-DOS, ее нужности/ненужности, быстроты или тормознутости и т.д. Мне нужны конкретные рацпредложения. Желательно с примерами в коде.

Возвращаясь к тебе об осяъх вообще - считаю, что ОС должна писаться уже сразу с упором на HDD (как минимум). Глубоко убежден, что для Спектрумов с минимальной, "классической" конфигурацией 128+AY+Beta Disk она и нафиг не нужна - там одной TR-DOSины хватит за глаза. А новая ОСь будет только раздражать, ибо придется ее промежуточно загружать, а уж потом запускать из-под нее софт с дискеток. Зачем, когда можно это делать напрмую через TR-DOS?

CityAceE
28.02.2006, 16:03
Возвращаясь к тебе об осяъх вообще - считаю, что ОС должна писаться уже сразу с упором на HDD (как минимум).
Любая нормальная система должна уметь обходиться и без винчестера. Это моё убеждение. Но, безусловно, нужно делать так, чтобы наличие HDD предоставляло бы полный комфорт, а не так как SMUC работает в режиме TR-DOS.

Максагор
28.02.2006, 16:43
Любая нормальная система должна уметь обходиться и без винчестера. Это моё убеждение. Но, безусловно, нужно делать так, чтобы наличие HDD предоставляло бы полный комфорт, а не так как SMUC работает в режиме TR-DOS.

Согласен, ДОЛЖНА. Но вопрос в том, что без винта теряется почти весь смысл, ибо тогда по сравнению с TR-DOS мы теряем:

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

б) В скорости работы с приложениями - сначала надо загрузить систему, потом поменять диск с игрушкой (так как системная дискетка наверняка забита почти под завязку приложениями и доками) и только потом запустить ее. Сразу возникает мысль - а может обойтись без "лишнего" звена в лице ОС? Я так не подумаю, допустим, дык другие пользователи подумают...

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

Так что без винта TR-DOS реально обладает преимуществами по сравнению с другими системами и уступаает лишь тем, что не подлежит развитию, негибкая.

Если бы на Спектруме изначально был бы только BIOS с грузилкой, то эти моменты не были бы принципиальными, так как не с чем было бы сравнивать. Точно такая же ситуация была бы, если бы на платформе уже не сложилась бы целая культура программирования под TR-DOS, с ее традициями работы с диском, использования адресного пространства, обращения с любыми портами. Потом трудно бывает себя заставить переучиваться, и налагать определенные ограничения (например, образаться к памяти исключительно через дрова). Это тормозит распространение новых осей. Но подключение винта в корне меняет дело - монополия TR-DOS нам волшебным образом моментально теряет всю свою силу. Поэтому и надо прежде всего ориентироваться на винт, иначе на компах без винта в большинстве случаев такая ОСь будет запускаться только для демонстрации писишникам, "что, мол, и на Спеке такое есть"...

CityAceE
04.03.2006, 05:18
Итак, кто имеет желание и чувствует в себе силы для участия в проекте по созданию новой оперционной системы для ZX Spectrum, добро пожаловать в закрытый раздел для разработчиков. Кто планирует что-то реально делать в этом направлении, а не просто чесать языком обращайтесь ко мне за паролем к этому разделу.

James DiGreze
06.03.2006, 13:17
Ты готов взять на себя роль координатора проекта?
Я? Нет! На это есть много объективных, и не очень, причин ;)
А ведь Максагор прав! Чем плоха IS-DOS? Тем, что ее не поддержали, из-за де-факто "TR-DOS" при работе с флоповодом.
К слову сказать, мы не первые, кто наступил на эти грабли...

Максагор, идеи по преодолению барьера "16Мб" есть, но пока это только на уровне идеи, сейчас обдумываю одну из них на предмет совместимости с текущей версией IS-DOS. Если концептуальных противоречий не найду, отпишусь...

ASDT
06.03.2006, 22:57
В связи с этой темой. Сопутствующий вопрос.
Как обстоят дела с легальностью прошивок ZX?
....
Схемные решения - вроде нормально, софт - есть свободный....

icebear
07.03.2006, 11:31
В связи с этой темой. Сопутствующий вопрос.
Как обстоят дела с легальностью прошивок ZX?
....
Схемные решения - вроде нормально, софт - есть свободный....

Согласно Амстраду (как держателю копирайтов на ZX Spectrum, ZX Spectrum+, ZX Spectrum+ 128, ZX Spectrum+ 2(A/B) и ZX Spectrum+ 3) прошивки доступны для использования в эмуляторах (где-то здесь я давал линк на это заявление, либо иди на worldofspectrum.org, там линк висит на титульной странице). Насчёт советских клонов у Амстрада есть своё мнение :), однако я так и не понял допустим, как они относятся к тому факту, что какой-то англичанин (а может и испанец, не помню) расковырял и перелопатил ПЗУ от +3. Вобще, если сделать как в Спринтере (это не клон, а эмулятор ZX Spectrum) - то проблем быть не должно, ибо не декларировано, как можно эмулить, а как нельзя (софтово или железно ).

James DiGreze
07.03.2006, 12:11
Ну, если рассматривать с угла "железной" эмуляции, то все спектрум-совместимые клоны, попадают под эту категорию... Ведь клон не использует оригинальную схемотехнику ни Sinclair Research, ни Amstrad, а лишь "эмулирует" на "рассыпухе", где более точно, а где менее, физическую и логическую модель оригинала. Однако отношение праводержателя марки в любом случае негативно...

Однако, уходим от темы...

ASDT
07.03.2006, 16:33
Со стороны железа - вроде всё ок.
Схемы, документация по оригиналу опубликованы,
а реализации клонов имеют собственную схемотехнику.

По поводу "ухода от темы" - это самая тема!
Исходные данные:
1. Имеется парк железа относительно совместимый с ZX.
2. ОС должна поддерживать имеющееся железо(от 48к до 1М).
3. Однако есть вопросы по пзу 48/128, аналогично -
как относиться к TR-DOS...
Т.е. надо нормально позиционировать ОС по этим
вопросам.

icebear
07.03.2006, 17:03
Ну, если рассматривать с угла "железной" эмуляции, то все спектрум-совместимые клоны, попадают под эту категорию... Ведь клон не использует оригинальную схемотехнику ни Sinclair Research, ни Amstrad, а лишь "эмулирует" на "рассыпухе", где более точно, а где менее, физическую и логическую модель оригинала. Однако отношение праводержателя марки в любом случае негативно...

Однако, уходим от темы...

Я не знаю, обладает ли Амстрад правами на схемотехнику. Однако любой Пентагон без ПЗУ - пустая железяка. А если используешь ПЗУ не для эмуляции, что это тогда? Другое дело с Кворумом и Профи например - они работают с СР/М, хотя я не знаю, насколько они при этом могут обходистя без ПЗУ Спектрума.

caro
07.03.2006, 17:08
Другое дело с Кворумом и Профи например - они работают с СР/М, хотя я не знаю, насколько они при этом могут обходится без ПЗУ Спектрума.В Кворуме, как и в Профи, при работе CP/M ПЗУ вообще отключается.

icebear
07.03.2006, 18:08
В Кворуме, как и в Профи, при работе CP/M ПЗУ вообще отключается.

Значит напрячь не смогут :)

ASDT
08.03.2006, 04:44
Как вариант - оставляем пзу на пользователя,
а ОС загружается вне зависимости от их наличия/отсутствия.
Требования к ОС?

James DiGreze
08.03.2006, 18:32
1. Уровень менеджера памяти
2. Уровень I/O
3. Уровень SHELL

Третий уровень должен уметь "сниматься", дабы освободить место творчеству писателей "бутов" ;)
Второй уровень, это уровень работы с блоками и файлами, а также с каналами и потоками...
Первый уровень, собственно говоря, ядро, которое в минимале должно работать начиная с "48К + магнитофон"

icebear
08.03.2006, 18:47
1. Уровень менеджера памяти
2. Уровень I/O
3. Уровень SHELL



2. и 3. уже есть в ПЗУ, зачем изобретать велосипед? Взгляните вот сюда http://www.zxplus3e.plus.com/ - БОЛЬШОЕ ИМХО, что подобная реализация была бы "роднее", чем всякого рода буты и шелы от юниксов.

James DiGreze
08.03.2006, 19:50
Замечательное решение! Но...
...как быть рядовому пользователю, допустим мне, с моим kay1024+nemo_ide? Перешивать ПЗУ? С подгонкой под порты Nemo-IDE?
А если я захочу прикрутить работу с FAT16(32)/NTFS/HPFS/ReiserFS...
не как с основной файловой системой, а как с дополнительной, допустим, монтируемой?

А реальных проблем много, равно как и вариантов решений...

Может быть, пусть здесь каждый выскажет свои пожелания?
Начну с себя:
- хочу, чтоб диски были как в "туксе", чтоб без буковок
- хочу чтоб можно было переключить "шелл" на другой, или убрать совсем
- хочу чтоб грузиться с "винта" или "сидюка"
- хочу чтоб можно было работать с экраном, отличным от 256х192
- хочу, хочу, хочу!
- и последнее "хочу": хочу, чтоб новый прог, написанный на любом клоне/оригинале, можно было запустить у себя, не лазя каждый раз в настройки мыши/памяти/звука...

Как много хочу... И как мало имею... И видимо не я один, такой вот "уникальный"... Иначе б не писал сюда люд...

icebear
08.03.2006, 20:03
Замечательное решение! Но...
...как быть рядовому пользователю, допустим мне, с моим kay1024+nemo_ide? Перешивать ПЗУ? С подгонкой под порты Nemo-IDE?
А если я захочу прикрутить работу с FAT16(32)/NTFS/HPFS/ReiserFS...
не как с основной файловой системой, а как с дополнительной, допустим, монтируемой?

Зачем тебе это всё? Оно тебе реально надо на Спектруме? Ты хочешь подцепить жёсткий диск с NTFS к Спектруму? Какой прок от FATов (и всего остального) на Спектруме? Для одноразового использования этих систем (читай копирование с носителей с такими ФС) достаточно одной программы. На возможный вопрос о размещение всего это в ПЗУ - ты так часто копируешь файлы с NTFS в TR-DOS?


А реальных проблем много, равно как и вариантов решений...

Может быть, пусть здесь каждый выскажет свои пожелания?
Начну с себя:
- хочу, чтоб диски были как в "туксе", чтоб без буковок
- хочу чтоб можно было переключить "шелл" на другой, или убрать совсем
- хочу чтоб грузиться с "винта" или "сидюка"
- хочу чтоб можно было работать с экраном, отличным от 256х192
- хочу, хочу, хочу!
- и последнее "хочу": хочу, чтоб новый прог, написанный на любом клоне/оригинале, можно было запустить у себя, не лазя каждый раз в настройки мыши/памяти/звука...

Как много хочу... И как мало имею... И видимо не я один, такой вот "уникальный"... Иначе б не писал сюда люд...

Для всего этого есть более другие компьютеры. Зачем натягивать на Спектрум морду других платформ? Зачем его при этом лишать look & feel & usage ZX Spectrum?

James DiGreze
08.03.2006, 20:45
icebear, прошу прощения за флейм... Видимо разгорячился я праздником... ;)

Итого:
Остановились на менеджере памяти...
У кого какие соображения на этот счет? У меня, лично, пока что "каша" в голове...

icebear
08.03.2006, 20:58
icebear, прошу прощения за флейм... Видимо разгорячился я праздником... ;)

Брось ты, какой флейм? У каждого своё мнение. Это же было моё ИМХО. С другой стороны интересно узнать, зачем люди придумывают всякие "навороты" для 8-ми битного компьютера, которые потом в большинстве случаев будут лежать мёртвым грузом?

James DiGreze
09.03.2006, 07:55
Может и не будет востребовано, и будет лежать мертвым грузом, а может быть и не будет реализовано вообще... Здесь, я все-таки, хочу сделать акцент на модульность системы, чтобы у возможных будущих разработчиков не возникало пресловутых "проблем 16Мб"... Но, имхо...

Типичный, можно сказать исторический, факт: из-за разношерстности железа, на западе стандартом де-факто остался магнитофон, а у нас, из-за специфики начального рынка, стандартом стал BetaDisk, и далше него уже лет 10 пробиться не можем, из-за того, что нет гибкости.
Частично эту "брешь" закрывает is-dos, но изначально "жесткая" организация ядра, сегодня создает некоторые проблемы в использовании современного железа...

icebear
09.03.2006, 11:28
Может и не будет востребовано, и будет лежать мертвым грузом, а может быть и не будет реализовано вообще... Здесь, я все-таки, хочу сделать акцент на модульность системы, чтобы у возможных будущих разработчиков не возникало пресловутых "проблем 16Мб"... Но, имхо...

Модульность - это конечно хорошо. Только мою реплику стоит расценивать как "не стоит утяжелять систему ненужными компонентами".

ASDT
09.03.2006, 11:34
После некоторых раздумий ...
Такая модель, для начала.
ZX+boot и РС, как "удалённый"
диск (возможно и терминал).
Связь - сом-порт.
Если это интересно ...

James DiGreze
09.03.2006, 12:34
icebear, ну вот вроде бы и получили среднестатистическое мнение ;)

ASDT, а мы как раз над bootиком и думаем... Как бы при минимальных ресурсах сделать максимальную масштабируемость ;)

От какой минимальной конфигурации будем отталкиваться?
Я, таки, сколняюсь к мнению, что 48К с магнитофоном.
Базовая конфигурация, с минимальным набором "драйверов", должна без проблем "влезать" в 48К и не занимать в них более 16К.
Почему магнитофон? Потому что фактически готов "к употреблению" hardtaper by DVS, плюс "западники" до сих пор не чураются ленты...
Имхо, обсуждаемо. Опять же, большинство "драйверов" поддержки базовой модели "48К", "железно" прошиты в ПЗУ, т.е. заморочек на тему "как же это работает" не должно быть (но будет... ;))

А также, давайте определимся, что же должно входить в базовую конфигурацию ОСи...
Допустим:
- поддержка текстового экрана 32х24 (допустим в кодировке ascii-866, я принципиально против koi8r)
- поддержка стандартной клавиатуры
- поддержка файлов на ленте

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

ASDT
09.03.2006, 16:12
Магнитофон - это утопия ...
Ну если только ... В железной теме был один вариант.
Нужен прямой доступ к файлам.
И чем плох сом-порт? Пустить по кабелю и файлы
и терминал ...
У меня к 48-му прикручен эмулятор пзу, есть
куда загрузчик залить. Ещё сом приделать,
дальше софт ...

James DiGreze
09.03.2006, 18:03
Магнитофон - это утопия ...
Может быть и утопия, но "Железный" раздел подтверждает обратное... 48К + магнитофон еще очень распространенная вариация...


Ну если только ... В железной теме был один вариант.
Это и есть HARDTAPER ;)


Нужен прямой доступ к файлам.
И чем плох сом-порт? Пустить по кабелю и файлы
и терминал ...
У меня к 48-му прикручен эмулятор пзу, есть
куда загрузчик залить. Ещё сом приделать,
дальше софт ...
Прямой доступ к файлам нужен, и он будет.
Про сом-порт могу лишь сказать, что девайс довольно уникальный, и далеко не у всех есть... У меня пока его нет, но скоро будет ;)
И все-таки нужно начать с минимума, а потом довешивать "уникальностями"...

ASDT
09.03.2006, 19:06
"что девайс довольно уникальный" - это и плохо, вещица крайне полезная.
"Это и есть HARDTAPER " - но его надо делать ...
А сом - сам нужен, да и применить для целей ОС ...
"пока его нет, но скоро будет " - а стандартизировать?
"начать с минимума" - для реального магнитофона ОС не требуется, всяко ...

James DiGreze
10.03.2006, 05:27
Com-порт, на сегодняшний момент, хоть и не стандарт, но и не проблема. В настоящий момент, де-факто, используется "схема Кондратьева", которая поддерживается контроллером Камиля Каримова (caro). Вот на него и будем ориентироваться. Контроллер можно и нужно выписать по почте.

Для реального магнитофона не требуется драйвера, а поддержка ОС была бы очень кстати. Например при работе с виртуальным диском, н-р как сделано в ArtStudio (for 128).

Shaos
10.03.2006, 05:36
Я, таки, сколняюсь к мнению, что 48К с магнитофоном.
Базовая конфигурация, с минимальным набором "драйверов", должна без проблем "влезать" в 48К и не занимать в них более 16К.
........
А также, давайте определимся, что же должно входить в базовую конфигурацию ОСи...
Допустим:
- поддержка текстового экрана 32х24 (допустим в кодировке ascii-866, я принципиально против koi8r)
- поддержка стандартной клавиатуры
- поддержка файлов на ленте

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

И тут появляется ShaOS (http://www.nedopc.org/nedopc/shaos/shaos_r.shtml)... :v2_smoke:

GriV
12.03.2006, 23:04
это набор п/п? или всё таки ОСь?
В любом случае исходники в студию.

Shaos
13.03.2006, 01:20
это набор п/п? или всё таки ОСь?
В любом случае исходники в студию.

ShaOS? Это вполне себе ось с набором подпрограмм и командной строкой, а также некими унифицированными форматами файлов и протоколами передачи данных через несколько специально разработанных аппаратных интерфейсов.

GriV
13.03.2006, 07:34
Хорошо, таки я не понял - где готовый код лежит? я по ссылке перешёл там только описатели функций, или я проглядел как-то? И ещё, всё таки ждём-с исходничков (-: :v2_tong2:

Shaos
14.03.2006, 04:59
Хорошо, таки я не понял - где готовый код лежит? я по ссылке перешёл там только описатели функций, или я проглядел как-то? И ещё, всё таки ждём-с исходничков (-: :v2_tong2:

А готовый код лежит у меня на винте и несколько копий на дисках ;)
Исходники ShaOS представляют из себя 2600 асмовских строк ядра и несколько сотен - утилиты и тесты (всего около 3 тысяч строк). Чтобы их выложить - надо преобразовать из мнемоники моего кросс-ассемблера RASM (Robo Assembler) в ZMAC (чтобы спектрумисты могли читать не запинаясь на каждой строчке) ну и неплохо бы собираемость и запускаемость сконверченных исходников обеспечить :)

Shaos
15.03.2006, 08:02
А готовый код лежит у меня на винте и несколько копий на дисках ;)
Исходники ShaOS представляют из себя 2600 асмовских строк ядра и несколько сотен - утилиты и тесты (всего около 3 тысяч строк). Чтобы их выложить - надо преобразовать из мнемоники моего кросс-ассемблера RASM (Robo Assembler) в ZMAC (чтобы спектрумисты могли читать не запинаясь на каждой строчке) ну и неплохо бы собираемость и запускаемость сконверченных исходников обеспечить :)

Автоматически сконвертил из RASM в ZMAC то, что осталось c 1998 года и выложил почитать:

http://www.nedopc.org/nedopc/shaos/shaos_zx0_.shtml

Также скомпилил и сделал небольшой BASIC-загрузчик для этого дела, сложив всё в TAP (http://www.nedopc.org/nedopc/shaos/s004_v0_.zip) (thanks2glukalka) - автоматически стартует командная строка, которая дает возможность что-то редактировать, но ничего не запускает (разве что по команде # можно запустить подпрограмму test_em).

Система была заточена под электронные квазидиски - чтобы довести ее до ума, мне надо либо найти способ приделать квазидиски к своему ZX Spectrum +, либо адаптировать систему к TR-DOS и отлаживаться в эмуле. А можно типа виртуальный диск в памяти делать - но память 48К не резиновая - все предполагаемые утилиты системы не влезут.

Vovoi
17.03.2006, 17:12
1. Я, таки, сколняюсь к мнению, что 48К с магнитофоном
2. И все-таки нужно начать с минимума, а потом довешивать "уникальностями"...
3. Всего этого должно быть достаточно для написания как минимум текстового редактора и какой-либо среды разработки.



1. Магнитофон и так поддержан в ПЗУ, а недостающее можно организовать в приложениях, в системе это лишний груз.
2. Довешивать в 16к не получится, разве что одно снимать, другое устанавливать :(
3. Да, среда разработки, это один из путей (имхо) для того, чтобы заинтересовать кодеров просто взглянуть на системку.

Нелегко интегрировать компилер языка в среду и правильно при этом организовать взаимодействие приложений и их фрагметов с RAM, вот в чем задача. Демки у многих получаются превосходно, а нарисовать и сохранить 256*192-картинку в этой демке никак, не говоря уже о том чтобы написать хотя бы простой калькулятор и тут же запустить в среде.

Shaos
18.03.2006, 05:34
1. Магнитофон и так поддержан в ПЗУ, а недостающее можно организовать в приложениях, в системе это лишний груз.

Магнитофон в ПЗУ поддержан в устаревшем стиле. Например качаем мы пять минут 48К блок кода и получаем в конце ошибку. Обидно? Обидно. Более того - глупо. Надо читать с магнитофона кусками по 1 или 2 кило (ну и писать соответственно также). В случае неправильного чтения очередного блока не расстраивать пользователя сообщением - типа все пропало, жми reset и давай все по новой, а вежливо попросить перемотать чуть назад и попробовать с этого последнего непрочитанного блока. И вообще можно соорудить устройство - поттыкаемое к спектруму по стандартным дыркам MIC и EAR через которое ОС сама будет говорить номер блока (стандартной битовой посылкой с пилотоном) который ей нужен, а устройство будет гудеть в ответ нужным куском (опять же в стандартном спековском формате) определенного не очень большого размера.

Vovoi
20.03.2006, 16:02
Магнитофон в ПЗУ поддержан в устаревшем стиле. <...> Надо читать с магнитофона кусками по 1 или 2 кило (ну и писать соответственно также). <...> И вообще можно соорудить устройство - поттыкаемое к спектруму по стандартным дыркам MIC и EAR через которое ОС сама будет говорить номер блока.
Ну да, я слышал, есть драйверы под скорость 4х, тока лента должна быть качества супер наверное :)
По поводу кусков, помню тоже добивала как-то Артстудия, у меня она проходила в трёх кусках: катинка-6912, осн.блок~41к, блок взлома~2к, который собссно потом и запускался.
Холодиьник врубится и кранты, а рисовать-то хотелось :) Так случайно отыскал блок управления от клавиатуры (впихнул куда-то выход по RST8 и адрес нашелся), тут же, по пути, поменял QAOPM на 67890, типа "синклер-2" :) сбросил на кассету 48к (или около того) нарезал на 2к и сделал "лоадер" с полоской (увидел как-то на ПЦ в DosNavy и скопировал, а у нас же не было такого, разве что цифиь обратный отсчет давала), так вот, а ну сырцы-то до сих пор валяются на GENS4 и прога значит показывает полоску progress-bar слева-направо и если тапе_лоадинг_эррор то аккуратно высветит мол "Searching for BLOCK 4 (from 6) Please Rewind". Это было уже полегче, а потом и сам GENS4 также грузился, с полоской. Магнитофон у меня Легенда-404, там удвоенная скорость, но дравер чот не хотел с неё грузить, а если switch скоростей передвинуть аккуратненько в положение "middle" (ну надо долго искать, опытным путем:))), то скорость будет как раз между 4.75 и 2.23 (писал игрухи на 2.23, точные цифры не помню, паспорт вертака надо читать) и весь GENS менеее чем за полминуты, все 10к кидались в ОЗУ. Но уже работать было просто обалеть, заодно и джойстик подключил и стал он работать на благо Артстудии и жили они долго и счастливо пока джойстик не почил в какой-то игрухе.
:v2_happy:
А вообще-то имелось в виду возможность в ОС конвертации кассетных прог и данных на диски, но никак не работа в принципе. У меня на работе валяется такой прикольный устройств, магнитофон со шлейфами и написано мол коммодоровский агрегат. Эта штука под целую кассету и наверное может рабтать от сигналов с компа, в теории даже ОСь пойдет на сем вертаке, может быть.
:)

Vovoi
04.04.2006, 17:57
Извиняюсь, малость Вас обманул. Зовут штуковищщща - 1530 DATASSETTE UNIT Model C2N, далее отмечается - Suitable For Use With Commodore Computers. От устройства идет шлейф с плоским разъемом, где расположены контакты четыре вместе, зетем на той же колодке чуть подаль два и отдельно висит земля. Для савинга и load хватает по одному (земля общая), пускай у них было две земли, тогда остается еще два, возможно, под питание самого прибора. Никаких паспортов ессно нет, но по инструкции к коммодору можно выяснить сколько он дает "на сторону" (например, Спекки отдавал +5, а поздние разработки еще и +12, для флоппика). Также мы видим, что на "объекте" присутствуют кнопки, значит автоуправление кассетой отсутствует (иначе была бы одна кнопка "выброс кассеты"). Магнитофончик похож на портативный плэйер (с записывающей головкой), присутствует счетчик.
:)
Для ОС придется много кнопок давить, для загрузки приложений, но в середине 90х я бы мечтал о такой штуковине, вместо стандартного, большущчаго вертака.
:rolleyes:

acidrain
04.04.2006, 20:01
Также мы видим, что на "объекте" присутствуют кнопки, значит автоуправление кассетой отсутствует (иначе была бы одна кнопка "выброс кассеты"). Магнитофончик похож на портативный плэйер (с записывающей головкой), присутствует счетчик.
Не факт, что он был без автоуправления - у меня такой же на атари 65хе был с автоуправлением и при все при этом были мех. кнопки. Ведь можно просто питание отключить =). И думаю, что атари, как конкурент коммодора стянул эту идею именно у коммодури...

acidrain
04.04.2006, 20:22
А также, давайте определимся, что же должно входить в базовую конфигурацию ОСи...
Допустим:
- поддержка текстового экрана 32х24 (допустим в кодировке ascii-866, я принципиально против koi8r)
- поддержка стандартной клавиатуры
- поддержка файлов на ленте
Давайте, текстовый экран? Почему не поддержка экрана через графическую либлу? Да, скорость ниже, зато на другие экраны можно переделать без переписывания ядра, а вдруг наконец то кто то сообразит не только спек на фпга, но и граф. аксель сделать. тогда это вообще выигрыш во всем.
Лента.... Не, ну это совсем. конечно нельзя исключать его, но и про тырдос низзя забывать и минимум 128к поддержку сделать, а еще лучше либлу сделать чтоб под каждый конкретный клон можно было работать. А все
, что меньше - чем васик не устраивает?

James DiGreze
06.04.2006, 09:41
Основной упор на модульность! ;)
А текстовый экран 32х24 - модуль поддержки получается ну ощщень простой, а если есть что-то круче, то флаг в руки - пишите поддержку, или, хотя бы, спецификацию на режимы. А то получается, чтобы адаптировать iS-DOS под 80х25 пришлось ребятам переписывать целый уровень WIND (и скорее всего не только его), вместо того, чтобы просто написать и подключить драйвер...
То же самое касается всего остального... Типичный пример: iS-DOS расчитан на работу только с BetaDisk'ом! Попробуй подключить что-нибудь типа Disciple - придется переписывать наверно около 70% кода, в том числе и принципы загрузки самой ОСи и прочее... И таких примеров много... В том числе и не только ОСи, но и софт (любой), адаптированный под TR-DOS, обратная деадаптация "чревата боком", а Dizzy я хочу держать и запускать с "винта" или даже SD/MMC... ;)
Стандартный Спектрум - это 48К + м/ф! Почему? Потому, что есть клоны, использующие #7FFD в несколько нестандартной схеме, что "выбивает" модель 128К из стандарта... Про BetaDisk вообще молчу... Этот российско-советский "стандарт" загубил кучу интересных идей, к тому же вынужденный быть неизменным для совместимости, и на какие только извороты приходится идти тем, кто пытается его модернизировать без потерь совместимости... Обидно! :(
Ну... Что-то меня на флейм развезло... В попытке объяснить причины своего "твердолобия" ;)

CHRV
06.04.2006, 10:57
То же самое касается всего остального... Типичный пример: iS-DOS расчитан на работу только с BetaDisk'ом! Попробуй подключить что-нибудь типа Disciple - придется переписывать наверно около 70% кода, в том числе и принципы загрузки самой ОСи и прочее... И таких примеров много... В том числе и не только ОСи, но и софт (любой), адаптированный под TR-DOS, обратная деадаптация "чревата боком", а Dizzy я хочу держать и запускать с "винта" или даже SD/MMC... ;)

Ну немножко ты не прав!
iSDOS поздних версий работает не с BetaDiskом, а с блочными устройствами! Которые могут быть сегментированными или нет.
Т.е написав драйвер блочного устройства ты в приниципе можешь использовать любой носитель.

fk0
06.04.2006, 11:19
Основной упор на модульность! ;)
А текстовый экран 32х24 - модуль поддержки получается ну ощщень простой, а если есть что-то круче, то флаг в руки - пишите поддержку, или, хотя бы, спецификацию на режимы. А то получается, чтобы адаптировать iS-DOS под 80х25 пришлось ребятам переписывать целый уровень WIND (и скорее всего не только его), вместо того, чтобы просто написать и подключить драйвер...


"Основная проблема при разработке нового харда -- в мозгах пользователя" (Ц) немо. Очень точно сказано. Так же и тут. При подключении экрана 86x24 к CP/M
никаких проблем не возникло и весь софт сразу заработал. Ощутите разницу.
Там вообще уровень драйверов, модульности и прочих ужасов -- мизерный.



То же самое касается всего остального... Типичный пример: iS-DOS расчитан на работу только с BetaDisk'ом! Попробуй подключить что-нибудь типа Disciple - придется переписывать наверно около 70% кода, в том числе и принципы загрузки самой ОСи и


Афтар жжот. Хотя бы потому, что оно и из рам-диска работает, и из НЖМД.



И таких примеров много... В том числе и не только ОСи, но и софт (любой), адаптированный под TR-DOS, обратная деадаптация "чревата боком", а Dizzy я хочу держать и запускать с "винта" или даже SD/MMC... ;)


Потому как демы и игрушки нужно под LOAD "" писать, а не TR-DOS.



Стандартный Спектрум - это 48К + м/ф! Почему? Потому, что есть клоны,


Стандартный спектрум -- это скорпион и пентагон. И не обсуждается даже.
Согласен записать в список стандартных и атм-турбо, если он научиться
память по-пентагоновски переключать.



Про BetaDisk вообще молчу... Этот российско-советский "стандарт" загубил кучу


Technology Research Ltd -- советский стандарт?

James DiGreze
06.04.2006, 11:31
Роман, сдаюсь! Дал маху... ;)
Однако, согласись, что загрузка с "нестандарта" процедура довольно нетривиальная... Причем для каждого, например, интерфейса HDD своя, и достаточно уникальная.
Есть у меня одна интересная идейка, насчет сведения всех HDD под одну "гребенку", но, подозреваю, что ресурсов оно "скушает" несколько больше, чем традиционный способ... В общем думаю... :)

CHRV
06.04.2006, 11:49
Согласен записать в список стандартных и атм-турбо, если он научиться
память по-пентагоновски переключать.
Уже умеет ;) : http://www.nedopc.com/ATMZAK/atm710re.htm
Доработка под названием "Доработка, устраняющая учитывание линии A9 при выборке порта #7FFD".

Все новые машины, мною собранные - эту доработку имеют.

CHRV
06.04.2006, 11:51
Роман, сдаюсь! Дал маху... ;)
Однако, согласись, что загрузка с "нестандарта" процедура довольно нетривиальная... Причем для каждого, например, интерфейса HDD своя, и достаточно уникальная.
Есть у меня одна интересная идейка, насчет сведения всех HDD под одну "гребенку", но, подозреваю, что ресурсов оно "скушает" несколько больше, чем традиционный способ... В общем думаю... :)
Ну на некоторых ОС подстройка под машину идет так называемой "компиляцией ядра", т.е. по сути сборкой только нужных драйверов. Для спека это оптимальный вариант.
Честно говоря не очень большой знаток iSDOS, но там вроде тоже идет подготовка ядра для загрузки.

James DiGreze
06.04.2006, 11:51
"Основная проблема при разработке нового харда -- в мозгах пользователя" (Ц) немо. Очень точно сказано. Так же и тут. При подключении экрана 86x24 к CP/M
никаких проблем не возникло и весь софт сразу заработал. Ощутите разницу.
Там вообще уровень драйверов, модульности и прочих ужасов -- мизерный.
CP/M это СТАНДАРТ, которому уже около 30 лет. И стандартом там принято использовать именно текстовый экран, параметры которого определяются через средства ОС. Надеюсь здесь я прав? ;)


Афтар жжот. Хотя бы потому, что оно и из рам-диска работает, и из НЖМД.
Может подскажешь как обратиться к FAT разделу моего "винта"? Только не надо говорить, что "напиши поддержку и будет тебе щасте!"... Знаю, что нужно писать, а свободного времени мало...


Потому как демы и игрушки нужно под LOAD "" писать, а не TR-DOS.
Вот и я про то же...


Стандартный спектрум -- это скорпион и пентагон. И не обсуждается даже.
Угу. Не буду. Ибо у меня KAY... :v2_tong:


Согласен записать в список стандартных и атм-турбо, если он научиться
память по-пентагоновски переключать.
Для ОСи это принципиально?
Был у меня пентагон... Но это уже тема другого разговора.


Technology Research Ltd -- советский стандарт?
TRL - это не стандарт! Советским "стандартом" стало использование изделия TRL везде где ни попадя... Но то было другое время, и на тот момент с альтернативами было туго. Так сказать "пожинаем плоды" :v2_cheer:

James DiGreze
06.04.2006, 12:12
Ну на некоторых ОС подстройка под машину идет так называемой "компиляцией ядра", т.е. по сути сборкой только нужных драйверов. Для спека это оптимальный вариант.
Честно говоря не очень большой знаток iSDOS, но там вроде тоже идет подготовка ядра для загрузки.
Да, в iS-DOS происходит сборка ядра из модулей, а потом, если есть желание, то это "сборку" можно сделать в виде единого целого, загружаемого ядра. Что довольно сильно увеличивает скорость загрузки, нежели через загрузку следуя файлу конфигурации. Но чревато глюками при запуске уникальной сборки на клоне с отличной аппаратной конфигурацией.

CHRV
06.04.2006, 12:32
Да, в iS-DOS происходит сборка ядра из модулей, а потом, если есть желание, то это "сборку" можно сделать в виде единого целого, загружаемого ядра. Что довольно сильно увеличивает скорость загрузки, нежели через загрузку следуя файлу конфигурации. Но чревато глюками при запуске уникальной сборки на клоне с отличной аппаратной конфигурацией.
Для этого есть дистрибутивный комплект, в котором самая минимальная конфигурация лежит для загрузки. А потом уже начинается работа по чтение мануала и "рук пользователя". Т.е. я хочу сказать что глюки по большей части являются следствием ленивости пользователя.
НО делать ядро включающее все и вся - мне кажеться это крайне неправильно, при наших то ресурсах.

icebear
06.04.2006, 20:08
CHRV
А какого спрашивается [censored] ты удалил моё сообщение? Власть почувствовал али как?

CHRV
06.04.2006, 20:53
CHRV
А какого спрашивается [censored] ты удалил моё сообщение? Власть почувствовал али как?
Я и свое удалил! А причина "оффтоп".
Не нравится - жалуйся на меня, если я не прав меня накажут.

По поводу власти - никто не мешает тебе стать модератором ;)

spensor
11.04.2006, 15:35
Может подскажешь как обратиться к FAT разделу моего "винта"? Только не надо говорить, что "напиши поддержку и будет тебе щасте!"... Знаю, что нужно писать, а свободного времени мало...
Offline-товарищ, конкретно ZET-9, попросил ответить на этот вопрос. В общем, пользуйтесь DNA OS, она это умеет. В настоящее время работает с FAT16 и CDFS. Ведутся работы в направлении FAT32, но быстро не получается:( Параллельно изучается DVDFS. Если кому надо, то в дистрибутиве находятся исходники, а также описание, которое очень рекомендуется почитать.
Устаревшую версию можно найти в приложении к ZX Info Guide. Свежая ищется у автора: zet9_zx(эт)mail.ru. Если надо, можно и на форум запостить.

Ne01eX
28.06.2006, 07:00
Господа, доступ на чтение в раздел http://zx.pk.ru/forumdisplay.php?f=34 дадите или как?

James DiGreze
28.06.2006, 17:26
А смысл? Там сейчас тихо и спокойно... Все только-только со своими заморочками разгреблись... Да и лето на дворе, отдохнуть не грех ;)

hi_soft
29.06.2006, 22:31
принципы новой ос:
Безглючность
антивирусность

ilyaspb
28.07.2006, 22:47
А где же ты видел вирусы под Спек?или я что-то пропустил?

GriV
30.07.2006, 11:25
нО тОлько Это бЫло скорЕй кАк прецедЕнт, А нЕ кАк систЕма.
конкрЕтно чтО зА вИрус бЫл Я сказАть нЕ могУ, нО я пОмню прИнцип егО дЕйствия - Он заражАл нулевУю дорОжку, и прИ смЕне дИска пытАлся себЯ записАть нА нулевУю дорОжку другОго дИска.
прямЫх деструктИвных дЕйствий Этот вИрус нЕ имЕл.

jtn
30.07.2006, 11:39
в Last Battle был авторский вирус - цеплялся к бейсик файлам и иногда выводил "жуткую" надпись. кое-что про вирусы было написано в ZX POWER 2.

imran
18.03.2007, 12:52
А где tcp/ip?

Vovoi
06.10.2007, 04:57
Но вот есть одна беда. Есть такие, типа кодеры, которые пишут
программы, которые портят этот рам-диск. У меня даже переключатель был, для запуска таких программ. Чтоб верхнюю
память отключать. НО ТОГДА И РАМ-ДИСК НЕДОСТУПЕН!
Вот это проблема.

А почему так происходит? Вот взять, например, ALASM. Ему нужно,
ну банка, ну две-три. Исходники хранить. А он из-за этого рам-диск
гробит. Потому что он не знает что там рам-диск. А даже если и знает, то не умеет им воспользоваться. А было бы нужно всего-то
создать в этом рам-диске файлик, выяснить в какую банку он попал
и ту банку использовать. Налицо плюс: состояние исходника надёжно
сохраняется между запусками аласма. Потому что другие программы,
если они тоже корректно работают с рам-диском, они не будут портить файлик, который был занять аласмом.

Больше того, тот же аласм можно временно прервать, записать
как @ файл на рам-диск, поработать с другой программой, и
вернуться обратно в аласм. Чем не многозадачность? И никто
этот аласм, резидентный в памяти, не испортит. Даже если параллельно два аласма запускать. Потому что они знают --
вот это мой файлик, а вот это чужой. И где какая банка.
<...>
ПОЛЬЗОВАТЕЛЬ ОДИН РАЗ ЗАГРУЖАЕТ В РАМ-ДИСК САМЫЕ
НУЖНЫЕ ПРОГРАММЫ И ПОТОМ
работает быстро!
Адаптацию существующих программ, портящих какую попало
память. Да, это проблема. К счастью, таких программ относительно
мало. И они или запускаются в 128-режиме. Или их можно пропатчить для выделения банок из рам-диска.

Но самое важное, что я хотел сказать -- каждый раз когда разговор
заходит о всяких там ОС начинают изобретать всякую херню. ZX-Windows, ZX-Linux, окна, мыши, ядра, "таскменеджеры". А хрен
ли с них толку, если я хочу в аласм код писать под этим всем?
А вот элементарная вещь -- рам-диск. Это же готовый менеджер
памяти. И вообще очень удобная штука. Без неё спектрумом пользоваться вообще нереально. Только если нет SMUC.
Впрочем, о чём тут писать. Писюканцы-эмуляторщики ниасилят.
Посидели бы за реальным недельку...


Перечитал я ветку ещё раз и это сообщение увидел более увлекательным и дельным.
1. Пишется драйвер RAM-диска таким образом, чтобы организовать хорошую работу программ (вероятно новых)
2. Программы пишутся таким образом, что после выхода могут запоминать свое состояние (редактируемый пиксель, печатаемый текст и прочее.)
3. Файловая структура электронного диска может быть какой угодно, даже иметь каталоги и не иметь тех ограничений, что присутствуют в TR-DOS (ведь в любом случае работа с е-диском идет только через драйвер).

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

Положительные стороны:
+ На нажатие мышки вне окна можно отреагировать сохранением ini-файлов программы на рам-диск и выходом в некую оболочку, которая тоже может сидеть в электронном диске.
+ Программа пишется просто, никаких заморочек насчет того, как расположить данные, как что и куда переключить. Все спрайты, музыка и уровни и прочая дрянь, грузится с рамдиска моментально, хоть по 5 файлов в секунду, хоть каждую секунду :)
+ Гибкая организация структуры диска. Хоть FAT, ISO9600 или какая там у сидирома? ;-) Ведь работа с диском все равно идет через драйвер.
+ Написание новой "системы" сводится к написанию очень качественного драйвера рамдиска.

Мне нравится подход к работе, предложенный fk0, а Вам?

---
зы:
У меня сам отремонтировался Спекки, пролежавший полгода в шкафу, может какие-то микросхемы за это время "размагнитились"?
:)))))))))))
В любом случае ура!
Теперь осталось как-то закинуть на 3.5 дискету ассемблер с хони-командером и считай можно работать и играть.

Добавлено через 19 часов 21 минуту
2All: Плиз, скинте в личку информацию о том, как на маленькую дискетку 3.5, отформаченную в реальном Скорпе, сбросить информацию в формате TR-DOS, если известно, что эта дискета сейчас установлена во флоп такого же типа, т.е. 3.5, но в IBM-PC.

зы:
* Боюсь к скорпу b-драйвом подключить родной 5.25, ещё опять все сломается.
* Заклеивал на дискетке окошко-720к и отклеивал вновь - ПЦ не видит (ессно, соотв. проги не видят, ПЦ и не знает никакого тырдоса :)
* AMD-Copy говорит, что диск не тырдос (тестировал с разными флопарями на 80486, Pentium1/200, Celeron-450, P4/3200)
* Norton Commander и опция "Копировать диск" отвечает, что с диском проблема.
* Disk Dupe точно так же Disk Error
* TeleDisk - пытается позиционировать головку, потом все замирает очень надолго.

С огромным диском 5.25 проблем нет, на вышеуказанных платформах, кроме Р4, все читалось как дисководом 360к, так и с 1200к через AMD-copy (thnx to Paul Pavlov). Тока я почти все дискеты 5.25 выкинул :)

Добавлено через 19 часов 24 минуты
* также в BIOS указанных компов выставлял как Flopyy 1.44 так и Flopyy 720k - никакого эффекта.

Black_Cat
06.11.2007, 07:50
Подход супер-загрузчика

1.Есть определенная модель Speccy (клон), у которого масса всяких наворотов в железе, да только вот используются они все разрозненно или не поддержаны вообще.

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

3.Создаем супер-коммандер с поддержкой HDD, CD и DVD. Забываем про многозадачность и универсальность, зато почти не теряем в совместимости. Такой коммандер живет очень долго (пока жив клон), но не получает сколько ни будь широкого распространения. Даже эмуляторщикам он не очень интересен, поскольку у них уже есть доступ к HDD, CD и DVD и масса других удобств.Подход СВЕРХ-супер-загрузчика:)

1.Есть (пока нет :) ), модель Speccy (клон), с ГРАМОТНО ПРОДУМАННОЙ идеологией развития, концепцией реализации этой идеологии в железе, с продуманной задокументированной и пригодной к использованию аппаратной поддежкой фунционирования ОС, но как всё новое, ессно не поддержаный ни одной ОС (или СВЕРХ-супер-загрузчиком, гордо именуемым ОС :) ).

2.Нужно создать нечто, работающее исключительно с данным клоном, используя возможности реализованные для аппаратной поддержки ОС в его архитектуре. При этом в функции этого «нечто» должна входить возможность запуска любого архитектурно-совместимого ПО (например демок заточенных только под Пент и являющихся для него архитектурно-совместимым ПО), ибо без этого клон будет неполноценным.

3.Создаем СВЕРХ-супер-коммандер с поддержкой флеш SD, CF (CD и DVD - не обязательно, а только как бонус когда-нибудь потом). Забываем про универсальность (т.к. возможности реализованные для аппаратной поддержки ОС есть только в этом клоне, но эти возможности хорошо задокументированы и предложены в качестве доработок всем желающим), зато почти не теряем в совместимости, а приобретаем многозадачность. Такой коммандер живет очень долго пока жив клон, а т.к. идеология развития клона продуманна, то и командер и клон продолжают развиваться и дальше, ограничиваясь только уровнем доступных электронных технологий, при этом не заменяя собой обычные клоны, а дополняя их как разновидность Спектрума, имеющая ОС и многозадачность, в то время как обычные клоны позиционируются как однозадачные для использования теми, кому достаточно быстро запустить какую-то одну задачу в монопольном режиме.

scl^mc
06.11.2007, 23:41
только чем тебе существующие клоны не угодили?

Addison
07.11.2007, 00:04
только чем тебе существующие клоны не угодили?
Зачем задавать глупые вопросы?:v2_laugh:
Сущесвующие клоны не помещаються в современную концепцию ZX-строения.:v2_devil:
Согласно новой концепции "ХИМЕРА" Спек должен обладать немо-бус, и поддерживать всю переферию современных PC. Ну это если в двух словах...:v2_finge:

Добавлено через 46 минут

Demo-подход.

1.Много всего сделано вокруг, но мне ничего не нравится, а самое главное среди этого нет моего или оно не самое крутое.

2.Хочу самореализоваться, занять место на пати, прописать свое имя… ну, в общем, что бы все удивились, и было круто.

3.Делаем что-то, что называем ОС. Она должна быть многозадачной, многопоточной, многоуровневой, многооконной, многоплатформенной, и еще много-много всего. Работать это должно не обязательно, главное обозначить. Затем выкладываем очередной макет (круто оформленный) на всеобщее обозрение и забываем про это дело навсегда. Какое то время все в отпаде.
:v2_clap2:


Если вы знаете о других подходах (уже имевших место быть или реализуемых), поделитесь этими знаниями. Думаю, всем будет интересно.
Вопросом на вопрос!
А вообще есть ли смысл создавать новую ОС с поддержкой HD и CD?

Мне видеться направление более мягкое, то есть с меньшими аппаратными изменениями.
Например, переход с 5.25 на 3.5 дисковод и соответственно дискеты. Это логично и очевидно, дисковод 3.5 и дискеты под него до сих пор имеются в продаже, емкость больше, надежность выше.
Плюс без обезображивания домашнего PC дисководом 5.25 это дает возможность перетаскивать софт, хранящийся на винте PC, на Спектрум.
Что касается непосредственно ОС, то мне видеться модернизации имеющихся дисковых операционных систем TR и +3 DOS. Эта работа уже частично начата.
При этом для TR ДОС имеется куча софта, и как говориться эта ДОС не нуждается в раскрутке и продвижении.
Идея о +3ДОС родилась, главным образом с покупкой некоторыми пользователями фирменного Спека +3, который по праву является лучшими промышленно выпущенным (фирменным, оригинальным) вариантом (моделью) Спека.
Всем известно достоинство +3 по отношению к TR ДОСу,
эта система интегрирована в интерпретатор бейсика и по сути вместе с ним является единой операционкой компьютера, в то время как TR ДОС сидит в Спеке как надстройка и создает пользователю кучу проблем!
Минус очевиден, много софта не заточено под систему +3, однако это достаточно легко решаемая проблема. Например, как в свое время адаптация tape версий под TR-DOS. Фактически дорожка уже проторенная!
Я пока еще сомневаюсь, что лучше переделывать фирменный Спек под TR ДОС или использовать +3 и адаптировать под него программы. Склоняюсь к последнему. Одним из движущих факторов при этом выступает понятие о ХОББИ, которое тут почитается. Ведь в этом случае откроется непочатый круг занятий, по созданию бутов и переделки программ, что вполне по силам многим из нас.

Хотелось бы услышать критические замечания:v2_devil:

Black_Cat
07.11.2007, 07:38
только чем тебе существующие клоны не угодили?c чего ты это взял?
при этом не заменяя собой обычные клоны, а дополняя их как разновидность Спектрума, имеющая ОС и многозадачность, в то время как обычные клоны позиционируются как однозадачные для использования теми, кому достаточно быстро запустить какую-то одну задачу в монопольном режиме.просто я предложил более оптимистичный подход, чем третий вариант Conan'a - не надо стремиться сделать ОС для всех клонов, надо сделать её для одного нового клона, имеющего для этого соответствующую аппаратную поддержку, а для желающих модернизировать свой старый клон дать схему и рекомендации. В результате получаем одну развивающуюся ветку как в плане железа, так и осестроения + все остальные клоны, которые позиционируются как принципиально безосные. Такой подход позволит не распыляться на всю необхватную широту клоностроения и осестроения, а сконцентрироваться на одном проекте в железе и одном в осестроении, что вполне в современных условиях разумно и целесообразно.

scl^mc
07.11.2007, 22:11
c чего ты это взял?
да так просто

1.Есть (пока нет ), модель Speccy (клон), с ГРАМОТНО ПРОДУМАННОЙ идеологией развития, концепцией реализации этой идеологии в железе, с продуманной задокументированной и пригодной к использованию аппаратной поддежкой фунционирования ОС, но как всё новое, ессно не поддержаный ни одной ОС (или СВЕРХ-супер-загрузчиком, гордо именуемым ОС ).

А вообще есть ли смысл создавать новую ОС с поддержкой HD и CD?
вообще-то есть, ибо: а) винты и сидюки есть; б) хобби никто не отменял

эта система интегрирована в интерпретатор бейсика и по сути вместе с ним является единой операционкой компьютера, в то время как TR ДОС сидит в Спеке как надстройка и создает пользователю кучу проблем!
никаких проблем в этом плане никогда не испытывал, кроме плавания начала бейсик-программы (23755 и 23868, 112 байт, необходимых tr-dos для работы), хотя это не проблема. да и интеграция в интерпретатор бейсика есть - юзаются стандартные бейсиковские команды

Добавлено через 2 минуты

Ведь в этом случае откроется непочатый круг занятий, по созданию бутов и переделки программ, что вполне по силам многим из нас.
ключевой фактор - распространенность tr-dos'a, ставшего де-факто стандартом в ex-ussr. нет, если кто хочет - пусть хоть под +3dos, хоть подо что угодно делает. только это уже будет работа в стол. да и не так много нас уже осталось. к тому же дискетизация в свое время денюшку приносила

Addison
07.11.2007, 22:41
к тому же дискетизация в свое время денюшку приносила
Ага, как винчестер подкручивать к правому краю левого бока, так Хобби, а как элементарно три строчки загрузчика переправить, так это без денег не пойдет.
Весь софт никто и не собирается перетаскивать, все и не нужно, по мере необходимости адаптировать!


никаких проблем в этом плане никогда не испытывал
Вопрос в удобности, что лучше писать целую строчку всяких операторов или просто написать "save", как во всех нормальных компьютерах?
С учетом первого пункта про Хобби, получается приятнее сделать своими ручками что-то а потом пользоваться по человечески Спеком.
Конечно, приворачивать +3 к нашим клонам абсурдно, речь о +3 Спеке, есть ли смсыл туда ТР-дос прикручивать. Я сначала думал, что без него никак, а попользовавшись +3дос поменял позицию.



а) винты и сидюки есть
И что толку от того что они есть? Нужны ли они спеку? Есть ли потребность в их использовании? Конечно удобно иметь весь софт у себя на Спеке... А с другой стороны, он весь то и не нужен, на двух трех дискетах поместится все, что обычно юзаешь, остальное можно и на PC хранить...
Хобби? пожалуйста, но при привинчивании винта, из компьютера Спектрум исчезает, не забывай.

ASDT
08.11.2007, 06:50
"Вопрос в удобности, что лучше писать целую строчку всяких операторов или просто
написать "save", как во всех нормальных компьютерах?"

Это надо решать переписывая бейсик и трдос, это основное решение ...

"к тому же дискетизация в свое время денюшку приносила"

О денюшках пора забыть ...

"а) винты и сидюки есть"
"И что толку от того что они есть? Нужны ли они спеку?"

Нет. Раньше это был спорный вопрос ... Но теперь есть разные карты ...

А делать ос ради деланья ос - бесполезная трата времени.

ng_dead
08.11.2007, 11:50
+3DOS хорошая. мне нравится:) я даже статейку про нее накатал в SpeccyWiki.
http://zx.nmihouse.com/x_/index.php/%2B3DOS

Addison
08.11.2007, 19:59
статейку про нее накатал в SpeccyWiki
а что это за устройства M и T, если подробно, они реализованы?
я как-то этот момент упустил

ng_dead
09.11.2007, 12:22
а что это за устройства M и T, если подробно, они реализованы?
я как-то этот момент упустил
М - виртуальный диск в памяти выше 48кб.
Т - кассета.
возможны команды типа:

copy "a:имя_файла" to "m:имя_файла" - скопируешь в эл. диск.
copy "a:имя_файла" to "t:имя_файла" - с диска на ленту.

если учесть возможность маски, вообще красота. все просто и элегантно. причем из самого Бейсика. куда там TR-DOSу с его рандомайз-ремами:)

Sonic
09.11.2007, 18:00
Кстати тут помнится кто-то к бездисковым машинам цеплял мультикарту от PC и переписывал TR-DOS под ее FDC. Так вот, в +3 используется такой же контроллер.
И еще никто не мешает сделать версию +3DOS под бетадиск...

Addison
09.11.2007, 21:31
Так вот, в +3 используется такой же контроллер.
Это известно!

И еще никто не мешает сделать версию +3DOS под бетадиск...
Не имеет смысла, проще саму БЕАТу улучшать. Хотя это могло бы позволить пользоваться софтом под +3 спек, но он особого интереса не вызывает. А вот софт который под ТР-ДОС пользователям +3, ну по крайней мере нашим, необходим. И если был бы ТР-ДОС под контроллер 765 или как он там называется, я уже не помню - это было бы чудо! Можно было бы переделать +3 спек под систему тр-дос одной лишь перешивкой банка пзу! Но кто эту вещь сейчас сделает! Мне с нуля это делать тяжело, многому придется научиться и много придется потратить времени, а пользы минимум: удовлетворить свое самолюбие и помочь 10-ку счастливых обладателей +3. Хотя я подумаю над этой идеей. Но вначале все-таки возьмусь скорее всего за адаптацию ТР-ДОС программ под +3ДОС, это хотя бы даст сиюминутную пользу, позволит запускать любимые игрушки на реальном спеке, ну и плюс позволит подучиться как TR, так и +3 DOSу. А уж потом видно будет.
Вообще TR-DOS под 765 можно было бы сделать, если быть готовым спецом в этой области, и хотя бы дотошно знать ТР-ДОС, тогда можно было бы его в краткие сроки загнать в +3 спек, но боюсь, что среди владельцев +3 таких спецов нету.

Добавлено через 27 минут

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

wizard_dt
09.11.2007, 22:31
это круто, можно использовать эту функции при создании бута!
Можно узнать как?

Addison
09.11.2007, 22:52
Можно узнать как?
Ты никогда не создавал виртуальный диск в MS-DOSе?
И не пользовался им при помощи командера?
Можно заранее научить бут общаться с таким диском, чтобы он был доступен без лишних телодвижений.

psndcj
10.11.2007, 00:09
А вот софт который под ТР-ДОС пользователям +3, ну по крайней мере нашим, необходим.

есть очень большое сомнение в количестве таких пользователей (особенно наших) - а для одного-двух человек чтото делать - как-то уж очень бессмысленно время тратить...

спек в ex-USSR - это имхо пентагон128+ym+trdos... для демо по крайней мере уже навсегда!

Addison
10.11.2007, 00:22
есть очень большое сомнение в количестве таких пользователей (особенно наших) - а для одного-двух человек чтото делать - как-то уж очень бессмысленно время тратить...
А я этого и не отрицаю, ниже приведенной цитаты так и было написано.
Я думаю, что на данный момент таких максимум с 10-oк найдется по всей России и СНГ.
Поэтому и вижу просто адаптацию программ под +3ДОС своими силами и то, что нужно.

James DiGreze
12.11.2007, 06:16
TRDOS конечно можно переписать под 765, но как быть с тем софтом, коего немало, который юзает ВГ93 по портам? - НИКАК! Потому нет смысла заморачиваться.

Addison
12.11.2007, 18:13
но как быть с тем софтом, коего немало, который юзает ВГ93 по портам?
Переделать софт.
Или забить на него для +3 с TR-DOS.
Что там за программульки, которые нужны?
Небось, пара игр?
Большая часть софта, которым я пользуюсь изначально для Tape написана, а по сему есть предположение, что им чхать на эти порты.
Хотя Ваше замечание, в принципе, уместно.
Спасибо.

Black_Cat
20.12.2008, 23:23
TRDOS конечно можно переписать под 765, но как быть с тем софтом, коего немало, который юзает ВГ93 по портам? - НИКАК! Потому нет смысла заморачиваться.Дык давно переписали :) , ещё в 94 ..правда не под +3, а под ISA, и ессно всё через CALL #3D13, а вся левизна по портам как всегда пошла лесом..
Цель создания этой темы - определить основные принципы, так сказть, "идеологию" ОС.:) "идеология" здесь: http://www.zx.pk.ru/showpost.php?p=170765&postcount=18

Sayman
21.12.2008, 19:30
:v2_crazy:отец русской демократии имел ввиду вот это:

Спектруму нужна обычная софтовая ось, и всякое осестроение в этом направлении считаю изначально абсурдным монстростроительством и пережитком эпохи бизнесстроительства.
:biggrin: