Update of /cvsroot/arcem/arcem/amiga
In directory vz-cvs-4.sog:/tmp/cvs-serv5945

Modified Files:
      Tag: arcem-fast
        ArcEm.guide ArcEm.info DispKbd.c arcem-os3.info platform.h 
        wb.c 
Log Message:
Add some configuration options to swap mouse buttons (for two button mice) and 
toggle console output.  Reduce mouse pointer image flicker (can be reduced 
further with WaitTOF() but the pointer refreshes so often that this impacts 
performance significantly)


Index: arcem-os3.info
===================================================================
RCS file: /cvsroot/arcem/arcem/amiga/Attic/arcem-os3.info,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -d -r1.1.2.1 -r1.1.2.2
Binary files /tmp/cvs1rS47Z and /tmp/cvs3wJydO differ

Index: ArcEm.info
===================================================================
RCS file: /cvsroot/arcem/arcem/amiga/ArcEm.info,v
retrieving revision 1.3.2.2
retrieving revision 1.3.2.3
diff -u -d -r1.3.2.2 -r1.3.2.3
Binary files /tmp/cvshdIktY and /tmp/cvsxbD6zM differ

Index: platform.h
===================================================================
RCS file: /cvsroot/arcem/arcem/amiga/platform.h,v
retrieving revision 1.5.2.5
retrieving revision 1.5.2.6
diff -u -d -r1.5.2.5 -r1.5.2.6
--- platform.h  30 Oct 2011 17:42:22 -0000      1.5.2.5
+++ platform.h  5 Nov 2011 23:22:00 -0000       1.5.2.6
@@ -39,4 +39,5 @@
 extern void sound_exit(void);
 
 int force8bit;
+int swapmousebuttons;
 #endif

Index: DispKbd.c
===================================================================
RCS file: /cvsroot/arcem/arcem/amiga/DispKbd.c,v
retrieving revision 1.14.2.12
retrieving revision 1.14.2.13
diff -u -d -r1.14.2.12 -r1.14.2.13
--- DispKbd.c   30 Oct 2011 19:44:50 -0000      1.14.2.12
+++ DispKbd.c   5 Nov 2011 23:22:00 -0000       1.14.2.13
@@ -286,10 +286,6 @@
  offset=0;
   memptr=MEMC.Cinit*16;
 
-       BltBitMap(friend.BitMap,OldMouseX,OldMouseY,
-                       window->RPort->BitMap,OldMouseX,OldMouseY,
-                       32,32,0x0C0,0xff,NULL);
-
        mask[0] = 0;
        mask[1] = 0;
        mask[2] = 0;
@@ -345,6 +341,12 @@
 
 // HorizPos,VertPos
 
+//     WaitTOF();
+
+       BltBitMap(friend.BitMap,OldMouseX,OldMouseY,
+                       window->RPort->BitMap,OldMouseX,OldMouseY,
+                       32,32,0x0C0,0xff,NULL);
+
        BltMaskBitMapRastPort(mouse_bm, 0, 0, window->RPort,
                HorizPos, VertPos, 32, height, (ABC|ABNC|ANBC), mask);
 
@@ -539,10 +541,6 @@
  offset=0;
   memptr=MEMC.Cinit*16;
 
-       BltBitMap(friend.BitMap,OldMouseX,OldMouseY,
-                       window->RPort->BitMap,OldMouseX,OldMouseY,
-                       32,32,0x0C0,0xff,NULL);
-
        mask[0] = 0;
        mask[1] = 0;
        mask[2] = 0;
@@ -592,6 +590,12 @@
 
 // HorizPos,VertPos
 
+//     WaitTOF();
+
+       BltBitMap(friend.BitMap,OldMouseX,OldMouseY,
+                       window->RPort->BitMap,OldMouseX,OldMouseY,
+                       32,32,0x0C0,0xff,NULL);
+
        BltMaskBitMapRastPort(mouse_bm, 0, 0, window->RPort,
                HorizPos, VertPos, 32, height, (ABC|ABNC|ANBC), mask);
 
@@ -757,19 +761,31 @@
                                        break;
 
                                        case MENUDOWN:
-                                               keyboard_key_changed(&KBD, 
ARCH_KEY_button_3,FALSE);
+                                               if(!swapmousebuttons)
+                                                       
keyboard_key_changed(&KBD, ARCH_KEY_button_3,FALSE);
+                                               else
+                                                       
keyboard_key_changed(&KBD, ARCH_KEY_button_2,FALSE);
                                        break;
 
                                        case MENUUP:
