Обновил версию на 0.15c:

  • Исправил указатель палитры, теперь эмулятор не зависает в ОС ASPekt.

  • Добавил поддержку мыши как в эмулятор глобально, так и в ПК-11 локально (обслуживается драйвером MS.PRC из комплекта ОС ASPekt).

  • Добавил дополнительный режим рендеринга 1.5 x 1.5 (1248 x 900 точек). Специально для владельцев больших мониторов. Режимы выбираются циклически клавишей Delete.

  • На диске Games.dsk, что в комплекте, теперь исправный Тетрис (спасибо TheGWBV за драйвер KBD.PRC)
    Так же в комплект добавлен диск с ОС ASPekt и двумя прелестными игрушками "Минное поле" и "Diamonds" от легендарных ASPCorp.
    Запускать под ОС ASPekt командами PRUN MINE.PRC и PRUN DIAMON.PRC, причем, можно хоть обе сразу, т.к. ОС многозадачная, и между программами можно переключаться через верхнее левое меню.


Известные, но не решенные глюки:
  • Глючит графика в игре Тетрис.
    Скорее всего глючит спрайт взорвавшейся мины в MINE.PRC, т.к. он рисуется черным квадратиком.
    Скорее всего глючит синяя полоска на надписи ASP в игре DIAMON.PRC, т.к. смотрится она не айс.
    Зависает демка VD.SAV с диска Games.dsk.
    Удалось пару раз завесить ОС ASPekt. Либо она сыроватая, либо эмулятор в некоторых случаях ведет себя неверно.
    Иногда глючит наложение окон, но как должно быть на самом деле дадут ответы лишь скриншоты с реала, равно как и на вопрос, какой же должна быть рамка у аппаратных окон.


О поддержке мыши:

С системной стороны поддержка осуществляется как выключением указателя мыши для текущего окна и ограничением его перемещения границами окна, так и установкой глобального хука мыши, отменяющего реакцию системы на какую-либо активность мыши. Можно легко и корректно не только переключаться с системной на эмулируемую мышь (левая кнопка мыши - включить мышь ПК-11, средняя кнопка мыши или LWin+M - выключить), но и переключаться на окна других приложений при активной мыши ПК-11, и системная мышь будет автоматически появляться, и исчезать при обратном переключении на окно эмулятора.

Со стороны ПК-11 поддержана мышь, обрабатываемая драйвером MS.PRC, который используется в комплекте с ОС ASPekt. Как оказалось из анализа драйвера, это очень специфическая логарифмическая мышь (во всяком случае, так ее мнит драйвер). А драйвер, в свою очередь имеет либо ошибки, либо свой взгляд на природу геометрии и ускорения, в связи с чем возведение в степень скорости перемещения мыши обьединено для двух осей X и Y, а показатель степени - есть сумма X и Y, что изрядно затрудняет линеаризацию ее движения согласно тому, как мы привыкли двигать мышь в Windows. Однако, сложной-пресложной формулой, квадратными корнями и прочей математикой удалось сделать так, что все искривления пространства расправились и можно наслаждаться практически ровным, даже при перемещении с большим ускорением, движением мыши. И даже неизбежное следствие - чем быстрее перемещаешь, тем кривее траектория, практически не заметно. Так же, еще одна особенность драйвера, что он не воспринимает смену знака движения по осям с + на - напрямую, а только через 0, так же удалось математически обойти незаметно для зрителя. И, наконец, начальный детект мыши драйвером был устроен так, что если мышь двигаешь в этот момент в горизонтальной плоскости, мышь будет неувидена и потеряна до перезапуска системы. Эта замечательная особенность так же учтена и на нее поставлен неплавкий предохранитель.

p.s.: Видим глюки - пишем, не стесняемся.