/[cebix]/SheepShaver/src/Unix/video_x.cpp
ViewVC logotype

Log of /SheepShaver/src/Unix/video_x.cpp

Parent Directory Parent Directory | Revision Log Revision Log


Links to HEAD: (view) (annotate)
Sticky Tag:

Revision 1.52 - (view) (annotate) - [select for diffs]
Sun Feb 21 09:59:52 2010 UTC (4 years, 6 months ago) by cebix
Branch: MAIN
CVS Tags: HEAD
Changes since 1.51: +2 -2 lines
Diff to previous 1.51 , to selected 1.32
fixed warnings


Revision 1.51 - (view) (annotate) - [select for diffs]
Thu Feb 19 07:08:15 2009 UTC (5 years, 7 months ago) by asvitkine
Branch: MAIN
Changes since 1.50: +1 -0 lines
Diff to previous 1.50 , to selected 1.32
[Patch by Mike Sliczniak]
I was testing some other SS patches and I noticed that when I ran an X11
build of SS there were not all the video modes I expected in the the
control strip. Mac OS X 10.5 changed the form of the DISPLAY environment
variable. The reason for this is that the DISPLAY variable looks like
this in Leopard:

/tmp/launch-XXXXXX/:0

The Xs are like in mktemp.


Revision 1.50 - (view) (annotate) - [select for diffs]
Tue Jan 1 09:47:39 2008 UTC (6 years, 8 months ago) by gbeauche
Branch: MAIN
Changes since 1.49: +1 -1 lines
Diff to previous 1.49 , to selected 1.32
Happy New Year!


Revision 1.49 - (view) (annotate) - [select for diffs]
Sat Jul 21 11:41:07 2007 UTC (7 years, 2 months ago) by gbeauche
Branch: MAIN
Changes since 1.48: +18 -8 lines
Diff to previous 1.48 , to selected 1.32
Use semaphores to suspend the redraw thread while switching video mode.


Revision 1.48 - (view) (annotate) - [select for diffs]
Sun May 14 08:32:33 2006 UTC (8 years, 4 months ago) by gbeauche
Branch: MAIN
Changes since 1.47: +13 -1 lines
Diff to previous 1.47 , to selected 1.32
NQD dirty boxes, X11 backend.


Revision 1.47 - (view) (annotate) - [select for diffs]
Sat May 13 17:12:18 2006 UTC (8 years, 4 months ago) by gbeauche
Branch: MAIN
Changes since 1.46: +10 -0 lines
Diff to previous 1.46 , to selected 1.32
NQD dirty boxes, generic code
+ while we are at it, also rename a few NQD related NativeOps.


Revision 1.46 - (view) (annotate) - [select for diffs]
Sat Jun 25 11:39:47 2005 UTC (9 years, 2 months ago) by gbeauche
Branch: MAIN
Changes since 1.45: +10 -10 lines
Diff to previous 1.45 , to selected 1.32
Use fast spinlocks only for small enough atomic operations. Otherwise, you
run into some performance problems in e.g. video graphics experience because
of busywaits in the current spin_lock() implementation.


Revision 1.45 - (view) (annotate) - [select for diffs]
Fri Jun 24 22:31:28 2005 UTC (9 years, 2 months ago) by gbeauche
Branch: MAIN
Changes since 1.44: +1 -1 lines
Diff to previous 1.44 , to selected 1.32
Direct Color visual is OK for fbdev dga.


Revision 1.44 - (view) (annotate) - [select for diffs]
Wed Jun 22 16:40:24 2005 UTC (9 years, 3 months ago) by gbeauche
Branch: MAIN
Changes since 1.43: +7 -3 lines
Diff to previous 1.43 , to selected 1.32
Fix crash in FBDev DGA mode when it failed to initialize (here, that was
because fb visual was Direct Color instead of True Color). We used to
initialize the_buffer* even if !open_display. Report that gracefully with
the dedicated STR_OPEN_WINDOW_ERR.


Revision 1.43 - (view) (annotate) - [select for diffs]
Wed Jun 22 12:24:36 2005 UTC (9 years, 3 months ago) by gbeauche
Branch: MAIN
Changes since 1.42: +4 -0 lines
Diff to previous 1.42 , to selected 1.32
Include <sys/mman.h> for fbdev dga without VOSF acceleration.


