Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.os.msdos.programmer > #1386
| From | "James Harris" <james.harris.1@gmail.com> |
|---|---|
| Newsgroups | alt.os.development, comp.os.msdos.programmer, alt.lang.asm |
| Subject | Re: detecting emulation or console windows |
| Date | 2014-06-02 17:05 +0100 |
| Organization | A noiseless patient Spider |
| Message-ID | <lmi7cc$ilr$1@dont-email.me> (permalink) |
| References | (5 earlier) <op.xgs8v3iw6zenlw@localhost> <lmh1ac$p63$1@dont-email.me> <op.xgtf1zk06zenlw@localhost> <lmhduh$uji$1@dont-email.me> <op.xgtw0lnh6zenlw@localhost> |
Cross-posted to 3 groups.
"Rod Pemberton" <dont_use_email@xnothavet.cqm> wrote in message news:op.xgtw0lnh6zenlw@localhost... > On Mon, 02 Jun 2014 04:51:28 -0400, James Harris > <james.harris.1@gmail.com> wrote: >> "Rod Pemberton" <dont_use_email@xnothavet.cqm> wrote in message >> news:op.xgtf1zk06zenlw@localhost... > >>> A20 enables correctly for each >>> supported method, at least for the sample set. >> >> Not quite. SCPA enable fails on the ABIT > > Ah, you missed my weasel wording: "for each supported method". > I.e., the PS/2 method is _not_ supprted on the ABIT ... I noticed the wording but evidently misunderstood your meaning. I see now you meant supported *on a given machine*. >> The A20 test routine I mentioned follows below. >> >> [...] > > I have a whole bunch of DOS .com's which > enable and disable A20. In DOS, you have to > boot clean, i.e., no XMS memory manager to > correctly detect and use A20. XMS memory managers > emulate A20. You mean they enable it and then program segment tables to mimic wrapping as needed? I'm not sure whether that would work or not. Just a guess. > DOS .com programs: > -on and off for keyboard A20 bit > -on and off for PS/2 bit > -on and off for Int 15 - and some others for Int 15 > -on for UHCI A20 sequence > -(unimplemented) on for OHCI A20 sequence > (this might be same as the UHCI sequence...) > -some others that were experimental or used A20 > routines from other people > > I don't want to give away the code for the my code > that checks the A20 status, but I'll tell you what > it does. You could probably recreate it. ... You probably only need that complexity because you start from DOS. As this has come up I have to say that I was surprised at the start of this thread when you mentioned that your new project started from DOS the way that your OS does. I remember discussing how complex that made your OS startup. Did you not want to do away with that in your new project? > AIUI, the Int instruction should force memory coherency > and/or cache flush etc to ensure that the memory wrap or > unwrap is in effect prior to generating the interrupt. Is that needed? We discussed this on alt.os.development a few years ago and, IIRC, came to the conclusion that the A20 mask occurs between the CPU and its caches even if those caches are on chip. (There is an A20 gate input pin on CPUs with caches.) So the test of A20 is one of addressing, not memory values. In other words there is no need for memory coherency such as to allow updated values to drain to memory before reading them back from the other address. The only potential problem I can remember would be a machine such as an old pre-486 (i.e. one which has no on-chip cache) then an external cache and then the A20 gate. That was theoretcical. We didn't identify any particular machine which was built that way. James
Back to comp.os.msdos.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-31 18:31 -0400
Re: detecting emulation or console windows Ross Ridge <rridge@csclub.uwaterloo.ca> - 2014-05-31 19:59 -0400
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-31 20:54 -0400
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-05-31 21:43 -0400
Re: detecting emulation or console windows "James Harris" <james.harris.1@gmail.com> - 2014-06-01 22:48 +0100
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-02 00:46 -0400
Re: detecting emulation or console windows "James Harris" <james.harris.1@gmail.com> - 2014-06-02 06:15 +0100
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-02 03:21 -0400
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-02 03:32 -0400
Re: detecting emulation or console windows "James Harris" <james.harris.1@gmail.com> - 2014-06-02 09:51 +0100
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-02 09:27 -0400
Re: detecting emulation or console windows "James Harris" <james.harris.1@gmail.com> - 2014-06-02 17:05 +0100
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-02 19:25 -0400
Re: detecting emulation or console windows "James Harris" <james.harris.1@gmail.com> - 2014-06-04 07:55 +0100
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-04 03:20 -0400
Re: detecting emulation or console windows Ross Ridge <rridge@csclub.uwaterloo.ca> - 2014-06-01 14:03 -0400
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-02 00:53 -0400
Re: detecting emulation or console windows Ross Ridge <rridge@csclub.uwaterloo.ca> - 2014-06-02 15:55 -0400
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-02 19:27 -0400
Re: detecting emulation or console windows Ross Ridge <rridge@csclub.uwaterloo.ca> - 2014-06-03 17:00 -0400
Re: detecting emulation or console windows Sjouke Burry <burrynulnulfour@ppllaanneett.nnll> - 2014-06-01 06:25 +0200
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-01 02:50 -0400
Re: detecting emulation or console windows "James Harris" <james.harris.1@gmail.com> - 2014-06-01 07:53 +0100
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-01 04:53 -0400
Re: detecting emulation or console windows "James Harris" <james.harris.1@gmail.com> - 2014-06-01 20:57 +0100
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-02 00:48 -0400
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-02 03:20 -0400
Re: detecting emulation or console windows JJ <duh@nah.meh> - 2014-06-02 03:43 +0700
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-02 00:34 -0400
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-03 07:06 -0400
Re: detecting emulation or console windows JJ <duh@nah.meh> - 2014-06-03 20:25 +0700
Re: detecting emulation or console windows "wolfgang kern" <nowhere@never.at> - 2014-06-03 20:52 +0200
Re: detecting emulation or console windows "James Harris" <james.harris.1@gmail.com> - 2014-06-03 22:59 +0100
Re: detecting emulation or console windows CN <qmbmnp3799@pacbell.net> - 2014-06-03 18:39 -0700
Re: detecting emulation or console windows "James Harris" <james.harris.1@gmail.com> - 2014-06-04 07:06 +0100
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-04 03:07 -0400
Re: detecting emulation or console windows "James Harris" <james.harris.1@gmail.com> - 2014-06-04 09:16 +0100
Re: detecting emulation or console windows "James Harris" <james.harris.1@gmail.com> - 2014-06-03 23:00 +0100
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-06-10 17:37 -0400
Re: detecting emulation or console windows Wildman <best_lay@yahoo.com> - 2014-06-11 00:37 +0000
Re: detecting emulation or console windows "Rod Pemberton" <dont_use_email@xnothavet.cqm> - 2014-07-27 12:11 -0400
csiph-web