Menu

WinPS1 release 0.6

After a long break, WinPS1 is back with a bugfix for the "gone ballistic" bug. A 'CD 3E' byte sequence in the AP/FD mode annunciator code was misinterpreted by the FPU un-emulator and resulted in FPU stack overflows.

There are many other minor bugfixes, such as in the handling of Shift-XXX keystrokes for the CDU.

The WinPS1 Project website has been updated too. You'll find a description of design and implementation of WinPS1 among the docs there.

WinPS1 now gives you a pop-up 'console' accessible using the backquote key. At the command prompt, enter a 4-digit hex offset followed by a single character type. This will return the current value of the internal PS1 variable at that offset. See con_handler() for details.

Changes:
Added a console that lets you peek at internal variables. (sdlconsole)
Major changes SYS_get_systime() to fine tune the main loop timings, also in preparation for future fast_var() (high speed updates).
Added F/O and warning sounds. (ps1_wav_queue())
'Goes ballistic' bug now fixed.
Replaced xxprintf with __xxprintf due to possible namespace conflict.

There is a bug in FMC RTE page which sometimes surfaces when there is no DEP or ARR airport code entered. The page number in the topright corner of the CDU is corrupted, and the 4 blank boxes for the airport codes are missing.

The above-mentioned "fast_var()" is a future feature intended to provide updates of core variables (pitch, bank, heading, lat/lon, etc) at a frequency greater than 18.2 Hz. The idea is that we run our own program loop at say 2x18.2 or even 3x18.2 Hz which updates the core variables according to the (now known) PS1 algorithms, and call the original PS1 program loop at the native frequency of 18.2 Hz so that other calculations are not disturbed.

Suggestions and feedback on the compilation and running of WinPS1 are much welcome -- it's time to make WinPS1's installation idiot-proof so that we can at last upgrade it to BETA status.

Posted by reeed 2007-06-15

Log in to post a comment.