Revision 1.42 - (view) (annotate) - [select for diffs]
Thu May 12 11:20:00 2005 UTC (9 years, 4 months ago) by gbeauche
Branch: MAIN
Changes since 1.41: +138 -53 lines
Diff to previous 1.41 , to selected 1.32
- Sync with latest B2 video_vosf.h updates.
- Enable VidMode extension with FBDev DGA graphics.
- Factor out FBDev/XF86 DGA code.
- Fix pointer grab in fbdev DGA mode, thus fixing scrolling screens in
  lower VidModes.
- Only select VidModes that match the requested resolutions, exactly.
- Fix VideoQuitFullScreen() in non FBDev mode.


Revision 1.41 - (view) (annotate) - [select for diffs]
Sat Apr 2 09:54:16 2005 UTC (9 years, 5 months ago) by gbeauche
Branch: MAIN
Changes since 1.40: +14 -4 lines
Diff to previous 1.40 , to selected 1.32
Better lock and zero VOSF data, especially for DGA mode. Also make sure
that we really update the whole screen when sub-8bpp modes are used


Revision 1.40 - (view) (annotate) - [select for diffs]
Mon Mar 28 16:19:28 2005 UTC (9 years, 5 months ago) by gbeauche
Branch: MAIN
Changes since 1.39: +46 -27 lines
Diff to previous 1.39 , to selected 1.32
Only support True Color frame buffers. Make it possible to run-time switch
depth in FBDev DGA fullscreen mode.


Revision 1.39 - (view) (annotate) - [select for diffs]
Mon Mar 28 09:05:28 2005 UTC (9 years, 5 months ago) by gbeauche
Branch: MAIN
Changes since 1.38: +14 -5 lines
Diff to previous 1.38 , to selected 1.32
Handle "screen fbdev/WIDTH/HEIGHT" to force use of FBDev DGA instead of XF86
DGA mode. In other words, root user can now use FBDev DGA though it's always
recommended to run SheepShaver with a normal user. Increase "ramsize" bounds
in the GUI and fully migrate to new "screen" modes. Remove "windowmodes" and
"screenmodes" defaults.


Revision 1.38 - (view) (annotate) - [select for diffs]
Sun Mar 27 19:05:18 2005 UTC (9 years, 5 months ago) by gbeauche
Branch: MAIN
Changes since 1.37: +331 -31 lines
Diff to previous 1.37 , to selected 1.32
- Implement fullscreen DGA via fbdev access under Linux. Besides, r/w access
to /dev/mem is required on Linux to use XF86 DGA mode. Otherwise, there is
now a fallback to fbdev.
- Forward port some features from Basilisk II (set_window_name,
disable_mouse_accel).
- Don't SIGSTOP the emulation thread on suspend since that would completely
stop the process on Linux. Use a frame buffer lock instead (as B2 does)


Revision 1.37 - (view) (annotate) - [select for diffs]
Sun Mar 27 14:53:04 2005 UTC (9 years, 5 months ago) by gbeauche
Branch: MAIN
Changes since 1.36: +51 -7 lines
Diff to previous 1.36 , to selected 1.32
Implement screen win/WIDTH/HEIGHT prefs item that overrides any other value
for windowmodes and screenmodes. Necessary for arbitrary full screen mode
sizes.


Revision 1.36 - (view) (annotate) - [select for diffs]
Sun Mar 27 13:44:45 2005 UTC (9 years, 5 months ago) by gbeauche
Branch: MAIN
Changes since 1.35: +28 -19 lines
Diff to previous 1.35 , to selected 1.32
Add custom video modes for full screen in unsual resolutions (e.g. 1400x1050).
X11 and SDL infrastructures have yet to be implemented


Revision 1.35 - (view) (annotate) - [select for diffs]
Sun Jan 30 21:48:20 2005 UTC (9 years, 7 months ago) by gbeauche
Branch: MAIN
Changes since 1.34: +1 -1 lines
Diff to previous 1.34 , to selected 1.32
Happy New Year 2005!


Revision 1.34 - (view) (annotate) - [select for diffs]
Sat Dec 18 18:34:56 2004 UTC (9 years, 9 months ago) by gbeauche
Branch: MAIN
Changes since 1.33: +0 -2 lines
Diff to previous 1.33 , to selected 1.32
Don't restrict MacOS X Xserver detection on native versions since SheepShaver
can run remotely and drawing to an X window on MacOS X.


