BBS: Inland Empire Archive Date: 03-22-92 (03:22) Number: 79 From: DARYL POSNETT Refer#: 78 To: JAMES VAHN Recvd: NO Subj: Powerbasic Conf: (2) Quik_Bas
JV>DP>No argument here about that, but as yet, no one has been able to put JV>DP>forth a proof similar to my argument that BASIC is JV>DP>any easier or faster to JV>DP>develop with. For me it isn't, I use both languages, some things are JV>DP>eaiser with BASIC and some things are easier with C. JV>Ack! For a guy that is opposed to language wars, do you realize you JV>spend more time on the subject than anyone I've ever met! :-) Perhaps you'd like to meet some of my friends. Seriously, I didn't start this, someone made a mis-statement about C and I responded. I use both BASIC and C and tried to take a middle objective ground. It is clear to me that BASIC programmers in general don't want to hear anything that doesn't place their language of choice in a favorable light, even the TRUTH. I do like to debate, and my argument still holds, nobody has been able to prove that BASIC is eaiser to use or provides for faster development than C. If you prefer it, that's fine, but that isn't proof, and it appears that people would rather get mad, whine, or spread more untruths than admit that BASIC doesn't have any inherent advantage (other than being easy to learn) over other general purpose languages. JV>How about showing me how to tell if hardware alternate register maps JV>are supported on a LIM 4 EMS driver or if it is emulated in software JV>and whether it works or not. Also how to tell if data aliasing is JV>supported.. JV>In BASIC please.. Thanks! jim Calling EMS function 59h subfunction 00 returns the EMS hardware capabilities. Pass the segment:offset of a buffer in ES:DI , the number of alternate register sets is returned in an integer at offset 02. Of course these functions are meant to be operation system functions and can be disabled. They typically are not used by application code. TYPE EmsHardware EmmRawPageSize AS INTEGER NumberAlternateRegisterSets AS INTEGER SizeMappingContextSaveArea AS INTEGER NumberDMARegisterSets AS INTEGER DMAOperationType AS INTEGER END TYPE DIM EmsH AS EmsHardware DIM Regs AS RegTypeX Regs.ax = &h5900 Regs.es = VARSEG(EmsH) Regs.di = VARPTR(EmsH) CALL INTERRUPTX (&h67,Regs,Regs) Software only EMS emulators that simulate page mapping by copying blocks of data in memory cannot perform data aliasing. To test for this capability 1. Map on logical page into at least two physical pages. 2. Write data to one of the physical pages 3. if the data written in step 2 appears in each of the other physical pages that the logical page was mapped into, data aliasing is supported. I hope this information helps, you might take a look at the Waite Groups MS-DOS Developers guide. I develop cross compilers and programmers tools and have yet to have much use for EMS. As far as the language discussion goes, might I suggest that If I am the sole recipient of your message then perhaps you too are guilty of admiring the emperors new clothes. Daryl ___ X SLMR 2.0 X Have you tried an Applied Design Group product today ? --- Maximus 2.00 * Origin: Inland Empire Archive (1:346/10)
Books at Amazon:
Back to BASIC: The History, Corruption, and Future of the Language
Hackers: Heroes of the Computer Revolution (including Tiny BASIC)
Go to: The Story of the Math Majors, Bridge Players, Engineers, Chess Wizards, Scientists and Iconoclasts who were the Hero Programmers of the Software Revolution
The Advent of the Algorithm: The Idea that Rules the World
Moths in the Machine: The Power and Perils of Programming
Mastering Visual Basic .NET