386P PROJECT HISTORY 386Power by Lorenzo Micheletto Based on the algorithms expressed into PMODE dos-extender header by Thomas "Tran" Pytel, plus lots of good ideas learned reading on rec.games.programmer newsgroup and my own (weird) ideas. Release 0.999beta (Also known as "Well, it looks like it works" :) ) First release, mode-x support,raw keyboard handling playback of not compressed voc files on pc speaker Release 1.01 (Back to mode 13h) No more mode-x support, mode 13h instead (mode-x hardware panning was very useful, but the multiplanar pixel addressing nearly eliminated the speed gains obtainable from it). Dos-ext updated. Added mouse handling, tiled background handling and a simple "tiled background editor". Added STRING INPUT on chario. Eliminated the file attribute bug that plagued 386file. Release 1.02 (never distribuited, i started working on 386P 2.00 immediatly after the patch) Partially fixed a problem with Tasm 3.2 . Lots of thanks goes to Alex Yu for the error report (i don't have tasm 3.2) that pointed my attention to this and other weak spots into the dos-extender. Release 2.00 ( "Knee deep into prot. mode" ;) ) This has been released when still in "alpha testing" and with portions of it still not complete (read: i was just starting to type in the sound system stuff) i've been FORCED to "early release" this version because for a year starting from January 17th 1995 i will be in the Italian Army [ full metal coder :) ] so if now i don't have very much time, guess in the next months. Anyway they called me while i was studying for a big exam and in the free time i was involved in a MASSIVE source code update .... - Virtual DMA support, now you can program the DMA hardware without touching the DMA ports. - Included "skeleton code" to build XVD,XSD drivers for DEVICE INDIPENDENT VIDEO, SOUND. - Automatic menu handler!! Write down the layout of a popup menu with a sequence of defines and small "entry check" routines and let the 386menu module take care of what to show and what to do. - Improved keyboard/timer handling (not so much, but better than last release). - Expanded the dos-extender capabilities GASP! I'm really DEPRESSED because i have to release this code in a hurry and i cannot complete and fully test it! :( :( :( I will make a better thing with the future release 3.0. In the mean time you can use the current release 2.00 as a source of useful routines and informations (not to mention it does its best to work). FUTURE EVOLUTION For all 1995 i will be in the Italian Army, so it will be very hard for me to work on updates. After that i will have to get my Laurea in electronic engineering (a Laurea is roughtly equivalent to a Master degree) and with a little of luck i will have enough free time to further enhance 386P into a fully functional portable environment for videogames. My final target is to get a stripped down "loader" module that detects the host environment (ms-dos, generic DPMI host, Windows (all flavours), OS/2,Unix Linux, ....), kicks into memory the appropriate extender and drivers and then loads/translates (!!!!) the main program and its modules for the host environment. 386P 2.00 has no real "loader" nor translator, just four integrated extenders for VCPI (i.e. ms-dos + emm386) DPMI (for any flavor of Windows and OS/2) and XMS and "pure real mode" ms-dos environments. For now they work good enough (on my system) but in the future i 'd like to add more flexibility and make the existing modules more robust and powerful. When i'll get back from mil. service i will buy a new motherboard+CPU new hard disk and new video board so i will be able step up to a "real" Workstation environment based on Linux + X-Windows. So guess, besides the "improvements" and a complete sound system, what will be the next dos-ext module i'm planning to add? :) Ciao! Lorenzo Micheletto e-mail: knight@maya.dei.unipd.it plain mail: Lorenzo Micheletto Via Piazza Miega 10/A 37040 Veronella (VR) ITALY