Revision 1.33 - (view) (annotate) - [select for diffs]
Sat Nov 13 14:09:16 2004 UTC (9 years, 10 months ago) by gbeauche
Branch: MAIN
Changes since 1.32: +4 -4 lines
Diff to previous 1.32
Implement Direct Addressing mode similarly to Basilisk II. This is to get
SheepShaver working on OSes that don't support maipping of Low Memory globals
at 0x00000000, e.g. Windows.


Revision 1.32 - (view) (annotate) - [selected]
Fri Jul 2 06:06:34 2004 UTC (10 years, 2 months ago) by gbeauche
Branch: MAIN
Changes since 1.31: +0 -360 lines
Diff to previous 1.31
Move NQD to gfxaccel.cpp, since it does not depend on a specific system
implementation.


Revision 1.31 - (view) (annotate) - [select for diffs]
Wed Jun 30 22:03:34 2004 UTC (10 years, 2 months ago) by gbeauche
Branch: MAIN
Changes since 1.30: +6 -2 lines
Diff to previous 1.30 , to selected 1.32
Better hardware cursor mapping from SDL code.


Revision 1.30 - (view) (annotate) - [select for diffs]
Wed Jun 23 14:41:49 2004 UTC (10 years, 2 months ago) by gbeauche
Branch: MAIN
Changes since 1.29: +10 -2 lines
Diff to previous 1.29 , to selected 1.32
Fix for new SDL code in Basilisk II.


Revision 1.29 - (view) (annotate) - [select for diffs]
Tue Jun 22 20:01:18 2004 UTC (10 years, 3 months ago) by gbeauche
Branch: MAIN
Changes since 1.28: +6 -0 lines
Diff to previous 1.28 , to selected 1.32
Force use of MacX mappings on MacOS X with Apple's X server.


Revision 1.28 - (view) (annotate) - [select for diffs]
Tue Jun 22 19:32:00 2004 UTC (10 years, 3 months ago) by gbeauche
Branch: MAIN
Changes since 1.27: +4 -1 lines
Diff to previous 1.27 , to selected 1.32
Fix VideoExit() on OSX, there was no cancellation point in redraw_thread.


Revision 1.27 - (view) (annotate) - [select for diffs]
Fri Jun 11 22:09:27 2004 UTC (10 years, 3 months ago) by gbeauche
Branch: MAIN
Changes since 1.26: +30 -13 lines
Diff to previous 1.26 , to selected 1.32
Merge event2keycode() from Basilisk II, aka. make Option key mapped to
Mode_Switch work as real option key. Merge caps_on handling from B2 too.


Revision 1.26 - (view) (annotate) - [select for diffs]
Sat Jun 5 06:30:58 2004 UTC (10 years, 3 months ago) by gbeauche
Branch: MAIN
Changes since 1.25: +0 -2 lines
Diff to previous 1.25 , to selected 1.32
remove now obsolete code


Revision 1.25 - (view) (annotate) - [select for diffs]
Sat Jun 5 06:28:21 2004 UTC (10 years, 3 months ago) by gbeauche
Branch: MAIN
Changes since 1.24: +9 -0 lines
Diff to previous 1.24 , to selected 1.32
When no fullscreen mode requested nor available, always try to pick the
first windowed mode matching current depth.


Revision 1.24 - (view) (annotate) - [select for diffs]
Wed Jun 2 15:41:34 2004 UTC (10 years, 3 months ago) by gbeauche
Branch: MAIN
Changes since 1.23: +1 -6 lines
Diff to previous 1.23 , to selected 1.32
Fix and enable NQD (bitblt, fillrect) on little-endian platforms too


Revision 1.23 - (view) (annotate) - [select for diffs]
Sun May 16 15:48:25 2004 UTC (10 years, 4 months ago) by gbeauche
Branch: MAIN
Changes since 1.22: +2 -2 lines
Diff to previous 1.22 , to selected 1.32
Use memmove() in NQD_bitblt() in order to avoid possible overlaps


Revision 1.22 - (view) (annotate) - [select for diffs]
Fri May 14 08:24:31 2004 UTC (10 years, 4 months ago) by gbeauche
Branch: MAIN
Changes since 1.21: +4 -4 lines
Diff to previous 1.21 , to selected 1.32
Revert to use hw mac cursor acceleration in windowed mode


