Index: [thread] [date] [subject] [author]
  From: Jan Kneschke <Jan.Kneschke@kiel.netsurf.de>
  To  : ggi-develop@eskimo.com
  Date: Fri, 17 Jul 1998 01:04:44 +0200 (MEST)

triggered some probs with libAA-target

i just started writing the tutorial. since i mostly do programming stuff at
the console i wanted to test if the libAA-target is working. 

here are my test results:

first of all i had the change the display/aa/Makefile, because i'm using
ncurses and a static libaa using a dynamic libslang.

>>>
--- Makefile~   Fri Jul 17 00:01:48 1998
+++ Makefile    Thu Jul 16 23:43:45 1998
@@ -30,5 +30,5 @@

 ifeq ($(OS),Linux)
-SHLIBLDLIBS=-L/usr/X11R6/lib -L/usr/X11/lib -lX11 -lgpm -lcurses
+SHLIBLDLIBS=-L/usr/X11R6/lib -L/usr/X11/lib -lX11 -lgpm -lncurses -lslang
 else
 ifeq ($(OS),OSF1)
<<<

ok, everything is compiled. LIBGGI_DISPLAY is set to "display-AA:".

starting demo without any params gives me:

Trying mode 0x0#0x0 D0x0 F 1 [0/0]
Suggested mode 0x0#0x0 D1x1 F 1 [8/8] 


white=1
black=0
Unknown bit size used!
libggi: Failed to set requested mode
memvisual error ...
floating point exception (core dumped)
weigon@weigon:/linux2/home/weigon/degas/lib/libggi/demos >

there are 3 points that make me stomach-aches.
-- point 1: suggested mode => 0x0#0x0 D1x1 F1 [8/8]
-- point 2: memvisual error
-- point 3: core dump

the first and last one at first:

the floating point error occures in line 560:

		x=random()%sx;

sx is 0 !! here is a small bug-catcher.

>>>
--- demo.c~     Thu Jul 16 19:21:01 1998
+++ demo.c      Thu Jul 16 23:50:59 1998
@@ -338,4 +338,12 @@
 	vx=mode.virt.x;   vy=mode.virt.y;
 	sx=mode.visible.x;sy=mode.visible.y;
+#if 1
+	if (sx == 0 || sy == 0) {
+	fprintf(stderr,"vertical or horizontal size == 0 !!\n");
+		ggiClose(vis);
+		ggiExit();
+		return 2;
+	}
+#endif
 
 	switch (type) {
<<<

next attempt:

vertical or horizontal size == 0 !!
demo: can't resolve symbol '_mansync_stop'

-- point 4: unresolved symbol '_mansync_stop'

ok. AFAICS GGI_AUTO hasn't found it's way into display-aa. perhaps i can send
a patch for this later. 

++ point 1 cleared
++ point 3 cleared

ok, since GGI_AUTO isn't working i'll try demo with params now.

Unknown bit size used!
libggi: Failed to set requested mode
memvisual error...

Killed

-- point 5: Killed

i get 'Killed' from dots, stars and flyin_ggis, too.

checkmode says that '8/8' is ok and that `point 4` is missing.

speed gives:

Graph mode 0x0 (0x0 virt)
white=255
Direct buffer :
Layout: Linear Pixel Buffer
Window: 160x50 at 0x0 stride=160,bpp=8
Mapped at read:0x8051060, write:0x8051060 (paged 0)
Access supported at byte-/word-/dword-/qword-boundaries.
Alignment required at byte-boundaries.
Need to swap nothing,
speed: can't resolve symbol '_mansync_stop'

and here is something intersting:
we have a visible and vitural resolution of 0x0, but the LPB-Window is
160x50 ??

-- point 6: speed: vis/virt-res != LPB-window

(*surprise*) showaccel gives me some aa-graphical-output. i don't wanna say
that the output is ok, but i can see a border and something within this
borderline (no boxes !).

next one is testpattern:
Using mode (-1x-1 [-1x-1]  -1bpp)
libggi: Failed to set requested mode
Can't set mode

-- point 7: testpattern: using -1x-1#-1x-1[-1]

here is the patch:
>>>
--- testpattern.c~	Wed Jul  8 19:03:05 1998
+++ testpattern.c	Fri Jul 17 00:46:23 1998
@@ -569,6 +569,6 @@
 
 	if (argc==1) {
-		sx=GGI_AUTO;
-		sy=GGI_AUTO;
+		sx=GT_AUTO;
+		sy=GT_AUTO;
 		vx=sx;
 		vy=sy;
@@ -604,5 +604,5 @@
 	   switch (depth) {
 		case -1:
-			type=GGI_AUTO;
+			type=GT_AUTO;
 			break;
 		case 1:
@@ -642,5 +642,5 @@
 
 	if (textmode) 
-		err=ggiSetTextMode(vis,sx,sy,vx,vy,GGI_AUTO,GGI_AUTO,type);
+		err=ggiSetTextMode(vis,sx,sy,vx,vy,GT_AUTO,GT_AUTO,type);
 	else
 		err=ggiSetGraphMode(vis,sx,sy,vx,vy,type);
<<<
++ point 7 cleared

fine. testpattern with or without params gives 'Killed'. 


let's collect the missing points:
-- point 2: memvisual error
-- point 4: unresolved symbol '_mansync_stop'
-- point 5: Killed
-- point 6: speed: vis/virt-res != LPB-window

comments:
(point 2) i get this error under X, too.
(point 4) here is the output of nm -s :
X.so
00001d64 t _mansync_cont
00001be4 t _mansync_dummy
00001c04 t _mansync_handler
00001d44 t _mansync_ignore
00001c70 t _mansync_start
00001cec t _mansync_stop
aa.so
00004f28 t _mansync_cont
00004dcc t _mansync_dummy
00004dec t _mansync_handler
00004f08 t _mansync_ignore
00004e28 t _mansync_start
00004ea8 t _mansync_stop
         U _mansync_stop

please tell me why AA need's libX11...

(point 5 & 6) i don't have any clue.

BTW: i havn't applied one of these patches, because i want to here your
comments, first.

thats all
  Jan

--- 
       Project: GGI - S3-Vision-driver -- http://www.ggi-project.org/
         -)=  Jan (Weigon) Kneschke -- Kiel -- Northern Germany =(-

Index: [thread] [date] [subject] [author]