rockbox/apps/plugins/doom
William Wilgus 3237ae4a4f LCD core move buf ptr and address look up function viewport struct
I'm currently running up against the limitations of the lcd_draw functions
I want these functions to be able to be used on any size buffer not
just buffers with a stride matching the underlying device

[DONE] allow the framebuffer to be decoupled from the device framebuffer
[DONE need examples] allow for some simple blit like transformations
[DONE] remove the device framebuffer from the plugin api
[DONE}ditto remote framebuffer
[DONE] remove _viewport_get_framebuffer you can call struct *vp = lcd_set_viewport(NULL) and vp->buffer->fb_ptr

while remote lcds may compile (and work in the sim) its not been tested on targets

[FIXED] backdrops need work to be screen agnostic

[FIXED] screen statusbar is not being combined into the main viewport correctly yet

[FIXED] screen elements are displayed incorrectly  after switch to void*

[FIXED] core didn't restore proper viewport on splash etc.

[NEEDS TESTING] remote lcd garbled data

[FIXED] osd lib garbled screen on bmp_part

[FIXED] grey_set_vp needs to return old viewport like lcd_set_viewport

[FIXED] Viewport update now handles viewports with differing buffers/strides by copying to the main buffer

[FIXED] splash on top of WPS leaves old framebuffer data (doesn't redraw)
[UPDATE] refined this a bit more to have clear_viewport set the clean bit and have skin_render do its own screen clear
scrolling viewports no longer trigger wps refresh
also fixed a bug where guisyncyesno was displaying and then disappearing

[ADDED!] New LCD macros that allow you to create properly size frame buffers in you desired size without wasting bytes
(LCD_ and LCD_REMOTE_)
LCD_STRIDE(w, h) same as STRIDE_MAIN
LCD_FBSTRIDE(w, h) returns target specific stride for a buffer W x H
LCD_NBELEMS(w, h) returns the number of fb_data sized elemenst needed for a buffer W x H
LCD_NATIVE_STRIDE(s) conversion between rockbox native vertical and lcd native stride (2bitH)
test_viewports.c has an example of usage

[FIXED!!] 2bit targets don't respect non-native strides
[FIXED] Few define snags

Change-Id: I0d04c3834e464eca84a5a715743a297a0cefd0af
2020-10-26 12:28:48 -04:00
..
am_map.c Fix a bunch of 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-08 21:06:38 +00:00
am_map.h
Changelog
d_deh.c Fix dangerous casts 2017-02-04 17:24:47 +01:00
d_deh.h doom: fix types mismatch spotted by gcc 4.5.1 2010-08-01 16:39:03 +00:00
d_englsh.h
d_event.h Accept FS#5153 - Doom Scrollwheel Patch 2011-06-05 11:23:53 +00:00
d_french.h
d_items.c
d_items.h
d_main.c Fix dangerous casts 2017-02-04 17:24:47 +01:00
d_main.h
d_net.c
d_net.h
d_player.h
d_think.h
d_ticcmd.h
doom.make pdbox/doom: Use -Wno-stringop-truncation with GCC >=8 2020-05-18 00:47:04 +02:00
doomdata.h
doomdef.c
doomdef.h
doomstat.c
doomstat.h
doomtype.h
dstrings.c
dstrings.h
f_finale.c
f_finale.h
f_wipe.c
f_wipe.h
g_game.c Fix misleading indentation as pointed out by the new gcc warning 2016-08-12 15:33:28 +02:00
g_game.h
hu_lib.c Fix a bunch of 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-08 21:06:38 +00:00
hu_lib.h
hu_stuff.c Undo hacks to meant to get around string formatting limitations 2017-11-21 05:01:14 -05:00
hu_stuff.h doom: fix types mismatch spotted by gcc 4.5.1 2010-08-01 16:39:03 +00:00
i_sound.c Revise the PCM callback system after adding multichannel audio. 2012-03-03 07:23:38 +01:00
i_sound.h
i_system.c
i_system.h
i_video.c LCD core move buf ptr and address look up function viewport struct 2020-10-26 12:28:48 -04:00
i_video.h
info.c
info.h
m_argv.c
m_argv.h
m_bbox.c
m_bbox.h
m_cheat.c Utterly pointless fix for an unused Doom module (but while the code is in our source it ought not to have buffer overrides in, right?). 2011-08-26 16:12:51 +00:00
m_cheat.h
m_fixed.h
m_menu.c Fix a bunch of 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-08 21:06:38 +00:00
m_menu.h
m_misc.c set mode argument for open() where O_CREAT flag is/can be set. 2010-11-07 11:45:20 +00:00
m_misc.h
m_random.c
m_random.h
m_swap.h
p_ceilng.c
p_doors.c Fix a bunch of 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-08 21:06:38 +00:00
p_enemy.c
p_enemy.h
p_floor.c
p_genlin.c
p_inter.c
p_inter.h
p_lights.c
p_map.c
p_map.h
p_maputl.c
p_maputl.h
p_mobj.c
p_mobj.h
p_plats.c
p_pspr.c
p_pspr.h
p_saveg.c Fix dangerous casts 2017-02-04 17:24:47 +01:00
p_saveg.h
p_setup.c
p_setup.h
p_sight.c
p_spec.c Fix a bunch of 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-08 21:06:38 +00:00
p_spec.h
p_switch.c
p_telept.c
p_tick.c
p_tick.h
p_user.c
p_user.h
r_bsp.c
r_bsp.h
r_data.c set mode argument for open() where O_CREAT flag is/can be set. 2010-11-07 11:45:20 +00:00
r_data.h
r_defs.h
r_draw.c
r_draw.h
r_main.c
r_main.h
r_plane.c
r_plane.h
r_segs.c
r_segs.h
r_sky.c
r_sky.h
r_state.h
r_things.c
r_things.h
rockdoom.c plugins: More HAVE_BACKLIGHT cleanup 2020-07-24 19:20:15 -04:00
rockmacros.h
s_sound.c
s_sound.h
sounds.c
sounds.h
SOURCES FS#12144, Use -fPIC -fvisibility=hidden only for plugins on sim and app builds and enable it for 32 bit too. Fixes linking errors on simbuilds. 2011-06-07 11:56:23 +00:00
st_lib.c
st_lib.h
st_stuff.c
st_stuff.h
tables.c
tables.h
v_video.c Fix a bunch of 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-08 21:06:38 +00:00
v_video.h
w_wad.c
w_wad.h
wi_stuff.c Undo hacks to meant to get around string formatting limitations 2017-11-21 05:01:14 -05:00
wi_stuff.h
z_bmalloc.c
z_bmalloc.h
z_zone.c Fix dangerous casts 2017-02-04 17:24:47 +01:00
z_zone.h