Revision 1.21 - (view) (annotate) - [select for diffs]
Mon May 10 16:42:37 2004 UTC (10 years, 4 months ago) by gbeauche
Branch: MAIN
Changes since 1.20: +35 -13 lines
Diff to previous 1.20 , to selected 1.32
Disable MacOS -> X11 copying of cursor in windowed mode too. You can
recompile with "mac_cursor_enabled" constant set to true. Disabling it
causes a better looking cursor that is not "disappearing" sometimes with
e.g. Microsoft Internet Explorer.


Revision 1.20 - (view) (annotate) - [select for diffs]
Thu Apr 22 22:54:47 2004 UTC (10 years, 5 months ago) by gbeauche
Branch: MAIN
Changes since 1.19: +6 -6 lines
Diff to previous 1.19 , to selected 1.32
Extend NativeOp count to 64 (6-bit value), aka fix NATIVE_FILLRECT opcpdes.
Translate NQD_{bitblt,fillrect,invrect} to direct native calls.
Use Mac2HostAddr() for converting Mac base address to native.


Revision 1.19 - (view) (annotate) - [select for diffs]
Thu Apr 22 21:45:16 2004 UTC (10 years, 5 months ago) by gbeauche
Branch: MAIN
Changes since 1.18: +58 -61 lines
Diff to previous 1.18 , to selected 1.32
NQD: use ReadMacInt*() and WriteMacInt*() accessors, i.e. code should now
be little-endian and 64-bit safe.


Revision 1.18 - (view) (annotate) - [select for diffs]
Thu Apr 22 20:57:30 2004 UTC (10 years, 5 months ago) by gbeauche
Branch: MAIN
Changes since 1.17: +243 -53 lines
Diff to previous 1.17 , to selected 1.32
Basic fillrect/invrect NQD. Code may need to be factored out somehow.
Verify that bitblt NQD transfer modes are really CopyBits() ones [MB5].


Revision 1.17 - (view) (annotate) - [select for diffs]
Sun Apr 18 23:17:54 2004 UTC (10 years, 5 months ago) by gbeauche
Branch: MAIN
Changes since 1.16: +2 -0 lines
Diff to previous 1.16 , to selected 1.32
Constrain NQD to powerpc (32-bit big endian) at this time


Revision 1.16 - (view) (annotate) - [select for diffs]
Sun Apr 18 23:03:51 2004 UTC (10 years, 5 months ago) by gbeauche
Branch: MAIN
Changes since 1.15: +100 -48 lines
Diff to previous 1.15 , to selected 1.32
Start Native QuickDraw acceleration


Revision 1.15 - (view) (annotate) - [select for diffs]
Tue Apr 13 22:22:21 2004 UTC (10 years, 5 months ago) by gbeauche
Branch: MAIN
Changes since 1.14: +98 -51 lines
Diff to previous 1.14 , to selected 1.32
Fix DGA mode for emulated PPC targets. It currently doesn't work in native
mode as the stack is corrupted and we are jumping to garbage when moving
the mouse. Also add 1152x768 resolution from PBG4, but make timing match
the 1152x870 version.

Cleanups, further merges from Basilisk II tree.


Revision 1.14 - (view) (annotate) - [select for diffs]
Sun Apr 11 10:46:32 2004 UTC (10 years, 5 months ago) by gbeauche
Branch: MAIN
Changes since 1.13: +19 -0 lines
Diff to previous 1.13 , to selected 1.32
Map window close widget to the Mac "power" key.


Revision 1.13 - (view) (annotate) - [select for diffs]
Sat Apr 10 23:15:21 2004 UTC (10 years, 5 months ago) by gbeauche
Branch: MAIN
Changes since 1.12: +460 -177 lines
Diff to previous 1.12 , to selected 1.32
Merge run-time depth switching code from Basilisk II.


Revision 1.12 - (view) (annotate) - [select for diffs]
Wed Jan 14 23:15:41 2004 UTC (10 years, 8 months ago) by gbeauche
Branch: MAIN
Changes since 1.11: +2 -0 lines
Diff to previous 1.11 , to selected 1.32
DGA guards


Revision 1.11 - (view) (annotate) - [select for diffs]
Mon Jan 12 15:37:22 2004 UTC (10 years, 8 months ago) by cebix
Branch: MAIN
Changes since 1.10: +1 -1 lines
Diff to previous 1.10 , to selected 1.32
Happy New Year! :)


