Важная информация

User Tag List

Страница 2 из 7 ПерваяПервая 123456 ... ПоследняяПоследняя
Показано с 11 по 20 из 70

Тема: ПК8000 - Уточнённое описание архитектуры и программ.

  1. #11
    Member Аватар для demetrius2003
    Регистрация
    29.09.2010
    Адрес
    Новокузнецк
    Сообщений
    156
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    9
    Поблагодарили
    6 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    ivagor! Огромное спасибо за ссылку по Альтаировскому Васику. Это просто праздник какой-то! b8000.txt тоже полезен. Плюс ко всему выясняется, что попытки диззасмить Суру предпринимались и ранее. Короче по ходу дела у каждого была своя Ида-база...

    P.S.: Теперь вот лично я знаю, что CALL &H17C6 равносильно CLS. И т. д. Что резко упрощает программинг на ассемблере. Надеюсь теперь станет понятнее, чего же я хочу.
    Последний раз редактировалось demetrius2003; 23.03.2014 в 12:50.

  2. #12
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,842
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,814
    Поблагодарили
    1,043 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от demetrius2003 Посмотреть сообщение
    Короче по ходу дела у каждого была своя Ида-база...
    Ну а что делать, если исчерпывающего описания, типа как для спека нет, а попрограммить для машинки хотелось. Правда есть родственник Чака Норриса, который на лету чуть ли не по машинному коду все понимает. А обычным людям остается ида.
    В дополнение к тому дизасму альтаировского бейсика есть еще пара слов. Страницы 41-42 с описаниями нескольких (очень) важных околовычислительных функций.
    Соответствующие адреса функций для ПК8000 (имена из векторовской инфы, в альтаировском дизасме, насколько помню, не все есть):
    VARSEARCH: 0B1A
    COMPUTE: 0975
    SHORTINT: 0CAB
    LONGINT: 12DA
    CHANGE SIGN: 12EA
    INTFROMFLOAT: 649
    Аккумулятор для вычислений с ПТ (FLOAT POINT, вроде в доках по ПК8000 он назван иначе): F938-F93B

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

    ---------- Post added at 16:18 ---------- Previous post was at 16:14 ----------

    К слову, в бейсике-микрон, на основе которого сделан basic 2.5 для вектора, кое-что в вычислительных функциях подправлено. А ПКшный бейсик сделан на основе предыдущей версии РКшного. Но суть перечисленных процедур это не меняет.

  3. #13
    Member Аватар для demetrius2003
    Регистрация
    29.09.2010
    Адрес
    Новокузнецк
    Сообщений
    156
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    9
    Поблагодарили
    6 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Читаю потихоньку доки ivagor'а. В соответствии с этим потихоньку вношу изменения в Иду. Пока всё записываю в комментарии, позднее соберу всю инфу в Ворде.
    Последний раз редактировалось demetrius2003; 19.04.2014 в 20:40.

  4. #14
    R.I.P.
    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    4
    Поблагодарили
    4 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от demetrius2003 Посмотреть сообщение
    P.S.: Теперь вот лично я знаю, что CALL &H17C6 равносильно CLS. И т. д. Что резко упрощает программинг на ассемблере. Надеюсь теперь станет понятнее, чего же я хочу.
    к сожалению не сильно полезная информация
    Код:
    RAM:17C6          _CLS:                                   ; DATA XREF: RAM:OpcodeTAB_809Co
    RAM:17C6 E5                       push    h
    RAM:17C7 3E 0C                    mvi     a, 0Ch
    RAM:17C9 DF                       rst     3               ; OutChar_Rst3
    RAM:17CA E1                       pop     h
    RAM:17CB C9                       ret
    собственно более эффективно

    Код:
    mvi     a, 0Ch
    call    CONOUT (0x003b)


    ---------- Post added at 17:52 ---------- Previous post was at 17:49 ----------

    да, альтаирбасик просто основа ...
    процентов на 80+

    p.s. по моей ссылке - рабочая IDB

  5. #15
    Member Аватар для demetrius2003
    Регистрация
    29.09.2010
    Адрес
    Новокузнецк
    Сообщений
    156
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    9
    Поблагодарили
    6 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Почему? Разве так не информативнее:

    Код:
    call _CLS

  6. #16
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,842
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,814
    Поблагодарили
    1,043 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Пара моментов
    1. После rst 1 идет код символа
    2. особенность этой серии бейсиков - для повышения компактности кода во многих местах используются переходы "внутрь" команды (например в районе 87Dh). Неприятная (неудобная) при дизассемблировании вещь, к счастью ида подсвечивает красным. Тут, конечно, каждый сам решает как оформлять, я у 87Dh написал комментарий ;ori

    Доки ивагора - перебор, мопед не мой Написали одни умные люди, нашли другие, а я запостил сюда ссылки.
    Последний раз редактировалось ivagor; 23.03.2014 в 19:59.

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

  8. #17
    R.I.P.
    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    4
    Поблагодарили
    4 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от demetrius2003 Посмотреть сообщение
    Почему? Разве так не информативнее:

    Код:
    call _CLS
    не намного

    да и там подводные камни могут быть, посмотри код RST

    ---------- Post added at 18:38 ---------- Previous post was at 18:26 ----------

    Цитата Сообщение от ivagor Посмотреть сообщение
    Пара моментов
    1. После rst 1 идет код символа
    .
    тоже самое для подпрограммы
    RAM:02AA CheckEnoughVarSpace?:

    за ней идет байт параметра

    p.s. я такие штуки правлю в иде
    становишся на точку входв, Ctrl+X (Xreff)
    и имеем список всех мест кто вызывет этот код
    проходимся по нему и правим.

  9. #18
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,842
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,814
    Поблагодарили
    1,043 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от esl Посмотреть сообщение
    тоже самое для подпрограммы
    RAM:02AA CheckEnoughVarSpace?:

    за ней идет байт параметра
    Хорошо, что я свою базу не выложил ПК8000 копал выборочно, а вот в векторовском дизасме все отмечено, только вслед за Филипповым эту процедуру обозначил CHECKCROSSWITHSTACK

    ---------- Post added at 22:53 ---------- Previous post was at 22:52 ----------

    Не исключено, что еще есть такие процедуры

    ---------- Post added at 23:07 ---------- Previous post was at 22:53 ----------

    Цитата Сообщение от esl Посмотреть сообщение
    p.s. я такие штуки правлю в иде
    становишся на точку входв, Ctrl+X (Xreff)
    и имеем список всех мест кто вызывет этот код
    почему-то я привык становиться на имя и жать просто x без ctrl. На первый взгляд результат одинаковый.

    ---------- Post added at 23:56 ---------- Previous post was at 23:07 ----------

    Надо еще отметить что в общий доступ были выложены как минимум 2 дизассемблера близкородственных бейсиков.
    1. Векторовский бейсик 2.5, дизассемблировал Е. Филиппов. К сожалению в общественный доступ попал какой-то промежуточный вариант.
    2. Орионовский бейсик, версию не помню, дизассемблировал В. (надеюсь имя не спутал) Пушков. Мне запомнился тем, что в нем я увидел короткий и быстрый (до этого придумал свой длинный и медленный) вариант адаптации под z80, который потом применил в нескольких других бейсиках. Что интересно, потом увидел еще и "профессионально" адаптированный под z80 альтаировский бейсик - там вместо того, чтобы поправить процедуры, исправили места их вызова.

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

    ---------- Post added 24.03.2014 at 00:16 ---------- Previous post was 23.03.2014 at 23:56 ----------

    Векторовский здесь (BAS25RE.ZIP)
    Орионовский здесь. OrionSoftware.rar/Programming/BASIC/TBASIC400 там есть readme

  10. #19
    R.I.P.
    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    4
    Поблагодарили
    4 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    1. Векторовский бейсик 2.5, дизассемблировал Е. Филиппов. К сожалению в общественный доступ попал какой-то промежуточный вариант.

    Векторовский здесь (BAS25RE.ZIP)
    эт не мой результат, эт перенос altairbasic names на почву суры
    векторовский дизасм в родимом resourcer - ностальжи ...
    (кстати в иду легко перенести в теории)
    Последний раз редактировалось esl; 24.03.2014 в 01:28.

  11. #20
    R.I.P.
    Регистрация
    16.09.2009
    Адрес
    г. Харьков
    Сообщений
    1,466
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    4
    Поблагодарили
    4 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    [/COLOR]
    почему-то я привык становиться на имя и жать просто x без ctrl. На первый взгляд результат одинаковый.[COLOR="Silver"]
    пример
    Код:
    AAAA: LAAAA: JP LBBBB
    если стоим на LAAAA то разницы нет.
    если на LBBBB то есть

    крусор стоит на LBBBB

    X - xrefs to LBBBB
    ctrl+x - xrefs to LAAAA

Страница 2 из 7 ПерваяПервая 123456 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 234
    Последнее: 26.02.2021, 11:05
  2. Ответов: 2252
    Последнее: 19.04.2019, 04:31
  3. Ответов: 3
    Последнее: 13.10.2011, 13:40
  4. Описание программ 30 кассет
    от scooter в разделе Пресса
    Ответов: 14
    Последнее: 05.06.2010, 22:37

Ваши права

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