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

User Tag List

Страница 1 из 9 12345 ... ПоследняяПоследняя
Показано с 1 по 10 из 88

Тема: Вопросы по архитектуре "Специалиста"

  1. #1
    Administrator Аватар для CityAceE
    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    4,574
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    399
    Спасибо Благодарностей получено 
    1,207
    Поблагодарили
    394 сообщений
    Mentioned
    48 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Вопросы по архитектуре "Специалиста"

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

    1. Что правильно должно считываться по адресам С000-EFFF, если микросхема ПЗУ не установлена? Emu80 отображает FF, как будто бы установлены чистые микросхемы памяти. Это корректное поведение? Оно обусловлено схемотехникой компьютера?
    2. Что должно считывается по адресам в диапазоне F000-F7FF в журнальной версии компьютера? Emu80 отображает циклическую последовательность 00 00 00 FF. Чем это обусловлено? Что будет если попытаться записывать туда данные на реальном компьютере в стандартной конфигурации?
    3. Что должно считываться с адресов F8003, F8007 и т.д., то есть адресов куда проецируется порт управления штатной микросхемы параллельного порта (КР580ВВ55А)?
    4. Как на реальном Специалисте ведут себя команды работы с прерываниями: DI, EI, HLT? Существуют ли какие-то устройства для Специалиста, которые будут реагировать на эти команды?
    5. Как на реальном Специалисте ведут себя команды работы с портами IN xx и OUT xx? Что будет если считать данные с несуществующего порта? Существуют ли какие-то устройства для Специалиста, которые будут реагировать на эти команды?
    6. Процессор Специалиста работает с частотой 2 МГц. Телевизор отображает 50 кадров в секунду. Я считаю, что между кадрами укладывается (2 * 1 000 000 / 50) тактов процессора. Насколько мои вычисления корректны?
    7. Я правильно понимаю, что у Специалиста отсутствует какая-либо привязка начала построения кадра к чему-либо. Или всё-таки кадр строится по каким-то временнЫм правилам?


    Очень надеюсь на компетентную информацию, как минимум, от эксперта 8-ми (и не только) битного мира @ivagor
    Последний раз редактировалось CityAceE; 26.09.2023 в 16:52.
    С уважением, Станислав.

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

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

    По умолчанию

    Думаю по Специалисту на форуме наиболее компетентен HardWareMan, вопрос в том, чтобы он захотел ответить на вопросы. В крайнем случае могу и я подключиться, но надеюсь это не понадобиться.

  4. Этот пользователь поблагодарил ivagor за это полезное сообщение:

    CityAceE (26.09.2023)

  5. #3
    Administrator Аватар для CityAceE
    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    4,574
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    399
    Спасибо Благодарностей получено 
    1,207
    Поблагодарили
    394 сообщений
    Mentioned
    48 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    @HardWareMan, найдётся минутка на ответы?
    С уважением, Станислав.

  6. #4
    Guru Аватар для HardWareMan
    Регистрация
    26.02.2011
    Адрес
    г. Павлодар, Казахстан
    Сообщений
    4,404
    Спасибо Благодарностей отдано 
    319
    Спасибо Благодарностей получено 
    598
    Поблагодарили
    444 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Что правильно должно считываться по адресам С000-EFFF, если микросхема ПЗУ не установлена? Emu80 отображает FF, как будто бы установлены чистые микросхемы памяти. Это корректное поведение? Оно обусловлено схемотехникой компьютера?
    На любом ЛК с процессором ВМ80 на висячей и не подтянутой шине считывается слово состояния. Для IN это будет 42H, для остальных - 82H.

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Что должно считывается по адресам в диапазоне F000-F7FF в журнальной версии компьютера? Emu80 отображает циклическую последовательность 00 00 00 FF. Чем это обусловлено? Что будет если попытаться записывать туда данные на реальном компьютере в стандартной конфигурации?
    Зависит от того, есть там физический порт ВВ55 или его нет. Если нет, то смотри п.1

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Что должно считываться с адресов F8003, F8007 и т.д., то есть адресов куда проецируется порт управления штатной микросхемы параллельного порта (КР580ВВ55А)?
    Во-первых, адрес превышает адресное пространство ВМ80, но я полагаю это ошибка. Во-вторых, что считывается из РУС ВВ55 вроде как есть в букваре на 8255.

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Как на реальном Специалисте ведут себя команды работы с прерываниями: DI, EI, HLT? Существуют ли какие-то устройства для Специалиста, которые будут реагировать на эти команды?
    Как и должны - как NOP, ибо сигнал INTE не используется. Что касается HLT, то по идее она должна сделать вечный стоп, ведь прерываний на Специалисте нет. Я только 1 раз подавал эту команду на кружке и тогда у нас сгорела ВВ55. Препод сказал, что это просто совпадение, но мыслей повторить эксперимент не возникало. Сейчас я понимаю, что это глупо и реально совпадение, но ведь при останове процессор бросает шину, а она не подтянута, и дешифратор мог что-то сделать не так. Что касается INTE, то можно подмешать к звуку и использовать музыкальный софт от РКшки. Так же есть информация, что один из клонов Специалиста использует INTE как сигнал начального пуска.

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Как на реальном Специалисте ведут себя команды работы с портами IN xx и OUT xx? Что будет если считать данные с несуществующего порта? Существуют ли какие-то устройства для Специалиста, которые будут реагировать на эти команды?
    Как LDA где адрес состоит из двух одинаковых байт. Например, IN 0F0H = LDA 0F0F0H. А OUT 0F3H = STA 0F3F3H. Некоторый софт использует это для сокращения времени доступа к порту и/или уменьшению размера программы.

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Процессор Специалиста работает с частотой 2 МГц. Телевизор отображает 50 кадров в секунду. Я считаю, что между кадрами укладывается (2 * 1 000 000 / 50) тактов процессора. Насколько мои вычисления корректны?
    Откуда мне знать? Ты можешь просто посмотреть до скольки будет считать счётчик синхрогенератора. Там вроде строка считает до 64 а кадры до 312. Каждый такт H это 2 такта процессора (и, соответственно, RAS/CAS). Т.е., всего 128*312=39936. Как видишь, кадровая у Специалиста не 50Гц, а чуть выше, потому что 15625/312=50.08. Для получения стандартных 50 надо делать 312,5 или интерлейс в 312+313.

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Я правильно понимаю, что у Специалиста отсутствует какая-либо привязка начала построения кадра к чему-либо. Или всё-таки кадр строится по каким-то временнЫм правилам?
    Никакой привязки нет. Да и в Спектруме привязка условная, через VInt. В МХе есть привязка к таймеру. А вот в Эрике вроде что-то было, но это не точно, не моя тема.

  7. Этот пользователь поблагодарил HardWareMan за это полезное сообщение:

    CityAceE (26.09.2023)

  8. #5
    Veteran Аватар для Serg6845
    Регистрация
    30.12.2018
    Адрес
    г. Москва
    Сообщений
    1,004
    Спасибо Благодарностей отдано 
    7
    Спасибо Благодарностей получено 
    250
    Поблагодарили
    230 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CityAceE Посмотреть сообщение
    [*]Что правильно должно считываться по адресам С000-EFFF, если микросхема ПЗУ не установлена? Emu80 отображает FF, как будто бы установлены чистые микросхемы памяти. Это корректное поведение? Оно обусловлено схемотехникой компьютера?
    в журнальном варианте насколько я помню - читается 82 (слово состояния процессора, запомненное на емкости висящей в воздухе шины данных).

    [*]Что должно считывается по адресам в диапазоне F000-F7FF в журнальной версии компьютера? Emu80 отображает циклическую последовательность 00 00 00 FF. Чем это обусловлено? Что будет если попытаться записывать туда данные на реальном компьютере в стандартной конфигурации?
    в совсем журнальной конфигурации (МК №2 1987) - то же что из пустой памяти, там ничего нет. позже туда повесили второй ВВ55 для программатора - судя по всему Emu80 его эмулирует.

    [*]Что должно считываться с адресов F8003, F8007 и т.д., то есть адресов куда проецируется порт управления штатной микросхемы параллельного порта (КР580ВВ55А)?
    зависит от того как сконфигурирован ВВ55 и что ему на входы приходит, за исключением адресов с 11 в младших разрядах - там пустая память (РУС ВВ55 не читается, только запись)
    и в адресах нолик лишний.

    [*]Как на реальном Специалисте ведут себя команды работы с прерываниями: DI, EI, HLT? Существуют ли какие-то устройства для Специалиста, которые будут реагировать на эти команды?
    первые две кроме изменения уровня на 16 ноге процессора никаких видимых эффектов не вызывают. HLT - приводит к останову проца, а поскольку источников прерываний физически нет - проц будет в останове до следующего сброса. устройств нагородить можно, но это будет уже не журнальный вариант (у меня например приделан ВК38 и ВН59)

    [*]Как на реальном Специалисте ведут себя команды работы с портами IN xx и OUT xx? Что будет если считать данные с несуществующего порта? Существуют ли какие-то устройства для Специалиста, которые будут реагировать на эти команды?
    будет операция с памятью по соответствующему адресу (например IN/OUT 80 приведет к чтению/записи по адресу 8080). про устройства - см. предыдущий пункт.

    [*] Процессор Специалиста работает с частотой 2 МГц. Телевизор отображает 50 кадров в секунду. Я считаю, что между кадрами укладывается (2 * 1 000 000 / 50) тактов процессора. Насколько мои вычисления корректны?
    считать надо, насколько там ровно 50Гц. навскидку уже не помню.

    [*]Я правильно понимаю, что у Специалиста отсутствует какая-либо привязка начала построения кадра к чему-либо. Или всё-таки кадр строится по каким-то временнЫм правилам?
    правильно. никакой привязки нет.

    Зверинецъ

    Специалист (был когда-то "совсем стандарт") - 1988-2023
    Ленинград1 +256К +AY+BDI+VGA выход +Ethernet (Speccyboot) +Xmodem (115200)+divmmc
    Ленинград2 + CF карта
    Платформа 8085+Z80+CPLD (Специалист МХ2 +SD +FDD +PS/2kbd)
    БК0010-01 стоковый
    [свернуть]

  9. Этот пользователь поблагодарил Serg6845 за это полезное сообщение:

    CityAceE (26.09.2023)

  10. #6
    Administrator Аватар для CityAceE
    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    4,574
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    399
    Спасибо Благодарностей получено 
    1,207
    Поблагодарили
    394 сообщений
    Mentioned
    48 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    HardWareMan, Serg6845, большое спасибо за ответы! Буду переваривать! Вернусь с наводящими и дополнительными вопросами
    С уважением, Станислав.

  11. #7
    Administrator Аватар для CityAceE
    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    4,574
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    399
    Спасибо Благодарностей получено 
    1,207
    Поблагодарили
    394 сообщений
    Mentioned
    48 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Итак, переварил то, что мне ответили. Что-то пришлось догуглиливать, но в целом картина прояснилась. Я сейчас отвечу на всё, как понял, а вы меня поправьте, если я где-то ошибся.

    1. Что правильно должно считываться по адресам С000-EFFF, если микросхема ПЗУ не установлена? Emu80 отображает FF, как будто бы установлены чистые микросхемы памяти. Это корректное поведение? Оно обусловлено схемотехникой компьютера?

    По любому адресу, к которому не подключено ни ОЗУ, ни ПЗУ, ни какое-то другое устройство, любой командой, работающей с памятью (например, LDA adr) должен считываться байт 0x82. Но есть одно исключение: если ту же самую область пытаться считать командой IN xx, то в этом случае будет считываться байт 0x42.

    Байты 0x82 и 0x42 представляют из себя слово состояния (Status Word) выдаваемое на шину данных в первом такте машинного цикла и сопровождаемом сигналом SYNC.

    Остаётся вопрос: почему это слово разное для команды IN и остальных команд?

    2. Что должно считывается по адресам в диапазоне F000-F7FF в журнальной версии компьютера? Emu80 отображает циклическую последовательность 00 00 00 FF. Чем это обусловлено? Что будет если попытаться записывать туда данные на реальном компьютере в стандартной конфигурации?

    В стандартном варианте в эту область ничего не подключено. И поэтому оттуда должно считываться 0x82 (0x42), как описано в первом вопросе.

    3. Что должно считываться с адресов F803, F807 и т.д., то есть адресов куда проецируется порт управления штатной микросхемы параллельного порта (КР580ВВ55А)?

    Результат считывания сложный и зависит от содержимого других регистров микросхемы. Эту информацию необходимо получить из документации по КР580ВВ55А (i8255).

    b2m вот здесь пишет: "По поводу РУС: была информация, что оттуда читается последнее записанное в любой из портов А,В,С значение. Тест подтверждает это, но однако показывает, что если порты настроены на ввод, то оттуда читается FF. Можно поправить в эмуляторе для аутентичности (у меня пока возвращается ноль). Что возвращать, когда порт настроен на ввод, а схемно он предназначен на вывод - непонятно."

    4. Как на реальном Специалисте ведут себя команды работы с прерываниями: DI, EI, HLT? Существуют ли какие-то устройства для Специалиста, которые будут реагировать на эти команды?

    В схеме Специалиста не задействован сигнал процессора INTE, отвечающий за обработку прерываний. Поэтому в Специалисте команды DI и EI будут работать просто, как NOP. Команда HLT остановит процессор и он будет ждать сигнала INTE. Но так как, INTE не задействован, процессор ничего не дождётся и будет "висеть". Вывести его из этого состояния можно только сбросом компьютера.

    5. Как на реальном Специалисте ведут себя команды работы с портами IN xx и OUT xx? Что будет если считать данные с несуществующего порта? Существуют ли какие-то устройства для Специалиста, которые будут реагировать на эти команды?

    На Специалисте команды IN и OUT работают точно так же, как и обычные команды работы с памятью. Команда IN считывает в регистр А значение из ячейки памяти, адрес которой формируется из байта, указанного в команде IN. Этот байт помещается и в младший, и в старший байт адреса. Команда OUT записывает значение регистра A в адрес, сформированный по той же схеме, что и в команде IN.

    Команда IN AB аналогична команде LDA ABAB
    Команда OUT AB аналогична команде STA ABAB

    Вопрос: Что из себя представляют полноценные порты для процессора 8080? Они организуются какой-то дополнительной микросхемой? 8080 может обслуживать только 256 разных портов?

    6. Процессор Специалиста работает с частотой 2 МГц. Телевизор отображает 50 кадров в секунду. Я считаю, что между кадрами укладывается (2 * 1 000 000 / 50) тактов процессора. Насколько мои вычисления корректны?

    Частота кадров Специалиста не ровно 50 Hz, а 50,08 Hz. Это значение получается, если частоту строчной развертки, которая составляет 15625 Hz, поделить на количество строк, формируемых Специалистом - 312.
    15625 Hz / 312 строк = 50,08 кадров в секунду

    Один кадр строится за 39936 тактов процессора. Это значение получается, если умножить количество строк (312) одного кадра на количество тактов, которое тратится на формирование одной строки (128)
    128 тактов * 312 строк = 39936 тактов

    Вопрос: Правильно ли я понимаю, что частота кадров 50,08 - это константа? Если увеличивать частоту процессора, то в компьютере, который сделан правильно и его схемотехника учитывает все эти повышения (например, замена i8080 на Z80), частота кадров так и останется равной 50,08 Hz, а количество тактов между началами формирования двух кадров будет увеличено кратно множителю, на который будет увеличена частота процессора?

    7. Я правильно понимаю, что у Специалиста отсутствует какая-либо привязка начала построения кадра к чему-либо. Или всё-таки кадр строится по каким-то временнЫм правилам?

    В классической схеме Специалиста формирование очередного кадра никак не привязано ни к процессору, ни к количеству тактов, ни к чему-либо ещё. Нет никакой возможности отследить начало формирования следующего кадра и как-то привязаться к нему.
    Последний раз редактировалось CityAceE; 27.09.2023 в 18:02.
    С уважением, Станислав.

  12. #8
    Administrator Аватар для CityAceE
    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    4,574
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    399
    Спасибо Благодарностей получено 
    1,207
    Поблагодарили
    394 сообщений
    Mentioned
    48 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Далее для собственного удобства я буду оперировать мнемониками Z80, так как мнемоники 8080 я забыл и сейчас они для меня совсем непонятны.

    Прошу знающих людей указать на неточности, если они есть, а также ответить на вопрос.

    У Специалиста область ПЗУ начинается с адреса 0xC000. Соответственно, после включения компьютера для подготовки его к работе должна начать выполняться программа из ПЗУ, то есть с адреса 0xC000. Однако процессор Intel 8080 (КР580ВМ80А) после сброса передаёт управление на адрес 0x0000. И тем не менее код, находящийся в ПЗУ по адресу 0xC000, запускается и работает.

    Начало кода в ПЗУ выглядит так:

    Код:
    0xC000: JP 0xC003
    0xC003: LD SP, 0x7FFF
    0xC006: LD A, 0x82
    0xC008: LD (0xFF03), A
    0xC00B: JP 0xC4444
    На первый взгляд команда JP 0xC003 совсем лишняя, так как она всего лишь передаёт управление на следующую строку. Однако именно эта команда и передаёт управление на код, размещающийся в ПЗУ. Дело в том, что сразу после включения компьютера эта команда как раз и находится по адресу 0x0000. То есть как раз там, куда передаёт управление процессор сразу после его сброса.

    Как же так получается? А всё дело в том, что после сброса компьютера ПЗУ помимо своего стандартного положения по адресу 0xC000 дополнительно проецируется в начальную область памяти, начиная с адреса 0x0000. Таким образом, код, зашитый в ПЗУ одновременно находится и по адресу 0xC000, и по адресу 0x0000.

    За переключение расположения ПЗУ отвечает штатная микросхема программируемого параллельного интерфейса Intel 8255 (КР580ВВ55А).

    В коде ПЗУ две команды, следующие за командой установки стека, отключают это дублирование ПЗУ в ОЗУ и переводят память в штатный режим:

    Код:
    0xC006: LD A, 0x82
    0xC008: LD (0xFF03), A
    Эта операция обратима. При большом желании можно затем и вручную снова включить ПЗУ в область ОЗУ, подав следующие команды:

    Код:
    LD A, 0x10  ; 00010000 - включен 4-й бит порта С (PC4)
    LD (0xFF02), A
    Остаётся вопрос, на который мне не удалось найти ответа, а принципиальная схема компьютера мне ни о чём не говорит. Какой объём памяти после включения Специалиста дублируется с 0xC000 на адрес 0x0000? Вся вторая половина адресного пространства, то есть 0xC000-0xFFFF? Только область Загрузчика - 0xC000-0xС7FF? Какой-то другой вариант?
    С уважением, Станислав.

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

    По умолчанию

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Байты 0x82 и 0x42 представляют из себя слово состояния программы, оно же PSW
    Извините за занудство, но PSW - Processor Status Word. А с упомянутыми байтами речь не о нем, а о Status Word выдаваемом на шину данных в первом такте машинного цикла и сопровождаемом сигналом SYNC.

    Если собираешься эмулировать схему начального пуска, то возможно стоит учесть, что кроме оригинала есть и другие варианты. Доработка до 8 цветов (МК 90/8) сопровождалась заменой управления начальным пуском с бита ВВ55 на выход INTE процессора (+ модификация ПЗУ). И для такого восьмицвета EI и DI не просто NOP. А у современных клонов альтернативный (более распространенный и в других компьютерах) вариант, который позволяет и восьмицветом пользоваться и прерывания не трогать.
    Ну и раз речь коснулась EI и DI, то можно вспомнить и про особенность HALT в орионе и скорее всего в оригинальном специалисте (начиная с этого сообщения, подробности дальше). fifan с присущей ему тактичностью вместо переноса в более подходящее место просто обрубил дискуссию, но вся информация там есть, кроме результата проверки на реале. И надо еще раз подчеркнуть, что для современных клонов типа сябра это не актуально.
    Последний раз редактировалось ivagor; 27.09.2023 в 15:30.

  14. Этот пользователь поблагодарил ivagor за это полезное сообщение:

    CityAceE (27.09.2023)

  15. #10
    Administrator Аватар для CityAceE
    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    4,574
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    399
    Спасибо Благодарностей получено 
    1,207
    Поблагодарили
    394 сообщений
    Mentioned
    48 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Извините за занудство, но PSW - Processor Status Word. А с упомянутыми байтами речь не о нем, а о Status Word выдаваемом на шину данных в первом такте машинного цикла и сопровождаемом сигналом SYNC.
    Спасибо! Отредактировал своё сообщение, откорректировав информацию прямо процитировав эту информацию. А за одно задал новый вопрос Я хочу потом, когда всё забуду, этим постом пользоваться в качестве справки. Поэтому для себя же всё и разжёвываю, пока знаю и помню.

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

    Цитата Сообщение от ivagor Посмотреть сообщение
    Доработка до 8 цветов (МК 90/8) сопровождалась заменой управления начальным пуском с бита ВВ55 на выход INTE процессора (+ модификация ПЗУ). И для такого восьмицвета EI и DI не просто NOP. А у современных клонов альтернативный (более распространенный и в других компьютерах) вариант, который позволяет и восьмицветом пользоваться и прерывания не трогать.
    И за это тоже спасибо! Я как раз перечитывая тему про эмулятор Titus'а наталкивался на эту информацию. Буду тоже держать её в голове. Или на листочке для надёжности. Хотя эту тему я как завёл, чтобы ничего потом не забыть.

    Цитата Сообщение от ivagor Посмотреть сообщение
    Ну и раз речь коснулась EI и DI, то можно вспомнить и про особенность HALT в орионе и скорее всего в оригинальном специалисте (начиная с этого сообщения, подробности дальше). fifan с присущей ему тактичностью вместо переноса в более подходящее место просто обрубил дискуссию, но вся информация там есть, кроме результата проверки на реале. И надо еще раз подчеркнуть, что для современных клонов типа сябра это не актуально.
    Ого! А вот эта информация вообще для меня в новинку! Спасибо! Пользуясь своим служебным положением вынес то обсуждение в отдельную тему. Очень надеюсь, что кто-то сможет проверить на реальном Специалисте.

    ivagor, а можно такой же тест и для Специалиста собрать?
    Последний раз редактировалось CityAceE; 27.09.2023 в 17:59.
    С уважением, Станислав.

Страница 1 из 9 12345 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Плёночная клавиатура Специалиста "Экспресс"
    от HardWareMan в разделе Специалист
    Ответов: 1
    Последнее: 06.02.2023, 22:59
  2. Симуляция "ЛИКа" (модификации Специалиста)
    от apofig в разделе Специалист
    Ответов: 27
    Последнее: 06.06.2022, 20:31
  3. RK-КНГМД для "Специалиста"
    от zx_ в разделе Специалист
    Ответов: 134
    Последнее: 02.03.2018, 04:03
  4. Ответов: 5
    Последнее: 03.07.2015, 00:22
  5. Продам плату ПК "УЦА" (клон "Специалиста")
    от riogen в разделе Барахолка (архив)
    Ответов: 2
    Последнее: 25.01.2011, 11:02

Ваши права

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