-
Notifications
You must be signed in to change notification settings - Fork 8
Changelog
Benedikt Freisen edited this page Jan 31, 2024
·
2 revisions
The following changelog summarizes the changes that happened since the original commercial release of Planet X3.
These releases came after the initial commercial release but predate the Open Source Edition.
Active programmer(s): Benedikt Freisen
- New engine variant: PX3_EGA.COM
- New video mode: EGA 640x200 16-color (in the new PX3_EGA.COM, down-converted VGA artwork)
- New video mode: Tandy Video II / ETGA 640x200 16-color (in PX3_VGA.COM)
- New video mode: Plantronics ColorPlus 320x200 16-color (in PX3_CGA.COM, upscaled TDY artwork)
- New video mode: Hercules 640x200 2-color (in PX3_CGA.COM)
- New video mode variant: grayscale CGA 320x200 4-color (in PX3_CGA.COM)
- New engine variant: PX3_MTDY
- New video mode: Med.-res. Tandy 320x200 16-color (in the new PX3_MTDY.COM, down-converted from VGA with sub-optimal LUT)
- New video mode: ATI Graphics Solution 640x200 16-color (in the new PX3_MTDY.COM, down-converted from VGA artwork)
- New audio device: TNDLPT (must be un-muted)
- Bugfix: Use correct background color for all text in the VGA version (bug introduced by the previous release)
- Bugfix: Do not show white as yellow in CGA 4-gray mode on IBM EGAs
- Bugfix: Restore a proper text mode when leaving high-res Tandy mode
- Bugfix: Work around buggy int 29h versions for "Have a nice DOS!" message
- Optimization: hand-pick one LUT entry for 320x200 256-color to 640x200 16-color translation (prettier water in snowy tileset)
- Optimization: hand-pick 35 LUT entries for 320x200 256-color to 320x200 16-color translation (usable med.-res. Tandy mode)
This is what you are currently looking at: The heavily refactored, expanded and partly rewritten Planet X3 engine code base pubished under GPL.
Active programmer(s): Benedikt Freisen, Michal Procházka (MIDI)
- Port of the entire code base from A86 to YASM syntax
- New build system mostly based on GNU tools
- Introduction of a "logical screen coordinate" concept and conversion functions
- Replacement of all hard-coded on-screen addresses with either logical coordinates or variables for pre-converted coordinates
- Introduction of mode-specific function pointer and data variable blocks
- Reintegration of the various engine forks, resulting in only one engine: px3_ose.com
- Full rewrite of most text plotting routines and addition of new ones (lower overhead: string-based rather than character-based)
- Full rewrite of most low-level tile plotting routines and addition of new ones
- Full rewrite of rectangle clearing and scrolling routines as somewhat generic functions
- Partial rewrite of most cursor plotting routines, addition of new ones
- Partial rewrite of the radar code: Single LUT-based radar screen function, routines that plot horizontal groups of pixels
- Partial rewrite of the menu code: Now based on data structures for menus and menu entries
- Refactoring of the AI dispatcher: Now based on jump tables
- Refactoring of the screen redraw routine and addition of a "lazy update" mechanism
- More graceful handling of missing files: First search elsewhere, then ask for disk
- Re-formatting of the entire code base
- Additional documentation for certain parts of the code base (calling conventions etc.)
- Various new video modes
- Hardware sanity checks that usually catch incompatible video mode choices
- New audio device: MPU-401 (two modes: MT-32 and General MIDI)
- New audio device: CMS/GameBlaster (also CMSLPT)
- Map flipping and multi-climate maps (via 2nd menu level)
- Enhanced jukebox: Additional tracks for MT-32 (via shift key), in-game tracks keep playing when a game is started
- Command line options (documented in new "Engine Manual")
- Map lists stored in a user-editable maplist.bin rather than the engine itself
- Transparent and/or smooth multi-disk support
- Masking of transparent areas in modes without transparency support
- Scout cars (included as useless preview because the artwork is there)
- Check the actual
+-key and not just=(Software assuming an American kezboard lazout is annozing!) - Better bridge construction
- Further minor improvements and fixes
- Implementation of the two previously reserved EGA modes (i.e. 640x350 3-color and 320x200 16-color)
- Fix bug in LUT patching for tile set overrides
- Fix bug in radar LUT (existed since PX3 OSE 1.0.0)
- Let the (improved) MIDI converter translate missing General MIDI tracks from MT-32 during the artwork import step