AMIS, Optimize memory usage (Developers)
(snipping)
> Anyway, if your goal is to optimize the memory usage of this driver:
...
All done (credit Japheth), no fragmentation nor PSP remains in any case.
Other questions ? :=)
Since we are evoking byte shaving, let me start a small digression of a case hopefully not completely off topic and which might amuse or interest some readers. The original (keybgr) took care of saving/restoring the flags. That precaution probably seemed necessary to the seasoned (and cautious) professional programmer but, oyez! oyez! hear...!, both the clueless newbie (confused anyway with all that there interrupt stuff), AND... the "good (TM)" programmer (after carefully checking his facts) will omit the flag save/restore (thereby reducing the size of the resident KBFR by a whopping 6 bytes iirc) :=)
The reason a software int 15h "hook" does not need to preserve the running flags is, of course, that no information is passed "down" thru them and, conversely, in cases information has to be passed back "up" to the (initial) caller, it is by altering the flags image put on the stack by the initial int 15 caller, not the running flags.
And why I'm bringing this fact here is that, indeed, the preserving/restoring of the flags around our int 15 hook was hardly a bug (it is useless but does no harm) and would not warrant a mention in the common case, nonetheless it is a a little lack of precision when one is... shaving bytes!
For anybody who wouldn't believe we do not need to pass the flags (received "from upwards") down the chain , while writing this I've been checking some int 15 "hooker", viz MS-Smartdrv (which is willing to catch the "3 finger salute" if you wonder why it hooks int 15). Well, MS got it right, it doesn't lose time in needlessly preserving the flags. Considering ~1 billion PCS have issued quadrillions of int 15s "through" Smartdrv, if their (and my) method were faulty you bet someone would've noticed :=)
Enough, sorry for the digression - I may've had a little wine too much
---
Ninho
Complete thread:
- int 15/4f French keyboard driver ready + *Ping Japheth* - Ninho, 27.04.2011, 13:34 (Developers)
- int 15/4f French keyboard driver ready + *Ping Japheth* - Japheth, 27.04.2011, 16:02
- int 15/4f French keyboard driver ready + *Ping Japheth* - Ninho, 27.04.2011, 17:13
- int 15/4f French keyboard driver ready + *Ping Japheth* - Japheth, 28.04.2011, 07:47
- int 15/4f French keyboard driver ready + *Ping Japheth* - Ninho, 27.04.2011, 17:13
- int 15/4f French keyboard driver ready + Now what? * - Ninho, 10.05.2011, 13:30
- int 15/4f French keyboard driver ready + Now what? * - Rugxulo, 10.05.2011, 23:52
- int 15/4f French keyboard driver ready + Now what? * - Ninho, 11.05.2011, 13:38
- int 15/4f French keyboard driver ready + Now what? * - ecm, 11.05.2011, 19:39
- int 15/4f French keyboard driver ready + Now what? * - Ninho, 12.05.2011, 10:56
- int 15/4f French keyboard driver ready + Now what? * - bretjohn, 12.05.2011, 17:13
- int 15/4f French keyboard driver ready + Now what? * - Ninho, 12.05.2011, 22:27
- AMIS, Optimize memory usage - ecm, 13.05.2011, 00:24
- AMIS, Optimize memory usage - Ninho, 13.05.2011, 01:33
- AMIS, Optimize memory usage - ecm, 13.05.2011, 01:45
- AMIS, Optimize memory usage - Ninho, 13.05.2011, 02:07
- AMIS, Optimize memory usage - ecm, 13.05.2011, 02:39
- AMIS, Optimize memory usage - Ninho, 13.05.2011, 02:58
- Correction, memory usage - Ninho, 13.05.2011, 02:50
- Memory usage, AMIS(!) - ecm, 13.05.2011, 03:00
- Memory usage, AMIS(!) - Ninho, 13.05.2011, 11:57
- Memory usage, AMIS(!) - ecm, 13.05.2011, 14:51
- Memory usage, AMIS(!) - bretjohn, 13.05.2011, 17:43
- Memory usage, AMIS(!) - Ninho, 13.05.2011, 18:15
- Memory usage, AMIS(!) - Japheth, 13.05.2011, 18:58
- Memory usage, AMIS(!) - bretjohn, 14.05.2011, 01:42
- Memory usage, AMIS(!) - Ninho, 14.05.2011, 11:38
- Sorry error :) - No contents - Ignore - Ninho, 14.05.2011, 11:41
- Memory usage, AMIS(!) - bretjohn, 15.05.2011, 17:26
- Int15 handler example: IISP; chain other functions directly - ecm, 15.05.2011, 18:30
- Int15 handler example: IISP; chain other functions directly - Ninho, 16.05.2011, 03:49
- Memory usage, AMIS(!) - Ninho, 15.05.2011, 20:57
- In reply to Bret - int 15/4F stuff - Ninho, 16.05.2011, 03:35
- In reply to Bret - int 15/4F stuff - Japheth, 16.05.2011, 10:18
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - Ninho, 16.05.2011, 12:19
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - tom, 16.05.2011, 13:35
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - Ninho, 16.05.2011, 15:10
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - tom, 16.05.2011, 17:13
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - bretjohn, 16.05.2011, 19:50
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - tom, 16.05.2011, 21:06
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - bretjohn, 17.05.2011, 18:10
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - tom, 17.05.2011, 19:47
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - bretjohn, 18.05.2011, 02:09
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - Japheth, 18.05.2011, 06:47
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - bretjohn, 18.05.2011, 19:08
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - tom, 18.05.2011, 12:35
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - bretjohn, 18.05.2011, 18:14
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - tom, 19.05.2011, 15:32
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - Rugxulo, 19.05.2011, 22:42
- Keyboard, codepages... - Ninho, 19.05.2011, 23:41
- FreeDOS DISPLAY (TSR vs. device driver?) - ecm, 20.05.2011, 14:09
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - Ninho, 19.05.2011, 23:59
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - tom, 20.05.2011, 00:49
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - Rugxulo, 19.05.2011, 22:42
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - tom, 19.05.2011, 15:32
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - bretjohn, 18.05.2011, 18:14
- In reply to Bret... - Ninho, 18.05.2011, 15:41
- DOS IO kernel part hooking Int15.4F ? - ecm, 18.05.2011, 20:35
- DOS IO kernel part hooking Int15.4F ? - Ninho, 18.05.2011, 22:41
- DOS kernel, Int15.4F - ecm, 18.05.2011, 22:48
- DOS IO kernel part hooking Int15.4F ? - Ninho, 18.05.2011, 22:41
- In reply to Bret... - tom, 19.05.2011, 15:15
- In reply to \\\ Tom... - Ninho, 19.05.2011, 19:27
- DOS IO kernel part hooking Int15.4F ? - ecm, 18.05.2011, 20:35
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - Japheth, 18.05.2011, 06:47
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - bretjohn, 18.05.2011, 02:09
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - tom, 17.05.2011, 19:47
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - bretjohn, 17.05.2011, 18:10
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - tom, 16.05.2011, 21:06
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - Ninho, 16.05.2011, 15:10
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - tom, 16.05.2011, 13:35
- In reply to : Bret 'll have to hate FreeDOS mKEYB, too - Ninho, 16.05.2011, 12:19
- In reply to Bret - int 15/4F stuff - Japheth, 16.05.2011, 10:18
- Int15 handler example: IISP; chain other functions directly - ecm, 15.05.2011, 18:30
- Memory usage, AMIS(!) - Ninho, 14.05.2011, 11:38
- Memory usage, AMIS(!) - bretjohn, 14.05.2011, 01:42
- Memory usage, AMIS(!) - Ninho, 13.05.2011, 11:57
- Memory usage, AMIS(!) - ecm, 13.05.2011, 03:00
- AMIS, Optimize memory usage - ecm, 13.05.2011, 02:39
- AMIS, Optimize memory usage - Ninho, 13.05.2011, 02:07
- AMIS, Optimize memory usage - Japheth, 13.05.2011, 07:28
- AMIS, Optimize memory usage - Ninho, 13.05.2011, 11:27
- AMIS, Optimize memory usage - ecm, 13.05.2011, 01:45
- AMIS, Optimize memory usage - Ninho, 13.05.2011, 01:33
- AMIS, Optimize memory usage - ecm, 13.05.2011, 00:24
- AMIS, No flaming - ecm, 13.05.2011, 00:24
- int 15/4f French keyboard driver ready + Now what? * - Ninho, 12.05.2011, 22:27
- AMIS - ecm, 13.05.2011, 00:24
- AMIS - Ninho, 13.05.2011, 02:21
- AMIS, Ciriaco - ecm, 13.05.2011, 03:23
- AMIS, Ciriaco, Ralph ? - Ninho, 13.05.2011, 12:16
- AMIS, Ciriaco - ecm, 13.05.2011, 03:23
- AMIS - Ninho, 13.05.2011, 02:21
- int 15/4f French keyboard driver ready + Now what? * - bretjohn, 12.05.2011, 17:13
- int 15/4f French keyboard driver ready + Now what? * - Ninho, 12.05.2011, 10:56
- int 15/4f French keyboard driver ready + Now what? * - Rugxulo, 11.05.2011, 20:12
- int 15/4f French keyboard driver ready + Now what? * - Ninho, 12.05.2011, 10:36
- int 15/4f French keyboard driver ready + Now what? * - ecm, 11.05.2011, 19:39
- int 15/4f French keyboard driver ready + Now what? * - Ninho, 11.05.2011, 13:38
- int 15/4f French keyboard driver ready + Now what? * - Rugxulo, 10.05.2011, 23:52
- int 15/4f French keyboard driver ready + *Ping Japheth* - Japheth, 27.04.2011, 16:02