lyricalnanoha wrote:
On Fri, 19 Dec 2008, Oliver Schmidt wrote:Hi,1. DOS 3.3 rewritten as an ABI emulation layer? [...] If it works, it might make some DOS 3.3 stuff more readily accessible to hard disk and 3.5" disk users.My (surely limited) experience is that DOS 3.3 programs which don't actively access DOS 3.3 tend to work with BASIC.SYSTEM as it occupies the same memory area used by (non-moved) DOS 3.3. On the other hand DOS 3.3 programs actually calling into DOS 3.3 tend to do so on the sector level (using RWTS calls) instead of the file level (using File Manager calls). So the question is what you would want to emulate? 1. Emulating DOS 3.3 files with ProDOS 8 files should be feasable (with some restrictions on file names etc.), but the question is how useful it would be (see above). 2. Emulating DOS 3.3 sectors with ProDOS 8 sectors doesn't make sense. 3. Emulating DOS 3.3 sectors with ProDOS 8 image files makes most sense and was therefore already done in the 80's: http://en.wikipedia.org/wiki/DOS.MASTER Just my two cents, OliverLooking more to #1. And I don't see why, for example, a chargen would crash BASIC.SYSTEM, but a lot of them do. I'm talking programs that are still predominantly BASIC, but do use a good amount of machine code to do things BASIC really can't.
It's likely that the problem has to do with the way the CHARGEN uses the CSW/KSW hooks. DOS and ProDOS have different ways of "registering" I/O diversion. They are both pretty simple, but different. DOS wants you to set CSW and KSW and call an entry point for it to "internalize" the vectors and reset them to keep DOS active. BASIC.SYSTEM wants you to just set vectors in the global page. It should be an easy patch to get it working properly under ProDOS. -michael ******** Note new website URL ******** NadaNet and AppleCrate II for Apple II parallel computing! Home page: http://home.comcast.net/~mjmahon/ "The wastebasket is our most important design tool--and it's seriously underused."