Re: Amiga screen modes in wscons

Carlos Milán Figueredo <[email protected]> Fri, 10 Nov 2023 16:38:57 +0000
Newsgroups gmane.os.netbsd.ports.amiga
Message-ID <CO6P220MB05644687987D6CACA10FCA0CC9AEA@CO6P220MB0564.NAMP220.PROD.OUTLOOK.COM>
Hi Michael!=0A=
=0A=
From: [email protected] <[email protected]> on behalf o=
f Michael van Elst <[email protected]>=0A=
Sent: Friday, November 10, 2023 13:49=0A=
=A0=0A=
>>Hi everyone!=0A=
>>Is there a way to change the screen mode used by wscons at boot time?=0A=
=0A=
>I don't think so.=0A=
=0A=
Thanks to your guidance I understand why :)=0A=
=0A=
> It's possible that a kernel compiled without option GRF_AGA_VGA=0A=
> works better for you.=0A=
=0A=
That would probably have the same effect as not using -A (that works well f=
or me), without leaving behind AGA support, it would be a nice solution. I =
will give a try to compile my own kernel.=0A=
=0A=
> The code for setting up the graphics is in sys/arch/amiga/dev/grfabs_cc.c=
:=0A=
=0A=
> /* static, so I can patch and play */=0A=
=0A=
> #ifdef GRF_AGA_VGA=0A=
> int=A0=A0=A0=A0 pAGA_htotal=A0 =3D 0x079;=0A=
> int=A0=A0=A0=A0 pAGA_vtotal=A0 =3D 0x24d;=0A=
> int=A0=A0=A0=A0 pAGA_vbstop=A0 =3D 0x019;=0A=
> int=A0=A0=A0=A0 pAGA_hcenter =3D 0x04b;=0A=
> #else=0A=
> int=A0=A0=A0=A0 pAGA_htotal=A0 =3D 0x081;=0A=
> int=A0=A0=A0=A0 pAGA_vtotal=A0 =3D 0x23d;=0A=
> int=A0=A0=A0=A0 pAGA_vbstop=A0 =3D 0x017;=0A=
> int=A0=A0=A0=A0 pAGA_hcenter =3D 0x04f;=0A=
> #endif=0A=
> int=A0=A0=A0=A0 pAGA_hsstrt=A0 =3D 0x00f;=0A=
> int=A0=A0=A0=A0 pAGA_hsstop=A0 =3D 0x019;=0A=
> int=A0=A0=A0=A0 pAGA_hbstrt=A0 =3D 0x001;=0A=
> int=A0=A0=A0=A0 pAGA_hbstop=A0 =3D 0x021;=0A=
> int=A0=A0=A0=A0 pAGA_vsstrt=A0 =3D 0x001;=0A=
> int=A0=A0=A0=A0 pAGA_vsstop=A0 =3D 0x008;=0A=
> int=A0=A0=A0=A0 pAGA_vbstrt=A0 =3D 0x000;=0A=
=0A=
> So you could also patch the kernel binary instead of recompiling.=0A=
=0A=
This is really nice! I can probably solve the problem without giving up the=
 GRF_AGA_VGA playing a bit with htotal and hcenter, just enough to get the =
column I am not able to display. However I have no clue on how to apply the=
 patch to the binary file. I think I can compile my own kernel with differe=
nt values and make a diff with the original one, but is there an easier way=
 or documented procedure?=0A=
=0A=
Regards,=0A=
Carlos=