-                                               keyboard_key_changed(&KBD, 
ARCH_KEY_button_3,TRUE);
+                                               if(!swapmousebuttons)
+                                                       
keyboard_key_changed(&KBD, ARCH_KEY_button_3,TRUE);
+                                               else
+                                                       
keyboard_key_changed(&KBD, ARCH_KEY_button_2,TRUE);
                                        break;
 
                                        case MIDDLEDOWN:
-                                               keyboard_key_changed(&KBD, 
ARCH_KEY_button_2,FALSE);
+                                               if(!swapmousebuttons)
+                                                       
keyboard_key_changed(&KBD, ARCH_KEY_button_2,FALSE);
+                                               else
+                                                       
keyboard_key_changed(&KBD, ARCH_KEY_button_3,FALSE);
                                        break;
 
                                        case MIDDLEUP:
-                                               keyboard_key_changed(&KBD, 
ARCH_KEY_button_2,TRUE);
+                                               if(!swapmousebuttons)
+                                                       
keyboard_key_changed(&KBD, ARCH_KEY_button_2,TRUE);
+                                               else
+                                                       
keyboard_key_changed(&KBD, ARCH_KEY_button_3,TRUE);
                                        break;
                                }
                        break;

Index: wb.c
===================================================================
RCS file: /cvsroot/arcem/arcem/amiga/wb.c,v
retrieving revision 1.3.2.5
retrieving revision 1.3.2.6
diff -u -d -r1.3.2.5 -r1.3.2.6
--- wb.c        30 Oct 2011 19:44:50 -0000      1.3.2.5
+++ wb.c        5 Nov 2011 23:22:00 -0000       1.3.2.6
@@ -42,6 +42,7 @@
        char *s;
 
        force8bit = 0;
+       swapmousebuttons = 0;
 
        if((*wbarg->wa_Name) && (dobj=GetDiskObject(wbarg->wa_Name)))
        {
@@ -134,6 +135,8 @@
 
                if(FindToolType(toolarray,"FORCE8BIT")) force8bit=1;
 
+               if(FindToolType(toolarray,"SWAPBUTTONS")) swapmousebuttons=1;
+
                if(FindToolType(toolarray, "USEUPDATEFLAGS"))
                        DisplayDev_UseUpdateFlags = 1;
 
@@ -144,6 +147,15 @@
                if(FindToolType(toolarray, "AUTOUPDATEFLAGS"))
                        DisplayDev_AutoUpdateFlags = 1;
 
+               if(FindToolType(toolarray, "NOCONSOLEOUTPUT"))
+               {
+                       /* if we are launching from WB, we don't need console 
windows popping up */
+                       fclose(stderr);
+                       stderr = fopen("NIL:","w");
+
+                       fclose(stdout);
+                       stdout = fopen("NIL:","w");
+               }
 
                /* This code implements ReadConfig.c via tooltypes - it 
searches for
                        ST506DISC, but it will only support 1 line atm.
@@ -211,15 +223,6 @@
                return;
        }
 
-       #ifdef __amigaos4__
-       /* if we are launching from WB, we don't need console windows popping 
up */
-               fclose(stderr);
-               stderr = fopen("NIL:","w");
-
-               fclose(stdout);
-               stdout = fopen("NIL:","w");
-       #endif
-               
        for(i=0,wbarg=WBenchMsg->sm_ArgList;i<WBenchMsg->sm_NumArgs;i++,wbarg++)
        {
                olddir =-1;

Index: ArcEm.guide
===================================================================
RCS file: /cvsroot/arcem/arcem/amiga/ArcEm.guide,v
retrieving revision 1.7
retrieving revision 1.7.2.1
diff -u -d -r1.7 -r1.7.2.1
--- ArcEm.guide 25 Apr 2008 20:41:35 -0000      1.7
+++ ArcEm.guide 5 Nov 2011 23:22:00 -0000       1.7.2.1
@@ -36,6 +36,10 @@
 Additionally, there is a tooltype ST506DISC which allows you to specify one 
".arcemrc" config line.
 
 FORCE8BIT: Force ArcEm to only open 8-bit screens.  This potentially avoids 
some screen closing/opening and monitor resyncing, but may use more memory or 
be slower especially on planar configurations.
+
+SWAPMOUSEBUTTONS: Swaps MMB and RMB, most useful to allow two button mice to 
get into RISC OS menus.
+
+NOCONSOLEOUTPUT: Stops console output.
 @endnode
 
 @node ARexx


------------------------------------------------------------------------------
RSA(R) Conference 2012
Save $700 by Nov 18
Register now
http://p.sf.net/sfu/rsa-sfdev2dev1
-- 
arcem-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/arcem-cvs

Reply via email to