Revision 1.10 - (view) (annotate) - [select for diffs]
Wed Dec 31 18:16:55 2003 UTC (10 years, 8 months ago) by gbeauche
Branch: MAIN
Changes since 1.9: +115 -76 lines
Diff to previous 1.9 , to selected 1.32
Add fast X11 display locking routines based on spinlocks, or on pthreads
in the worst case. Optimize out GetScrap() case when we already own the
selection. i.e. make it smoother. Use our own XDisplay{Un,}Lock() routines.


Revision 1.9 - (view) (annotate) - [select for diffs]
Wed Dec 31 11:37:26 2003 UTC (10 years, 8 months ago) by gbeauche
Branch: MAIN
Changes since 1.8: +15 -2 lines
Diff to previous 1.8 , to selected 1.32
Handle copy-paste between X11 and MacOS. X11 events handling code has to
be improved in copy mode (when we own the selection to service other clients).
Also note that older klipper has a tendency to request clipboard data
several times per second.


Revision 1.8 - (view) (annotate) - [select for diffs]
Sat Dec 27 10:37:30 2003 UTC (10 years, 8 months ago) by gbeauche
Branch: MAIN
Changes since 1.7: +24 -5 lines
Diff to previous 1.7 , to selected 1.32
Merge in Mouse Wheel support from Basilisk II.


Revision 1.7 - (view) (annotate) - [select for diffs]
Thu Dec 4 22:29:15 2003 UTC (10 years, 9 months ago) by gbeauche
Branch: MAIN
Changes since 1.6: +1 -4 lines
Diff to previous 1.6 , to selected 1.32
We do need <pthread.h> in any case, especially native Linux/PPC


Revision 1.6 - (view) (annotate) - [select for diffs]
Fri Nov 21 17:01:33 2003 UTC (10 years, 10 months ago) by gbeauche
Branch: MAIN
Changes since 1.5: +97 -15 lines
Diff to previous 1.5 , to selected 1.32
Merge in "keycodes" support from Basilisk II. e.g. make French keyboard
layout work correctly for me.


Revision 1.5 - (view) (annotate) - [select for diffs]
Thu Nov 20 16:24:57 2003 UTC (10 years, 10 months ago) by gbeauche
Branch: MAIN
Changes since 1.4: +6 -2 lines
Diff to previous 1.4 , to selected 1.32
fix shm screen image allocation.


Revision 1.4 - (view) (annotate) - [select for diffs]
Sun Oct 26 07:54:02 2003 UTC (10 years, 10 months ago) by gbeauche
Branch: MAIN
Changes since 1.3: +9 -3 lines
Diff to previous 1.3 , to selected 1.32
allow DGA & Xshm only on local displays


Revision 1.3 - (view) (annotate) - [select for diffs]
Thu May 22 22:12:05 2003 UTC (11 years, 4 months ago) by gbeauche
Branch: MAIN
Changes since 1.2: +218 -22 lines
Diff to previous 1.2 , to selected 1.32
Import VOSF from Basilisk II for faster and more accurate video refresh.
There may be some bugs left though. Rework sigsegv_handler() a little to
accomodate VOSF way of life.

TODO: merge video drivers infrastructure from B2.


Revision 1.2 - (view) (annotate) - [select for diffs]
Sun Apr 21 11:47:18 2002 UTC (12 years, 5 months ago) by gbeauche
Branch: MAIN
Changes since 1.1: +1 -1 lines
Diff to previous 1.1 , to selected 1.32
- Do match APPLE_16_BIT to the underlying X depth (either 15 or 16 bpp)


Revision 1.1.1.1 - (view) (annotate) - [select for diffs] (vendor branch)
Mon Feb 4 16:58:13 2002 UTC (12 years, 7 months ago) by cebix
Branch: cebix
CVS Tags: start
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 , to next main 1.52 , to selected 1.32
Imported sources


Revision 1.1 - (view) (annotate) - [select for diffs]
Mon Feb 4 16:58:13 2002 UTC (12 years, 7 months ago) by cebix
Branch: MAIN
Branch point for: cebix
Diff to selected 1.32
Initial revision


This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

Christian Bauer">Christian Bauer
ViewVC Help
Powered by ViewVC 1.1.17