User Tag List

Показано с 1 по 10 из 11

Тема: The Story Writer v1.00

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    23.02.2005
    Адрес
    Донецк
    Сообщений
    486
    Спасибо Благодарностей отдано 
    29
    Спасибо Благодарностей получено 
    114
    Поблагодарили
    73 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию The Story Writer v1.00

    The Story Writer v1.00 - это наконец-то случилось, а сколько не дождались, а сколько не дожили, а скольким и сейчас это совершенно не нужно. Но, так или иначе представляется на ваш суд.
    История подобных редакторов начинается с ZX/IBM Editor, тогда в уже забытом году, автор ZX Assemblera v2.5 Олег Хохлов, сделал редактор на базе базе Ассемблера, добавив в него функцию работы MS-DOS Дисков и печати текста.
    Далее историю продолжили ребята из FD_SOFT (FD- что то вроде четвертого измерения). Выпросили у меня исходные тексты ZAsm 3.0 для создания редактора Story Editor, потом этот редактор плавно начал превращаться в .. среду разработки игр. Начало было у них хорошее, приносили показывали, и все бы получился, но случилась беда! В виде новенького тогда еще Пентиума 2. С ума сойти, для меня это была вторая потеря. Первой жертвой монстро-строителей IBM пал мой со-ZAsm`овец Костя Афендиков, он попал еще под х486.
    И вот, через тернии .., он таки появился. Печатать средствами ZX сегодня вряд-ли кто то догадается, как и читать ms-dos диски (как и пользоваться подобными редакторами), впрочем это все можно и сделать. Ладно, что то весь запал стеба из меня уже вышел, и так как это все таки "The Story Writer" - история первая. В общем можно и не читать, на диске этот же файл, с такими же ошибками.

    Код:
                               История 1
    
                              О редакторе
    
         Это редактор ZAsm'а, практически не измененный, со своими
    плюсами и наверное минусами, если они есть.
    
                             Чем отличается:
    
         Во первых, за счет удаления оверлейного буфера и части пп,
    программ компилятора (калькулятор) в том числе, размер буфера
    под текст увеличился, сейчас гляну, до 39210 байт.
    
         Потому что ZAsm'овский редактор, с версии 3.10, находится в
    странице памяти, в 3-ей если конкретно. Внизу мелкие подпрограм-
    мы и буфера различного назначения, такие как буфер редактируемой
    строки, буфера имен файлов, interrupt (257) и прочее.
    
         The Story Writer, в отличии от ZAsm'а не ведет историю за-
    гружаемых файлов, счел это лишним, вместо этого в пунк меню EDIT
    вставил Cut / Copy / Paste, а-ля Clipboard.
    Впрочем, я не знаю сколько нужно исписать страниц, что бы понять
    необходимость того или иного.
    
         Выход из редактора отсутствует, ZAsm он же Hide, то есть
    прячется в страницах памяти при выходе из него, здесь же этого
    нет, добавить что то вроде Reset Dos или Reset Basic - да ну,
    до кнопки быстрее дотянитесь.
    
         Рам диск, в редакторе я решил от него отказаться, во избе-
    жания гибели ваших / наших story, в случае чего.
    
         Calculator - вроде как за ненадобностью.
    
                            Что же осталось:
    
         Сам редактор не претерпел никаких изменений, более того
    оставил распакову мнемоник z80 (токенизация ZAsm), сделано для
    того что бы в случае чего, можно было просматривать файлы на
    ассемблере, можно и редактировать, но затем в ZAsm'е прогнать
    Import, во избежания Syntax Error.
    
         Так же остались и работеют: поиск и замена, переход на
    строку по ее номеру, закладки, таблица символов с возможностью
    набора строки, с последующей вставкой в тект. Рисование линиями
    впевдографики, как и ручной ввод в режиме GF.
    
         Для начала ознакомимся с основным меню редактора, оно не
    особо богато, так как большая часть программ вызываются на пря-
    мую из редактора по COMMAND. К command мы еще вернемся, а сейчас
    основное меню.
    
         Основное меню сейчас имеет следующие пункты:
      File    Edit    Info    Options
         File - операции с файлами;
           New   - очистить текст;
           Load  - загрузить файл;
           Merge - подгрузить файл в конец существующему;
           ------
           Save  - сохранить вашу story;
           Save Block - сохранить отмеченный участок (блок);
    
         Edit - операции с блоком:
           Cut - отмеченный блок записывается в файл "blk_oper.tmp"
                 и удаляется из текста;
           Copy - происходит только запись отмеченного участка;
           Paste - в позицию курсора будет вставлено содержимое
               файла "blk_oper.tmp";
    
         Info - вывод информации о версии редактора, а так же файле.
    
         Options - Настройка редактора:
           Setup - настройка непосредственно редактора;
           Colour - раскраска редактора. Внимание!
               Text Attr, Block Attr, Light Text и Light Block не
               должны иметь одинаковых значений. По идее у вас это и
               не получится.;
           Load Font - загрузить другой шрифт. В 4-х пиксельном ва-
               рианте выбор не богатый, но он есть.
    
         Здесь стоит сказать, шрифт в немного необычном формате, уже
    писал, такой способ хранения шрифта и вывод символа/строки най-
    ден в игре Micronault One Пита Кука. Он ни чем не лучше, но и не
    хуже любого другого способа хранения/вывода. Вот такой.
    
            Save Setup - сохранить настройки в файл "tsw1_00.set";
            Load Setup - перезагрузить настройки из "tsw1_00.set",
    если он конечно имеется. Для возврата к оригинальнмы настройкам,
    данный файл нужно удалить.
    
                        Теперь о самом редакторе
    
         Наверное стоит сказать, что длинна строки в редакторе может
    быть не длиннее 128 байт, все что выходит за границы - пропадет.
    в экране отображается 64 символа (шрифт 4х8).
    
         The Story Writer использует принятую на IBM модифицирован-
    ную альтернативную кодировку (866), являющуюся де-факто стан-
    дантом на zx spectrum, хорошо, на пост-СССР пространстве.
    
         Это значит, что Вы можете использовать заглавные и строч-
    ные, латинские и русские буквы, а также разнообразные псевдо-
    графические символы.
    
         Раскладка  русских клавиш на клавиатуре аналогична принятой
    в текстовом редакторе ZX-WORD, учтены раскладки "йцукен" и
    "яверты", твердый знак "ъ" вводится нажатием SS+D (символ '\').
    
         Рассмотрим его по ближе. В вержней строке редактора отобра-
    жается имя файла, номер строки и колонки, код символа под кур-
    сором и режим клавиатуры. Да, код символа вроде бы здесь и не
    нужен, ну посмотрим, может в итоге я его удалю.
    
         В нижней строке - индикатор занятости буфера текстом и по-
    ложение в этом тексте.
    
                    Переходим к клавишам управления:
    
            CS + 1 - Edit - Переключение Рус / Lat;
    
            CS + 2 - CapsLock - Переключение  БОЛЬШИЕ / маленькие,  кроме  того,
    смена регистра буквы на противоположный возможна ее нажатием
    вместе с клавишей CS ( Caps Shift);
    
            CS + 3  PageUp - Страница назад;
    
            CS + 4  PageDown - Страница вперед;
    
            CS + 5,6,7,8 - перемещение курсора;
    
            CS + 9  Delete - Удаляет символ в позиции курсора, если
    курсор находится в конце строки, то при включенном режиме INSERT
    позволяет конкатенировать (склеивать) строки;
    
            CS + 0  BackSpace - Удаляет символ слева от курсора.
    Если курсор находится в начале строки и включен режим INSERT, то
    при установленном флаге BackSpace Indent, состояние которого
    можно посмотреть или изменить в Options \ SetUp \ Backsp indent
    удаление переносится на конец предыдущей строки;
    
            SS + q  Home - Курсор в начало строки;
    
            SS + e  End  - Курсор в конец строки;
    
            SS + w  INSERT - Переключает режимы вставки / замещения
    вводимых символов. Возможно Вы уже заметили отсутствие индикато-
    ра Ins/Over, так вот, эту функцию взял на себя курсор, точнее
    его вид: '_' - вставка, '-' - замена;
    
            Enter - Перевод строки. При включенном режиме INSERT
    нажатие Enter позволяет разбивать строку на две, либо вставлять
    новые строки, если курсор находится в конце строки. В любом слу-
    чае, если включен режим Auto_Indent (автоотступ), а переключить
    его можно в Options \Setup \Auto indent, курсор устанавливается,
    либо под первым символом  предыдущей строки, что очень удобно
    при вводе текстов на ассемблере, либо на фиксированную табуляцию
    , что одобно при наборе обычного текста, в зависимости от состо-
    яния флага TAB, который находится в Options\SetUp\Tabulations;
    
            CS+Space  TAB  - Табуляция. В зависимости от установлен-
    ного режима (см. Enter), табуляция может быть контекстной, т.е.
    по предыдущей строке, или фиксированной. Данные табуляции можно
    увидеть в Options\SetUp\.
    
            CS+Enter  MarkLine - Пометка в блок строк текста. Уста-
    нановив курсор на первую помечаемую строку, нажимайте MarkLine
    требуемый участок текста не будет помечен и выделен другим цве-
    том. Помечать большие блоки быстрее другим способом (см. далее).
    Помечать можно лишь строки целиком.
    
            SS+Enter  DeleteLine - удаление всей строки, на которой
    находится курсор.
    
            SS+Space - Main Menu - выход из редактора в основное
    меню.
    
            CS+SS  Extend_Mode или COMMAND:
    
         В первую очередь можно нажать клавишу "H" и получить окно
    со списком комманд. Здесь же рассмотрим подробнее:
    
            COMMAND: Перемещения по тексту
        ----------------------------------------
         CS+5 - перейти в начало блока;
         CS+8 - перейти в конец блока;
         CS+6 - перейти в начало текста;
         CS+7 - перейти в конец текста;
            J - перейти на строку номер N..;
            Y - закладки, запонить позицию в тексте;
            T - перейти на одну из 10-ти ранее сохраненных точек.
    
            COMMAND: Редактирование
         ----------------------------------------
            L - удалить символы справа от курсора;
         SS+L - удалить символы слева от курсора;
         CS+9 - удалить пробелы от курсора до следующего слова или
                слово до следующего пробела;
    
         CS+0 - удалить пробелы слева от курсора и переместить кур-
                сор к предыдущему слову;
    
         SS+K - восстановление строки удаленной: SS+ENTER, L, SS+L;
                Рекомендуется использовать для дублирования строк.
    
         U - Отмена изменений в строке (Undo)
    
         CS+SPACE - табуляция строки, т.е. строка  перемещается
                вместе с курсором.
    
         ENTER - помещение стринга из ASCII таблицы в строку редак-
               тора с позиции курсора.
    
         CS+ENTER - действие аналогичные ENTER, но курсор остается
                на месте.
    
            COMMAND: Операции с блоками
         ----------------------------------------
    
            B - отметить начало блока;
            E - отметить конец блока;
            C - Копирование блока (Copy);
            D - Удаление блока (Delete);
            M - Перемещение блока (Move);
            N - Погасить отметку;
         SS+C - запись блока на диск;
         CS+M - вставка блока с диска (Paste);
    
         Copy - Копирование блока в текст выполняется начиная с те-
    кущей позиции курсора.
    
         Move - Перемещение блока аналогично последовательному при-
    менению  операций Copy, Delete.
    
         Paste - Вставка блока с диска аналогична последовательному
    выполнению команд Merge, Move.
    
            COMMAND:  Операции поиска
         ----------------------------------------
    
         S - поиск (Search);
         X - продолжение поиска (NextSearch);
         R - замена (Replace);
    
         При вводе образца для поиска символ "?" является 'любым',
    если не стоит первым в строке.
    
            COMMAND: Операции с диском
         ----------------------------------------
            3 - Загрузка текста (Load);
         SS+3 - Загрузка файла в конец текста (Merge);
            2 - Запись текста на диск (Save As);
         SS+2 - Запись текста на диск с текущим именем (без ввода
               имени файла), сохранение изменений;
         CS+M - Вставка файла в текст (Paste);
         SS+C - Запись блока на диск;
    
            COMMAND: Окна основного меню.
         ----------------------------------------
         o - Options
         i - Information
    
            COMMAND: Разное
         ----------------------------------------
    
         SS+z - выход в ZAsm, если он загружен. Наличие не проверя-
                есться, это тестовый выход, но я могу забыть убрать.
    
            F - вызов таблицы символов (см. ASCII_Table);
    
            G - вкл/выкл. ввода псевдографики;
    
         CS+2 - переключение режимов рисования линий, режимы бывают
                следующие:
    
        + - рисование одинарных линий;
        + - рисование двойных линий;
        E - Erase - стирает символ над курсором, рисование пробелами
            Очень удобно вытирать вертикальные надписи;
    
        F - Fill - помещает в позицию курсора символ, посмотреть и
            переопределить который можно в ASCII таблице.
    
         пусто - просто редактирование текста.
    
         CS+1 - вкл/выкл режима Line Drawing При включении LineDraw
    символ указывающий режим рисования становится инверсным.
    
         Для счастливый обладателей расширенной клавиатуры пред-
    усмотрен более удобный способ использования Line Drawing'а
    
         SS+CapsLock - переключение режимов рисования линий;
    
         SS+Cursor keys - рисование;
    Кроме этого, при 'пустом' режиме рисования линий, возможны сле-
    дующие операции:
    
         SS+Cursor Up - перевод слова в верхний регистр;
         SS+Cursor Down - в нижний регистр;
         SS+Cursor Left - на слово назад;
         SS+Cursor Right - на слово вперед;
    
        И еще ...
    
         SS+Edit - перекл. - Gfx;
    
         SS+Page Up -
         SS+Page Down - прокрутка текста без изменения позиции кур-
             сора в экране
    
     SS+Delete    - аналог Command:Delete
    
     SS+Backspace - /-/-/-/-/-/-/-:Backspace
    
                             ASCII_Table
    
        и выглядит приблизительно так:
    
    г========== ASCII Table: ==========¬
    ¦                                * ¦
    ¦         
     ¤¶§ ¦
    ¦  !"#$%&'()*+,-./0123456789:;<=>? ¦
    ¦ @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ ¦
    ¦ `abcdefghijklmnopqrstuvwxyz{|}~ ¦
    ¦ АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ ¦
    ¦ абвгдежзийклмноп---¦+¦¦¬¬¦¦¬---¬ ¦
    ¦ L+T+-+¦¦Lг¦T¦=+¦¦TTLL-г++----¦¦- ¦
    ¦ рстуфхцчшщъыьэюяЁёЄєЇїЎў°•·v№¤¦* ¦
    ¦----------------------------------¦
    ¦ Char 1  DEC 49  Hex #31  Fill: - ¦
    ¦ String:                          ¦
    L==================================-
    
         Char = текущий символ;
         DEC  = его десятичных код;
         Hex  = Hexнадцатиричный;
         Fill = байт для Fill Line Drawing
         String = здесь отображается набираемая (набранная) строка,
    которую можно поместить в строку редактора;
    
                    Таблица работает в двух режимах:
    
         Первый - выбор символа;
         Второй - набор строки (String'а>);
    
         Режимы переключаются нажатием SS+SPACE. При этом изменится
    символ определяющий режим ASCII таблицы:
       String: выбор символа
       -------
       String> набор строки.
       -------
    
         Перемещение по таблице осуществляется курсорными клавишами.
    
         CS+1- переключение рус/лат
         CS+2- переключение caps/lock
         CS+3- выбор символа для Fill, LineDraw
         CS+4- спрятать окно;
         SS+Q- в начало таблицы;
         SS+E- в конец таблицы;
         SS-W- аналогично CS+3
         SS+CS перемещение окна таблицы
         CS+0  удаление последнего символа в String> .....
         SS+ENTER очистка строки String
    
         ENTER - выбор символа и, если (:), выход, иначе помещение
    символа в String> ...
         CS+ENTER выйти и захватить с собой строку из String>... в
         редактор (такой мини макрос).
    
         Нажатие на любую другую клавишу устанавливает курсор на
    соответствующий символ и ... см. ENTER.
    
                    - Форматирование текста -
    
         Как такого форматирование текста, хотя бы выравниевание
    строк, я не делал. Во первых готовых процедур у меня в наличии
    не было, этим никогда не занимался.
    
    Во вторых, я это оставил на потом, для версии 1.1, если конечно
    будет интерес в том числе у меня. Если бы я сейчас завязался с
    этим делом, наверняка этот редактор так никогда бы и не увидел
    свет, как очень многие подобные.
    
         Но, не стоит забывать, что в редакторе реализовано автома-
    тическое  форматирование, которое осуществляется по ходу набора
    текста и его параметры задаются в меню: Options \ Setup
    
         Auto wrap  [х] - включает автоматический перенос слов на
    следующую строку при выходе за правую границу.
    
         Перенос срабатывет на следующих символах " .,!?;():'"
    
         Auto indent [х] - включает автоматический отступ при пере-
    воде строки.
    
         Backspace indent [х] - включает перевод курсора на послед-
    ний символ предыдущей строки если, при удалении, курсор нахо-
    дится в первой колонке.
    
         Ну вот и все, что я помню на сегодняшний день. Пожелания,
    предложения, сообщения об ошибках, очень даже могут быть -
    пишите на zx.pk.ru в теме Software / The Story Editor.
    
         31.08.2018 06:01
    
         С наилучшими пожеланиями V.Rubts0FF.
    Замечания, предложения, сведения об ошибках, они могут быть, я им пользовался только пару часов да и то ночью. Вот посмотрев сейчас на файл выше, захотелось сделать проверку синтаксиса. Что бы "В вержней строке" писать правильно.
    Вложения Вложения

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. [H-GAME][Rus]Three Sisters' Story 16c
    от transman в разделе Игры
    Ответов: 35
    Последнее: 31.12.2021, 07:13
  2. Книга The story of the Commodore 64 in pixels
    от Aprisobal в разделе Commodore 16/64/128
    Ответов: 1
    Последнее: 31.03.2019, 09:53
  3. The Story of the ZX Spectrum in Pixels
    от Rindex в разделе Пресса
    Ответов: 1
    Последнее: 31.08.2017, 10:42
  4. The story of the Oliver Twins
    от Slider в разделе Пресса
    Ответов: 3
    Последнее: 16.11.2015, 09:38
  5. Описание The Neverending Story
    от casperzx в разделе Игры
    Ответов: 2
    Последнее: 18.08.2010, 17:15

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •