Commit Graph

39 Commits

Author SHA1 Message Date
Stefan Seyfried
0b9a3a44c9 fb_generic: blit2FB: implement "transp" parameter
also try to document the calling convention of this function
2018-02-26 16:07:26 +01:00
Stefan Seyfried
dae2539f9c fb_generic: fix blit2FB for big endian processors 2018-02-26 16:07:08 +01:00
svenhoefer
3b65251e00 - framebuffer: better name for getWindowWidth/Height() functions
getScreenWidth/HeightRel() was confusing because it depends on users window settings.
Replace names in old unused framebuffer code too.

Signed-off-by: Thilo Graf <dbt@novatux.de>

 Conflicts:
	gui/channellist.cpp
2018-01-22 19:19:08 +01:00
TangoCash
2d11e017a0 start implementing hardware acceleration for armbox
you have to compile neutrino with "--enable-reschange" to use FullHD-OSD
2017-10-29 18:31:34 +01:00
Jacek Jendrzej
1763bb9e64 Merge branch 'master' into pu/mp 2017-08-08 20:06:40 +02:00
Thilo Graf
4e66739ff5 CFrameBuffer: fb-generic.cpp - add methode for clean up icon cache
This could be required eg. on changed resoulutions or
changed iconsets on runtime.
2017-08-08 14:25:12 +02:00
Jacek Jendrzej
ca83324763 Merge branch 'master' into pu/mp 2017-06-07 16:20:47 +02:00
Jacek Jendrzej
66ea57d710 src/driver/fb_generic.cpp fix possible memleak and possible double free 2017-03-17 15:04:11 +01:00
M. Liebmann
2677543cc4 Merge branch 'master' into pu/fb-setmode 2017-03-13 21:55:50 +01:00
svenhoefer
5b0faeab8c - unify DetailsLine-names; move define to settings.h 2017-03-13 12:40:04 +01:00
M. Liebmann
653e574937 osd resolution: Add 'mode' to osd_resolution_struct_t
- Use COsdSetup::OSDMODE_XXX enums to identify various resolutions
2017-02-28 15:04:09 +01:00
M. Liebmann
eb0d7afa95 Merge branch 'master' into pu/fb-setmode 2017-02-21 06:39:24 +01:00
M. Liebmann
8bee8b4c6d fb_generic: use more swidth variables in fbCopyArea() 2017-02-21 06:38:48 +01:00
Stefan Seyfried
dd653288d8 fb_generic: use 32bit pointers instead of 8bit 2017-02-21 06:38:48 +01:00
Stefan Seyfried
7c7d5f08dd fb_generic: add swidth variable, "stride in fb_pixel_t units"
this should allow to use fb_pixel_t pointer arithmetics more often
instead of byte pointers
2017-02-21 06:38:48 +01:00
M. Liebmann
d76c9c536c Merge branch 'master' into pu/fb-setmode 2017-02-20 00:11:48 +01:00
M. Liebmann
cc5a1b3b31 framebuffer: Add fbCopyArea function
- Copies areas within the frame buffer
 - Hardware accelerated function for cs hd2
 - Copying overlapping areas does not always work correctly
   without hardware acceleration
2017-02-20 00:09:46 +01:00
M. Liebmann
65f81b146d Merge branch 'master' into pu/fb-setmode
Fix merge conflict
2017-02-14 20:11:08 +01:00
Stefan Seyfried
b6909fb815 implement getWidth4FB_HW_ACC in fb_accel class
This helper to determine alignment for hardware blitting is now in
system/helpers.h, where it does not really belong. Put it into the
framebuffer class instead. Framebuffers that don't need it will just
get a dummy function, the cs_hd2 framebuffer gets the real thing.
Also add a bool function that indicates the need for alignment.
2017-02-14 20:01:55 +01:00
M. Liebmann
7b158903f8 neutrino: Add switch osd resolution when supported from hardware
- At the moment supported hardware: CS HD2

  Currently known problems:
  -------------------------
  - Display menus after changing resolution (Reboot required)
  - Display headers after changing resolution hd => fullhd (Reboot required)
  - Display infobar after changing resolution hd => fullhd (Reboot required)
  - Screenshot broken (With new driver and set resolution to 1280x720)
2017-02-13 12:51:14 +01:00
Stefan Seyfried
ec40cf7986 fb_generic: add sanity check and missing mark() to painIcon8 2017-02-12 22:59:11 +01:00
Stefan Seyfried
1dd47e00c0 fb_generic: initialization and deinitialization fixes
* initialize variables locked and cache_size in constructor
* set lfb pointer to NULL after munmap(), fd to -1 after close
* remove unused tty fd close()
2017-02-12 22:49:30 +01:00
M. Liebmann
987dbe7f1d pu/fb-modules: Rename hardware defined macros for coolstream stb
BOXMODEL_NEVIS => BOXMODEL_CS_HD1
  BOXMODEL_APOLLO => BOXMODEL_CS_HD2
2017-02-12 09:24:51 +01:00
Stefan Seyfried
d498917594 fb_generic: remove unused VT switching / restoring code 2017-02-09 12:57:18 +01:00
Stefan Seyfried
b04b1d7f8c fb_accel: add TripleDragon framebuffer code 2017-02-09 12:57:18 +01:00
Stefan Seyfried
8441a719cb fb_generic: open device O_CLOEXEC, better diagnostic output 2017-02-09 12:57:18 +01:00
M. Liebmann
a4afe1e8e0 fb_accel: Rename CFbAccelCSApollo class => CFbAccelCSHD2
Rename fb_accel_cs_apollo.cpp => fb_accel_cs_hd2.cpp
2017-02-08 12:52:26 +01:00
M. Liebmann
58bd8a4a63 fb_accel: Rename CFbAccelCSNevis class => CFbAccelCSHD1
Rename fb_accel_cs_nevis.cpp => fb_accel_cs_hd1.cpp
2017-02-08 12:52:25 +01:00
Stefan Seyfried
2498ebb314 fb_accel: add backend for GL framebuffer 2017-02-07 17:23:42 +01:00
M. Liebmann
6ff9ff695b fb_accel: add accelerated framebuffer for Apollo graphic chips 2017-02-07 17:23:42 +01:00
Stefan Seyfried
0e63e5df3d fb_accel: add accelerated framebuffer for Nevis GXA chips
Signed-off-by: M. Liebmann <git@tuxcode.de>
2017-02-07 17:23:42 +01:00
Stefan Seyfried
ecb6531fd7 fb_generic: fix blit2FB call 2017-02-07 17:23:42 +01:00
Stefan Seyfried
9fe5dfbe50 framebuffer: add accelerator for STi framebuffer
also add a generic helper class for other accelerated
framebuffer implementations
2017-02-07 17:23:42 +01:00
Stefan Seyfried
beb2a67123 fb_generic: nicer debug output, remove dead code 2017-02-07 17:23:42 +01:00
Stefan Seyfried
a58193dd56 fb_generic: add fb_name member to identify fb implementation 2017-02-07 17:23:42 +01:00
Stefan Seyfried
9ba84a629a fb_generic: add pointer for double-buffered fb 2017-02-07 17:23:42 +01:00
Stefan Seyfried
3f63080454 fb_generic: remove all hardware specific code 2017-02-07 17:23:42 +01:00
Stefan Seyfried
3c381cd53b fb_generic: add stuff needed for compilation 2017-02-07 17:23:42 +01:00
Stefan Seyfried
5c2ee5e137 start modularizing framebuffer acceleration architecture
This is just copied framebuffer.{h,cpp} => fb_generic.{h,cpp}
The idea is to implement CFrameBuffer as generic framebuffer class that
does work on almost every hardware without acceleration and / or
hardware dependencies.
CFbAccel will be a derived class (and different on many architectures)
which implements the accelerated functions.
This does not yet compile, verbatim copies to track development history.
2017-02-07 17:23:42 +01:00