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

User Tag List

Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 20 из 20

Тема: Порча Бейсика-48 в ОЗУ

  1. #11
    Veteran
    Регистрация
    08.05.2007
    Адрес
    Dnepropetrovsk
    Сообщений
    1,058
    Спасибо Благодарностей отдано 
    220
    Спасибо Благодарностей получено 
    47
    Поблагодарили
    31 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    SoftFelix, в BASIC48 без малейших сомнений влезет, туда еще вагон и маленькая тележка поместится. В BASIC_48_128 - не знаю. Но Андрей Гетало делал Bogobasic48_128, совместимый с прошивкой BASIC_128, со всеми функциями (в том числе и вышеприведенные патчи). Правда, Андрей при этом выкинул из BASIC_48_128 "лишний" код опроса дополнительных клавиш (keypad) и некоторые другие изменения. Подробностей я не знаю, могу только дать прошивку.

    Невнимательно читал вопрос. Свободное место ПЗУ данными патчами используется, как это видно из моего предыдущего сообщения. Можно ли их оптимизировать, чтобы не требовалось использовать свободное место ПЗУ? Не знаю. Патчи писал не я (я их позаимствовал из Орель-бейсика). Вероятно, "в лоб" оптимизировать не удастся, а скорее всего придется оптимизировать патчи вместе с процедурами, которые ими затронуты. Некоторые места в бейсике подлежат оптимизации по размеру, хотя их и сочинили талантливые программисты, экономившие память. Взять хотя бы процедуру CIRCLE - очень неэффективная, и по скорости, и по размеру.
    Последний раз редактировалось Barmaley_m; 09.01.2016 в 23:25.

  2. #12
    Moderator
    Регистрация
    25.11.2007
    Адрес
    Симферополь
    Сообщений
    2,164
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Тут http://zx-pk.ru/showthread.php?t=26018
    Пример аппаратного фикса. Только для моделей не имеющих порт 15 - ставится обычная кнопка с фиксацией. Данный фикс - не мешает работе 128к расширения - потому как при работе 128к - задействовано окно с С000. И вообще - в 0 адреса никто не пишет при нормальной работе компьютера.
    Amiga 1200+Blizzard 1260 72 Mb+Mtek 68030,Compozit 128, Leningrad 2,
    Atari STE 1040,ZX Spectrum +2,Pentagon 48, Speccy2007 - 2 , ATAS 256k.
    ZX Evo 4Mb- в строю.
    Speccy2010 v1
    Специалист (пока готовлюсь к восстановлению).
    Это все мое!
    Родное!
    Все люблю на свете я! Это родина моя!

  3. #13
    Veteran
    Регистрация
    08.05.2007
    Адрес
    Dnepropetrovsk
    Сообщений
    1,058
    Спасибо Благодарностей отдано 
    220
    Спасибо Благодарностей получено 
    47
    Поблагодарили
    31 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Аппаратный фикс всяко лучше. На самом деле множество программ ведет по этим адресам запись. Когда я пользовался теневым монитором на "Орель БК-08" - то часто страдал от того, что та или иная программа затирала монитор. В конце концов сделал себе запрет записи, когда по адресам 0000-3FFF включено ПЗУ или режим эмуляции ПЗУ. Сразу решилась куча проблем.

    Тем не менее программный фикс бейсика, чтобы он не вел запись по адресам ПЗУ, представляет отдельный академический интерес.

  4. #14
    Moderator Аватар для Максагор
    Регистрация
    16.01.2005
    Адрес
    Москва
    Сообщений
    1,981
    Спасибо Благодарностей отдано 
    207
    Спасибо Благодарностей получено 
    303
    Поблагодарили
    113 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Barmaley_m Посмотреть сообщение
    Аппаратный фикс всяко лучше. На самом деле множество программ ведет по этим адресам запись. Когда я пользовался теневым монитором на "Орель БК-08" - то часто страдал от того, что та или иная программа затирала монитор. В конце концов сделал себе запрет записи, когда по адресам 0000-3FFF включено ПЗУ или режим эмуляции ПЗУ. Сразу решилась куча проблем.

    Тем не менее программный фикс бейсика, чтобы он не вел запись по адресам ПЗУ, представляет отдельный академический интерес.
    Расположение бейсика в ОЗУ (а, соответственно, и устранение его затирания) полезно не для запуска из-под него кодовых программ и прочих игрушек на асме, которые там что-то портят, а ради самого бейсика и программ на бейсике, чтобы можно было бы его развивать и дорабатывать только для этого. Например, сделать версию для iS-DOS с внедрением команд работы с диском, версию для TASiS с поддержкой экранов и т.п. Первым этапом тут стоит как раз ликвидация порчи в ОЗУ.
    Максагор, NedoPC group
    ПК ATM-turbo 2+ 1024Kb RAM, 1,7Gb HDD, CD-ROM, Turbo FM, GS-512
    [ZX rulezzz 4reva!!!]
    http://atmturbo.nedopc.com
    http://vk.com/atmturbo
    http://maksagor.livejournal.com
    http://moskprf.ru
    [СССР][Коммунизм][КПРФ] ну [ZX], естественно...

  5. #15
    Moderator
    Регистрация
    25.11.2007
    Адрес
    Симферополь
    Сообщений
    2,164
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Лечим порчу 5 ячеек по фотографии (c) Медицинская реклама
    Amiga 1200+Blizzard 1260 72 Mb+Mtek 68030,Compozit 128, Leningrad 2,
    Atari STE 1040,ZX Spectrum +2,Pentagon 48, Speccy2007 - 2 , ATAS 256k.
    ZX Evo 4Mb- в строю.
    Speccy2010 v1
    Специалист (пока готовлюсь к восстановлению).
    Это все мое!
    Родное!
    Все люблю на свете я! Это родина моя!

  6. #16
    Guru
    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    13,773
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    143
    Спасибо Благодарностей получено 
    1,179
    Поблагодарили
    775 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Максагор Посмотреть сообщение
    полезно не для запуска из-под него кодовых программ и прочих игрушек на асме, которые там что-то портят, а ради самого бейсика и программ на бейсике, чтобы можно было бы его развивать и дорабатывать только для этого. Например, сделать версию для iS-DOS с внедрением команд работы с диском, версию для TASiS с поддержкой экранов и т.п.
    обычно бейсик расширяют путём перехвата ошибок (rst#8).
    зачем что-то править в ПЗУ - непонятно

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

  8. #17
    Moderator Аватар для Максагор
    Регистрация
    16.01.2005
    Адрес
    Москва
    Сообщений
    1,981
    Спасибо Благодарностей отдано 
    207
    Спасибо Благодарностей получено 
    303
    Поблагодарили
    113 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от goodboy Посмотреть сообщение
    обычно бейсик расширяют путём перехвата ошибок (rst#8).
    Я в курсе.

    Цитата Сообщение от goodboy Посмотреть сообщение
    зачем что-то править в ПЗУ - непонятно
    Как раз не в ПЗУ. )))
    Максагор, NedoPC group
    ПК ATM-turbo 2+ 1024Kb RAM, 1,7Gb HDD, CD-ROM, Turbo FM, GS-512
    [ZX rulezzz 4reva!!!]
    http://atmturbo.nedopc.com
    http://vk.com/atmturbo
    http://maksagor.livejournal.com
    http://moskprf.ru
    [СССР][Коммунизм][КПРФ] ну [ZX], естественно...

  9. #18
    Guru
    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    13,773
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    143
    Спасибо Благодарностей получено 
    1,179
    Поблагодарили
    775 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Максагор Посмотреть сообщение
    Как раз не в ПЗУ. )))
    про замещение ПЗУ я понял.

    вон с divIDE набираю в бейсике playwav, он распознаёт и запускает плагин.
    а твои наработки получаются привязаны на конкретный комп и его расширения памяти

  10. #19
    Moderator Аватар для Максагор
    Регистрация
    16.01.2005
    Адрес
    Москва
    Сообщений
    1,981
    Спасибо Благодарностей отдано 
    207
    Спасибо Благодарностей получено 
    303
    Поблагодарили
    113 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от goodboy Посмотреть сообщение
    а твои наработки получаются привязаны на конкретный комп и его расширения памяти
    У меня пока не наработки, а идейки, под которые я веду предварительные исследования. Но да - это под TASiS - есть идея сделать подгружаемый в качестве плагина ядра системы доработанный и расширенный спектрум-бейсик. реализую я когда-нибудь это - пока не знаю. Буду накапливать информацию и изучать вопрос.
    Максагор, NedoPC group
    ПК ATM-turbo 2+ 1024Kb RAM, 1,7Gb HDD, CD-ROM, Turbo FM, GS-512
    [ZX rulezzz 4reva!!!]
    http://atmturbo.nedopc.com
    http://vk.com/atmturbo
    http://maksagor.livejournal.com
    http://moskprf.ru
    [СССР][Коммунизм][КПРФ] ну [ZX], естественно...

  11. #20
    Veteran
    Регистрация
    08.05.2007
    Адрес
    Dnepropetrovsk
    Сообщений
    1,058
    Спасибо Благодарностей отдано 
    220
    Спасибо Благодарностей получено 
    47
    Поблагодарили
    31 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Максагор Посмотреть сообщение
    Расположение бейсика в ОЗУ (а, соответственно, и устранение его затирания) полезно ... ради самого бейсика и программ на бейсике, чтобы можно было бы его развивать и дорабатывать
    Это понятно. Я когда делал bogobasic - то именно так его и отлаживал. Все равно это ненадежно: вдруг баг, приводящий к сбою с перепахиванием памяти? Придется грузить бейсик заново.

    В этой ситуации помогает режим эмуляции ПЗУ - это когда одна из страниц расширенного ОЗУ подключается по адресам 0000-3FFF, но запись в нее заблокирована. Тогда перепахивание памяти не страшно. Я это реализовал в своей схеме расширения и загружал обычно в режиме эмуляции стандартный бейсик Sinclair-82. При желании можно было использовать этот режим и для отладки новых модификаций прошивки бейсика-48, -128 или TR-DOS - только в те годы (1995+) я уже этим не занимался.
    Цитата Сообщение от Максагор Посмотреть сообщение
    Например, сделать версию для iS-DOS с внедрением команд работы с диском, версию для TASiS с поддержкой экранов и т.п. Первым этапом тут стоит как раз ликвидация порчи в ОЗУ.
    Лучше - аппаратный запрет записи в эту область ОЗУ при установке соответствующих флагов в портах расширения. И отлаживать можно, и в ПЗУ прошить можно, и сбои не страшны.

Страница 2 из 2 ПерваяПервая 12

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

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

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

Похожие темы

  1. Кросс-компилятор бейсика для БК
    от litwr в разделе БК-0010/0011
    Ответов: 2
    Последнее: 30.03.2018, 18:03
  2. Ответов: 2
    Последнее: 21.11.2012, 22:00
  3. вопрос по трдос из бейсика 48
    от Руслан в разделе Для начинающих
    Ответов: 23
    Последнее: 31.07.2012, 23:08
  4. Спрайты из бейсика
    от Руслан в разделе Графика
    Ответов: 15
    Последнее: 26.07.2012, 20:54
  5. Порча TR-DOS'ом ячейки #5B89
    от TomCaT в разделе Для начинающих
    Ответов: 2
    Последнее: 09.03.2010, 21:51

Ваши права

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