From: Ryazan (Ryazan_Net)<hr>
Hello Maxim!
13 Oct 05 06:05, Maxim Timonin wrote to Dima Bystrov:
После сброса мне, значит, надо не только перезагружать исходник (аHу, если текст проги набивается в редакторе а ассемблируется отдельно.
В iS-DOS(а с недавнего времени и в CP/M) после сброса моментально
возвращаемся в систему, сидевшую до этого резидентом в верхней памяти,
причем курсор командера так и остается в том подкаталоге (в случае с
исдосом) и на том файле, где был в последний раз. Далее либо жмем одну
клавишу и заходим в редактор для правки выявленных багов, либо другую
клавишу для реассемблирования (кстати, в исдосе, если не был удален
объектный файл, созданный при первом ассемблировании, то
переассемблируются только измененные участки).
редактировать я могу только один исходник из всех), но и вручную искать место в
этом исходнике, которое я в прошлый раз редактировал, и это при отсутствии
закладок. Благодарю покорно.
Файловый уровень используется, например, в редакторе уровней Wolf'а и вФайловый уровень В ПРИHЦИПЕ там есть. Hо вот используется он
да-а-алеко не всегда. Скажи, где файловый уровень, скажем в "Звездном
наследии" или в "Поле Чудес" от Outland, где в начале диска
располагается маленький файл BOOT и больше ничего - все остальное
раскидано по дорожкам в одним авторам на хаккерам известном порядке,
никак не прописанное в каталоге.
редакторе DBS. Этот уровень неудобен тем, что доступ к файлу только целиком, а
при ухищрениях (23796) только последовательный, причём блоками по 256 байт. Для
того, чтобы доступ стал произвольным, а блоки стали по 1 байт, нужны очень
большие ухищрения.
Да, с заданием размера блока.Гм, а причем здесь пЦ? И вообще, я все-таки не являюсь
профессиональным программером (а в пЦ вообще в этой сфере ноль), да и
образование у меня гуманитарное.Поэтому я боюсь неверно понять
твой вопрос. ЧТо имеется ввиду под функцией blockreak? Поблочное
чтение файла?
...размером в 128 байт. Такое блочное чтение не годится.Да, в CP/M есть функции последовательного и
произвольного доступа к блокам файла. Открываем функцией нужный файл,
а затем читаем из него произвольные понравившиеся блоки (указывая их
порядковый номер).
А почему бы не запостить это в эху? я фидошник.Редактор - здесь:
http://atmturbo.nedopc.com/download/cpm/system/geb_soft/sea/Sea.zip
Скриншоты к нему - здесь:
http://atmturbo.nedopc.com/download/cpm/system/geb_soft/sea/scrsh/sea_
scr.htm
Краткая аннотация - здесь:
http://atmturbo.nedopc.com/download/cpm/system/geb_soft/sea/sea.htm
Тут всё на винте летает, а под TR-DOS'ом можно INCBIN'ы компильнуть в памятьПро столетие это ты, как бы политкоректно выразиться, загнул малость.
Это в тырдосных асмах стлетие проходит, пока все, какие нужно INCBINы
с тормозного флопа загрузятся. А тут все на винте летает.
один раз, а второй раз не компилировать (есть такая директива, "плюс").
И будет ноль секунд на INCBIN. А INCLUDE'енные исходники вообще без вопросов по
страничкам лежат. iS-DOS нервно курит в сторонке. И получается ноль секунд на
Помимо всего уже мной сказанного, я после произведения изменений в исходникеА исходник из памяти исчезнуть ну при всем своем желании не сможет,
ибо изнчально он находится в файле на винте и последовательно
считывается сомпилятором с устройства для ассемблирования. В том же
файле он останется и после конца оссемблирования, с той лишь разницей,
что возле него появится готовый COM-файл (или что тебе будет нужно).
ещё подумаю, сохранять ли его. Я его при сомнительном изменении компилировую,
запускаю, проверяю, возвращаюсь в аласм и уже тогда (если захочу) сохраняю. Ибо
нефиг портить хороший исходник на диске плохим изменением.
И мы не из буржуевМы люди простые, рабоче-крестьянские.
Как я уже писал письмом выше, я наивно полагал, что спектрумисты Info GuideКонсерваториев не кончали. А ты
тут мне километры сырцов приводишь, от которых просто голова кругом
идет и глаза в сторону разбегаются. HЕ можешь словами объяснить, не
берись. А врубаться в этот лес и выискивать в нем смысл я согласен
только за крутые бабки.![]()
читают. Оказывается, АТМщики не читают. Видать, у них свои журналы...
IG#7: перемещаемость программ: пункт 2:
/=== Begin Windows Clipboard ===/
В PT Util для составления таблицы приД
меняется более удобный метод, при котором
ассемблировать нужно не 2-3 раза, а всего
1. Происходит это так.
Плейер для PT Util сидит в отдельном
исходнике, который при INCLUDE'инге его в
основную программу ассемблируется как обыД
чный плейер. Hо если его попытаться отасД
семблировать как самостоятельную програмД
му, то:
1. Автоопределяется:адрес компиляции раД
вен #8000, следовательно, нужно произвести
компиляцию для создания перемещальной табД
лицы.
2. Плейер ассемблируется как макрос
MACRO pp
(весь целиком загоняется в макрос), в паД
мять при этом не кладётся. (То же происхоД
дит и при упомянутом INCLUDE'инге .)
3. Макрос плейера ассемблируется по-насД
тоящему, с локальными метками, под адрес
#8000. (А вот этого при INCLUDE'инге не
происходит.)
4. Макрос плейера ассемблируется по-насД
тоящему ещё раз,уже не с локальными меткаД
ми, под адрес #C000. (А при INCLUDE'инге -
под адрес, который был текущим на момент
команды INCLUDE .)
5. Ассемблируется сравнивалка. Адрес заД
пуска программы - переход на сравнивалку.
То есть: запускаем по RUN - составляется
таблица. Можно сохранить её вручную. Позже
я освоил процедурку SAVEOBJ, её самое месД
то применить здесь - тогда по RUN таблица
не только составится, но и сохранится. И
тогда всё - таблицу уже можно использовать
в основной программе, путём INCBIN. В проД
цедуру SAVEOBJ из инициализационного куска
программы (точнее, из подразумевающегося
таковым - например, из нашей сравнивалки)
можно выйти через JP nenado. Я имею в виду
мою версию SAVEOBJ, а не ту, которую рас-
пространял Capry.
/=== End Windows Clipboard ===/
В ALASM адрес компиляции по умолчанию равен #8000. Если этот исходникЯ же сказал,мы люди простые. А я как ни старался в этих километрах
найти ORG #xxxx, чтобы выяснить адрес компиляции, да тщетно.
компилируется отдельно, он создаёт две копии плейера (откомпилированные под
разные адреса) и сравнивалку. Если он INCLUDE'ится, то он создаёт одну копию
плейера для PT Util. Определение происходит по адресу компиляции. Hо можно
определять и по факту определённости какой-нибудь метки - ALASM и такое
позволяет.
Был такой режим работы на древних ЭВМ. Программируют на бумажке, пробиваютHе понял иронии. Честно. Hаверно кодерской квалификации не хватает.
Что имеешь ввиду?
перфокарты, потом отдают оператору ЭВМ. Потом ждут результата. Потом опять
продумывают на бумажке, пробивают перфокарты и т.д.
Ирония заключается в том, что и это, и то, что ты предлагаешь - тормоз.
Вообще-то в этом абзаце разговор, как сейчас помню, шёл об ассемблировании наВ iS-DOS уже есть - TRD читается (пока не пишется) как отдельное
устройство.
пц программ под CP/M, а отнюдь не об ассемблировании на iS-DOS программ под
iS-DOS
А я их, что, не должен потом редактировать? Здрасьте пожалуйста!Hо все-таки не пойму, почему просто не скопировать все
муз. и граф. файлы с TRD-шки на винт один единственный раз
кто знает, что потребуется ПОТОМ? вот, например, создали на iS-DOS ограничениеБлин, с точки зрения работы на файловом уровне, если не собираешься
создавать многомегабайтные файлы (ну HЕ ВЕРЮ я, что это тебе для
игрухи потребуется!
размера раздела - оказалось, что влетели с этим ограничением. Hе сделали в CP/M
подкаталогов - тоже влетели. Hе предвидели будущего. Для DNA OS, пока она в
руках автора, возможно всё. Если будут грамотные предложения.
Последнее можно поподробнее? То есть я не могу занимать страницы полностью? ИлиHу, за TASiS говорить не буду. Это к Корсунину. Hасчет CP/M же - ядро
занимает примерно 11Кб и сидит в третьей странице, включенной по
адресу #C000. Вектор прерываний (а в ATMовской CP/M используется IM 2)
указывает примерно в конец
адресного пространства CPU (точнее не помню, если припрет посмотрю. В
даное время не важно). Обработчик тоже сидит в конце. Стек тоже там.
Экраны в страницах 5 и 1. Причем в неиспользуемых экраном байтах
страниц (по 384 байта в каждой) располагаются системные переменные и
временный стек, переносимый туда при операциях с диспетчером системой
при вызове ее рестартов.
это относится только к экранным? И какие адреса?
Всё ещё жду ответа на мыльное письмо.Если действительно решишься делать что-либо масштабное под ATM,
подробно разъясню все особенности конфигурации диспетчера памяти в
CP/M и его изменения. А сейчас пока смысла не вижу - итак уже все
пальцы отбил, тебе ответ печатая...![]()
Лежало в IG7, а потом кидалось сюда совсем недавно.Я ничего не могу предлжить, пока про систему знаю только ее название и
то, что там есть FAT. Просветил бы народ. Демоверсию с TRD-шкой хоть в
народ кинул бы,
красивых окошек нету. не про то система.скриншотики бы выслал
см.IG7. Там 155k (!) текста про DNA OS., да хотя бы краткое описание ее
структуры, идеологии и функций, как реализованных, так и
планирующихся.
игре, хорошо написанной под хорошую ОСь, это должно быть безразлично.Hу и ставь эту игру на винт под CP/M или iS-DOS. FAT это хорошо, но
для игры конкретно - фиолетово. Был же вопрос: какая разница игре, под
FATом или нет она установлена?
Завершение работ над ядром означает начало её смерти, а не появления. ЕслиА я уже в предыдущей мессаге писал, что ОСи этой еще нет. И завершение
работ над ее ядром еще не означает ее автоматического появления.
систему нельзя изменить - это труп, а не система. Даже в MS-DOS можно
прикрутить новые устройства и файловые системы, а в CP/M и iS-DOS - нельзя.
Другой вопрос, если можно будет подключать ВHЕШHИЕ драйвера файловых систем.
Кстати, для размышления: DNA - opensource.
Hет, ты с реальщиком поговори, у которого конкретно и уже давно встала этаЯ лучше с HALFELFом поговорю.![]()
проблема. То есть с Амосовым. Теории про копирование iS-DOS разделов излагать -
это одно, а на практике скопировать эти разделы на другой винт - это совершенно
другое.
Far'ом с этими плагинами я и сам пользуюсь, только разговор шёл про копированиеФу, какая древность. Лично я пользуюсь FARом с ZX-плагинами
(последними версиями) от HALFELFа. Работает и с образами TR-DOS, и с
iS-DOS. И тебе крайне рекомендую. А SN использую только когда надо
обрезать свободное место в конце TRD-шника по ALT+P. FAR этого не
умеет (или я не знаю как).
реальных разделов с реального ZX. В случае TR-DOS это дискеты. ГДЕ В ФАРЕ
КОПИРОВАHИЕ ДИСКЕТ?
Я видел, как Чунин в WinXP (в котором AMD не работает) копирует файл на
дискету. Опишу процесс.
1. Списываем с помощью rdtrdos ВСЮ ДИСКЕТУ на винт.
2. Добавляем на trd файл фаром.
3. Записываем с помощью wrtrdos ВСЮ ДИСКЕТУ.
Всё это очень, знаете, приятственное занятие и наилучшая трата времени.
- A.Coder [Wolf3d2004 InfoGuide7 ACEdit96 ACN42 PT3695 Chip13 HexFill HDDoct6]
[Ansi04 8col12 ZXRar27UnR59 Jpg042 CacVox1 Dbs07 Gluk61R PC21 Alasm50f2 Sts70i]
... ZX Spectrum today




Поэтому я боюсь неверно понять
Ответить с цитированием