Huh.I thought all screens had the same columns and rows (Different
scales,obviously),but the same text slots.Apparently CGA monitors are
different.

On Wed, May 27, 2015 at 2:20 PM, Mateusz Viste <mate...@viste.fr> wrote:

> On 25/05/2015 06:33, Ralf Quint wrote:
>  >> DIR: When using DIR/P, DIR seems to think that the screen is 1-row
> high,
>  >> and asks for a keypress for every line (the screen is CGA-based, 25
> rows).
>  > That must be some issue with your PC, works fine for me and should not
>  > be related to 8086 code or not at all...
>
> Hi, I had a few minutes of time to look into this. And what I was
> half-guessing two days ago seems correct: my PC is fine, that's FreeCOM
> who's buggy.
>
> Here is an extract of what makes the DIR command wait after a page of
> text (extracted from SVN's trunk and slightly reformatted for better
> mail readability):
>
> /* increment our line if paginating, display message at end of screen */
> static int incline(void) {
>    if (!optP) return E_None;
>    if (++line >= MAX_Y) {
>      line = 0;
>      return pause();
>    }
>    return 0;
> }
>
> Now the obvious question of course is "what is MAX_Y?". And one grep
> later, I've got the answer:
>
> $ grep 'MAX_Y' -R *
> cmd/dir.c:  if (++line >= MAX_Y)
> include/misc.h:#define MAX_Y (*(unsigned char far*)MK_FP(0x40, 0x84))
> include/misc.h:#define SCREEN_ROWS (MAX_Y + 1)
> (...)
>
> This is exactly what I was implying in my previous message - FreeCOM
> doesn't care about CGA, and assumes that the screen's height will always
> be available under 0040:0084, which is true only for EGA+.
>
> Mateusz
>
>
>
> ------------------------------------------------------------------------------
> _______________________________________________
> Freedos-devel mailing list
> Freedos-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/freedos-devel
>
------------------------------------------------------------------------------
_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to