delorie.com/archives/browse.cgi | search |
X-Authentication-Warning: | delorie.com: mail set sender to djgpp-bounces using -f |
From: | RayeR <glaux AT centrum DOT cz> |
Newsgroups: | comp.os.msdos.djgpp |
Subject: | Re: PM interrupt handling - how to call old old ISR with slower rate than my new ISR |
Date: | Fri, 02 Nov 2007 06:09:32 -0700 |
Organization: | http://groups.google.com |
Lines: | 29 |
Message-ID: | <1194008972.850005.77660@k79g2000hse.googlegroups.com> |
References: | <1193997973 DOT 429569 DOT 16180 AT y42g2000hsy DOT googlegroups DOT com> |
<20071102105257 DOT 6AE83570272 AT panel DOT abserver DOT es> | |
NNTP-Posting-Host: | 195.70.144.29 |
Mime-Version: | 1.0 |
X-Trace: | posting.google.com 1194008973 29254 127.0.0.1 (2 Nov 2007 13:09:33 GMT) |
X-Complaints-To: | groups-abuse AT google DOT com |
NNTP-Posting-Date: | Fri, 2 Nov 2007 13:09:33 +0000 (UTC) |
In-Reply-To: | <20071102105257.6AE83570272@panel.abserver.es> |
User-Agent: | G2/1.0 |
X-HTTP-UserAgent: | Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070802 SeaMonkey/1.1.4,gzip(gfe),gzip(gfe) |
Complaints-To: | groups-abuse AT google DOT com |
Injection-Info: | k79g2000hse.googlegroups.com; posting-host=195.70.144.29; |
posting-account=ps2QrAMAAAA6_jCuRt2JEIpn5Otqf_w0 | |
To: | djgpp AT delorie DOT com |
DJ-Gateway: | from newsgroup comp.os.msdos.djgpp |
Reply-To: | djgpp AT delorie DOT com |
Errors-To: | nobody AT delorie DOT com |
X-Mailing-List: | djgpp AT delorie DOT com |
X-Unsubscribes-To: | listserv AT delorie DOT com |
On Nov 2, 11:52 am, "JM Rams" <josepma DOT DOT DOT AT turomas DOT com> wrote: > Well, I don't simulate real time clock, I chain my new interrupt, then real > time interrupt is called more than 18,3 times per second. The thing I do is > discount real time counters to make the increment only 18,3 times per > second. > > All works, hour, callendar, floppy disk. "uclock" don`t works because it > uses registers of timer. I do my own uclock. Aha, understand. but it will not prevent if something else is hooked at timer. and another thing. It's suggested to use lock functions to prevent code/data swapping off. but how do i get size of code of my PM_ISR? Somewhere I saw a trick: void ISR() {...} void ISR_END {} and then calc size=(long)ISR_END-(long)ISR; But GCC seems to not keep the order because I got negative size - mean that in real ISR_END() is placed at lower address than ISR() so this completly fails. Better idea? Maybe that if it's only small program I could disable paging at all via crt0 flag but will not mess up when running under windows?
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |