From 8b3c2e9b37d91d21ba63adf15ab2ae44a1578da7 Mon Sep 17 00:00:00 2001 From: Daniel Collin Date: Mon, 16 Dec 2019 08:24:48 +0100 Subject: [PATCH] Merge dev -> master (#119) * Deprecated update_with_buffer and added a temporary (update_with_buffer_size) for now. This will later be removed and the update_with_buffer is requiring the size to bu suplied * Reparation for 0.14 release * Missed one case * Minor cleanup * Switch to C scalar for Unix + rename Reason is so we can always use optimized scalar even in debug. Also removed _size so only update_with_buffer(..) takes width, height of the input buffer * Implemented AspectRatio aware scale on nix * Implemented image center * Added UpperLeft center mode for unix * Moving macOS over to sized update * Fixed resize not working on macOS * WIP on macOS * More WIP on macOS version * Bunch of macOS updates and fixes * Fixed broken bg color on macOS * Windows fixes WIP * Remove some spamming * More windows fixes * Windows fixes for cursor and warnings * Some cleanup * rustfmt pass * Fixed typo * Added support for limiting update rate * Added update rate to Windows * Added update rate to macOS * Misc fixes * Fixed resources and maintance badge * Updated readme * Updated changelog * Added rate limit --- .vs/ProjectSettings.json | 3 + CHANGELOG.md | 10 + Cargo.toml | 15 +- README.md | 26 ++- build.rs | 6 + examples/image.rs | 42 ++++ examples/julia.rs | 31 +-- examples/menu.rs | 3 +- examples/mouse.rs | 14 +- examples/multi.rs | 4 +- examples/noise.rs | 31 ++- examples/title_cursor.rs | 2 +- resources/planet.png | Bin 0 -> 125628 bytes resources/uv.png | Bin 0 -> 220998 bytes src/buffer_helper.rs | 15 +- src/lib.rs | 152 +++++++++---- src/native/macosx/MacMiniFB.m | 75 +++++-- src/native/macosx/OSXWindow.h | 6 +- src/native/macosx/OSXWindow.m | 2 +- src/native/macosx/OSXWindowFrameView.h | 35 ++- src/native/macosx/OSXWindowFrameView.m | 295 ++++++++++++++++++++++--- src/native/macosx/shared_data.h | 13 ++ src/native/unix/scalar.cpp | 208 +++++++++++++++++ src/os/macos/mod.rs | 60 +++-- src/os/unix/mod.rs | 196 ++++++++++------ src/os/windows/mod.rs | 266 ++++++++++++++++------ src/rate.rs | 41 ++++ 27 files changed, 1234 insertions(+), 317 deletions(-) create mode 100644 .vs/ProjectSettings.json create mode 100644 examples/image.rs create mode 100644 resources/planet.png create mode 100644 resources/uv.png create mode 100644 src/native/unix/scalar.cpp create mode 100644 src/rate.rs diff --git a/.vs/ProjectSettings.json b/.vs/ProjectSettings.json new file mode 100644 index 0000000..0cf5ea5 --- /dev/null +++ b/.vs/ProjectSettings.json @@ -0,0 +1,3 @@ +{ + "CurrentProjectSetting": "No Configurations" +} \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 412ef99..482f076 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,16 @@ This project follows semantic versioning. +### v0.15 (2019-12-16) + +- [API BREAKAGE] - update_with_buffer now always take width and height parameters. +- [added] scale_mode in WindowOptions now allow for aspect correct scaling, center of non-scaled buffers and more. +- [added] Added limit_update_rate(..) in order to reduce CPU usage and not hammer the native system calls. +- [changed] x11 now uses C for it's scaling in software mode in order to always have opts on even in debug build. +- [changed] Several fixes with rescaling on all platforms +- [fixed] Cursor was behaving bad on Windows. This has now been fixed +- [known issues] There are some flickering and various issues when resizing on most platforms. PRs/ideas welcome for this. + ### v0.14 (2019-12-03) - [changed] Deprecated update_with_buffer on favor of update_with_buffer_size. The idea is that a size in of the buffer will be more robust and allow for aspect scaling as well. diff --git a/Cargo.toml b/Cargo.toml index 6563687..42c71b2 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,20 +1,25 @@ [package] name = "minifb" -version = "0.14.0" +version = "0.15.0" license = "MIT/Apache-2.0" authors = ["Daniel Collin "] description = "Cross-platform window setup with optional bitmap rendering" keywords = ["windowing", "window", "framebuffer"] categories = ["rendering"] repository = "https://github.com/emoon/rust_minifb" -documentation = "https://docs.rs/minifb/0.12/minifb" -maintenance = { status = "actively-developed" } +documentation = "https://docs.rs/minifb/0.15/minifb" build = "build.rs" readme = "README.md" +exclude = [ + "resources/" +] + [badges] -appveyor = { repository = "emoon/rust-minifb" } -travis-ci = { repository = "emoon/rust_minifb" } +maintenance = {status = "actively-developed"} + +[dev-dependencies] +png = "0.15" [build-dependencies] cc = "1.0" diff --git a/README.md b/README.md index b93d1e5..b08729c 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Usage ```toml # Cargo.toml [dependencies] -minifb = "0.14" +minifb = "0.15" ``` Example @@ -22,7 +22,7 @@ Example ```rust extern crate minifb; -use minifb::{Key, WindowOptions, Window}; +use minifb::{Key, Window, WindowOptions}; const WIDTH: usize = 640; const HEIGHT: usize = 360; @@ -30,28 +30,36 @@ const HEIGHT: usize = 360; fn main() { let mut buffer: Vec = vec![0; WIDTH * HEIGHT]; - let mut window = Window::new("Test - ESC to exit", - WIDTH, - HEIGHT, - WindowOptions::default()).unwrap_or_else(|e| { + let mut window = Window::new( + "Test - ESC to exit", + WIDTH, + HEIGHT, + WindowOptions::default(), + ) + .unwrap_or_else(|e| { panic!("{}", e); }); + // Limit to max ~60 fps update rate + window.limit_update_rate(Some(std::time::Duration::from_micros(16600))); + while window.is_open() && !window.is_key_down(Key::Escape) { for i in buffer.iter_mut() { *i = 0; // write something more funny here! } // We unwrap here as we want this code to exit if it fails. Real applications may want to handle this in a different way - window.update_with_buffer_size(&buffer, WIDTH, HEIGHT).unwrap(); + window + .update_with_buffer(&buffer, WIDTH, HEIGHT) + .unwrap(); } } ``` Status ------ -Currently macOS, Redox, Linux and Windows (64-bit and 32-bit) are the current supported platforms. X11 (Linux/FreeBSD/etc) support has been tested on Ubuntu (x64). Bug report(s) for other OSes/CPUs are welcome! - +Currently macOS, Linux and Windows (64-bit and 32-bit) are the current supported platforms. X11 (Linux/FreeBSD/etc) support has been tested on Ubuntu (x64). Bug report(s) for other OSes/CPUs are welcome! +Notice: That after 0.13 Redox hasn't been updated and some work is required to get that working again. PR are welcome. Build instructions ------------------ diff --git a/build.rs b/build.rs index c585ee9..4e849ea 100644 --- a/build.rs +++ b/build.rs @@ -12,5 +12,11 @@ fn main() { .compile("libminifb_native.a"); println!("cargo:rustc-link-lib=framework=Metal"); println!("cargo:rustc-link-lib=framework=MetalKit"); + } else if !env.contains("windows") { + // build scalar on non-windows and non-mac + cc::Build::new() + .file("src/native/unix/scalar.cpp") + .opt_level(3) // always build with opts for scaler so it's fast in debug also + .compile("libscalar.a") } } diff --git a/examples/image.rs b/examples/image.rs new file mode 100644 index 0000000..86fd823 --- /dev/null +++ b/examples/image.rs @@ -0,0 +1,42 @@ +extern crate minifb; +extern crate png; + +use minifb::{Key, ScaleMode, Window, WindowOptions}; + +fn main() { + use std::fs::File; + // The decoder is a build for reader and can be used to set various decoding options + // via `Transformations`. The default output transformation is `Transformations::EXPAND + // | Transformations::STRIP_ALPHA`. + let decoder = png::Decoder::new(File::open("resources/uv.png").unwrap()); + let (info, mut reader) = decoder.read_info().unwrap(); + // Allocate the output buffer. + let mut buf = vec![0; info.buffer_size()]; + // Read the next frame. Currently this function should only called once. + // The default options + reader.next_frame(&mut buf).unwrap(); + // convert buffer to u32 + + let u32_buffer: Vec = buf + .chunks(3) + .map(|v| ((v[0] as u32) << 16) | ((v[1] as u32) << 8) | v[2] as u32) + .collect(); + + let mut window = Window::new( + "Noise Test - Press ESC to exit", + info.width as usize, + info.height as usize, + WindowOptions { + resize: true, + scale_mode: ScaleMode::Center, + ..WindowOptions::default() + }, + ) + .expect("Unable to open Window"); + + while window.is_open() && !window.is_key_down(Key::Escape) { + window + .update_with_buffer(&u32_buffer, info.width as usize, info.height as usize) + .unwrap(); + } +} diff --git a/examples/julia.rs b/examples/julia.rs index 64c9d24..2ef512f 100644 --- a/examples/julia.rs +++ b/examples/julia.rs @@ -1,27 +1,30 @@ extern crate minifb; -use minifb::{Key, Window, WindowOptions}; +use minifb::{Key, Scale, ScaleMode, Window, WindowOptions}; -const WIDTH: usize = 600; -const HEIGHT: usize = 600; +const WIDTH: usize = 100; +const HEIGHT: usize = 100; const FRACTAL_DEPTH: u32 = 64; const GENERATION_INFINITY: f64 = 16.; fn main() { let mut buffer: Vec = vec![0; WIDTH * HEIGHT]; - let mut window = match Window::new( + let mut window = Window::new( "Fractal - ESC to exit", WIDTH, HEIGHT, - WindowOptions::default(), - ) { - Ok(win) => win, - Err(err) => { - println!("Unable to create window {}", err); - return; - } - }; + WindowOptions { + resize: true, + scale: Scale::X2, + scale_mode: ScaleMode::AspectRatioStretch, + ..WindowOptions::default() + }, + ) + .expect("Unable to Open Window"); + + // Limit to max ~60 fps update rate + window.limit_update_rate(Some(std::time::Duration::from_micros(16600))); let range = 2.0; let x_min = 0. - range; @@ -32,6 +35,8 @@ fn main() { let mut angle: f64 = 0.0; + window.set_background_color(0, 0, 20); + while window.is_open() && !window.is_key_down(Key::Escape) { for i in 0..buffer.len() { let mut real = map((i % WIDTH) as f64, 0., WIDTH as f64, x_min, x_max); @@ -58,7 +63,7 @@ fn main() { angle += 0.1; // We unwrap here as we want this code to exit if it fails - window.update_with_buffer_size(&buffer, WIDTH, HEIGHT).unwrap(); + window.update_with_buffer(&buffer, WIDTH, HEIGHT).unwrap(); } } diff --git a/examples/menu.rs b/examples/menu.rs index fc5d816..ccce9dc 100644 --- a/examples/menu.rs +++ b/examples/menu.rs @@ -29,6 +29,7 @@ fn main() { WIDTH, HEIGHT, WindowOptions { + resize: true, scale: Scale::X2, ..WindowOptions::default() }, @@ -112,6 +113,6 @@ fn main() { }); // We unwrap here as we want this code to exit if it fails - window.update_with_buffer_size(&buffer, WIDTH, HEIGHT).unwrap(); + window.update_with_buffer(&buffer, WIDTH, HEIGHT).unwrap(); } } diff --git a/examples/mouse.rs b/examples/mouse.rs index ea0e3f0..f195f08 100644 --- a/examples/mouse.rs +++ b/examples/mouse.rs @@ -13,7 +13,6 @@ fn main() { WIDTH, HEIGHT, WindowOptions { - resize: true, scale: Scale::X2, ..WindowOptions::default() }, @@ -31,8 +30,9 @@ fn main() { { let (new_width, new_height) = window.get_size(); if new_width != width || new_height != height { + // Div by / 2 here as we use 2x scaling for the buffer // copy valid bits of old buffer to new buffer - let mut new_buffer = vec![0; new_width * new_height / 2 / 2]; + let mut new_buffer = vec![0; (new_width / 2) * (new_height / 2)]; for y in 0..(height / 2).min(new_height / 2) { for x in 0..(width / 2).min(new_width / 2) { new_buffer[y * (new_width / 2) + x] = buffer[y * (width / 2) + x]; @@ -45,11 +45,7 @@ fn main() { } window.get_mouse_pos(MouseMode::Discard).map(|(x, y)| { - let screen_pos = ((y as usize) * width / 2) + x as usize; - println!( - "{:?}", - window.get_unscaled_mouse_pos(MouseMode::Discard).unwrap() - ); + let screen_pos = ((y as usize) * (width / 2)) + x as usize; if window.get_mouse_down(MouseButton::Left) { buffer[screen_pos] = 0x00ffffff; @@ -65,6 +61,8 @@ fn main() { }); // We unwrap here as we want this code to exit if it fails - window.update_with_buffer_size(&buffer, width, height).unwrap(); + window + .update_with_buffer(&buffer, width / 2, height / 2) + .unwrap(); } } diff --git a/examples/multi.rs b/examples/multi.rs index 8fe1902..25b045c 100644 --- a/examples/multi.rs +++ b/examples/multi.rs @@ -34,8 +34,8 @@ fn main() { && !orig.is_key_down(Key::Escape) && !double.is_key_down(Key::Escape) { - orig.update_with_buffer_size(&buffer, width, height).unwrap(); - double.update_with_buffer_size(&buffer, width, height).unwrap(); + orig.update_with_buffer(&buffer, width, height).unwrap(); + double.update_with_buffer(&buffer, width, height).unwrap(); pos += 7; pos *= 13; pos %= buffer.len(); diff --git a/examples/noise.rs b/examples/noise.rs index 359f388..8a0a82d 100644 --- a/examples/noise.rs +++ b/examples/noise.rs @@ -1,41 +1,39 @@ extern crate minifb; -use minifb::{Key, Scale, Window, WindowOptions}; +use minifb::{Key, ScaleMode, Window, WindowOptions}; -const WIDTH: usize = 640; -const HEIGHT: usize = 360; +const WIDTH: usize = 640 / 2; +const HEIGHT: usize = 360 / 2; fn main() { let mut noise; let mut carry; let mut seed = 0xbeefu32; - let mut window = match Window::new( + let mut window = Window::new( "Noise Test - Press ESC to exit", WIDTH, HEIGHT, WindowOptions { resize: true, - scale: Scale::X2, + scale_mode: ScaleMode::UpperLeft, ..WindowOptions::default() }, - ) { - Ok(win) => win, - Err(err) => { - println!("Unable to create window {}", err); - return; - } - }; + ) + .expect("Unable to create window"); + + // Limit to max ~60 fps update rate + window.limit_update_rate(Some(std::time::Duration::from_micros(16600))); let mut buffer: Vec = Vec::with_capacity(WIDTH * HEIGHT); let mut size = (0, 0); while window.is_open() && !window.is_key_down(Key::Escape) { - let new_size = window.get_size(); + let new_size = (window.get_size().0, window.get_size().1); if new_size != size { size = new_size; - buffer.resize(size.0 * size.1 / 2 / 2, 0); + buffer.resize(size.0 * size.1, 0); } for i in buffer.iter_mut() { @@ -60,7 +58,8 @@ fn main() { } }); - // We unwrap here as we want this code to exit if it fails - window.update_with_buffer_size(&buffer, new_size.0, new_size.0).unwrap(); + window + .update_with_buffer(&buffer, new_size.0, new_size.1) + .unwrap(); } } diff --git a/examples/title_cursor.rs b/examples/title_cursor.rs index db4377f..368c149 100644 --- a/examples/title_cursor.rs +++ b/examples/title_cursor.rs @@ -130,6 +130,6 @@ fn main() { } // We unwrap here as we want this code to exit if it fails - window.update_with_buffer_size(&buffer, WIDTH, HEIGHT).unwrap(); + window.update_with_buffer(&buffer, WIDTH, HEIGHT).unwrap(); } } diff --git a/resources/planet.png b/resources/planet.png new file mode 100644 index 0000000000000000000000000000000000000000..0f49a09bd44b6314e0ac368c9c86b4957cdbee58 GIT binary patch literal 125628 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 Fq_~8r8_i6VG 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

quv2|K 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

TZp z^VIw|(8P(%bk%4JuAhOQgwQMUA( zHhVidznb`^+Dz_vkj)T;ZiKQBXsQn~WPQ?Ew1p$$KD|E+P?xe%|WYOIYVtevcj z5RQop27LaISLg@$!O?6YVeQ-9Ed@w-B`UR7D2BdAVpW16Nm*H52@!#W(y~8xui^5I z5Y}wyBf^>Sv@t)chYt`1Z7zo8w2H0Q9E<8jBoE7be?RyDn;%op^ze%DVKzv8O(@ z|KZObeEf;G{$ZgwOCQ5$c`>sHpGyZXE`--4<;FOyv5VaS!~`e;fdGI8xMKKJru5B| z{<~SNs?ks2*4_q-gCdT{{jD%uZqd{VQBkB12}&;L#uSmKl^95-26NDoi#7L z@C19_a~}jZzn*?zD>_zfNL*b#g;3yIqx|*PSqTIHBDi}eUw%FLnVY55Yj2!5c5+lH zskIqi(|7mn2Yf#OxNzuy*2Wh04mQ5=&r8{=$-KIT2!)b)`_RJ8HxBIGN!hUt_3)B@ zv3Taimv-EDpNhq+SH>Welu8I?5IHwJdG6I$>#kxwy>3sB`KPU*VM1K9q0h3_Wa2v8~oA)aMPOA)cMR)e}6>RwVlA#&?(%av|u2c$Q-SCe zsp$CY3#VUO9M}}^T^CCYII%8iOU(w5s$pDp$iU7id*;d6@VR*{(X)>o zOA1Izh)Z+`3CTBR(dSw3sHfQ?0D!XQ8@lB^{lbqZBgPoZfxQo^J@@;se3ixz0kwzZ zzv_m7C=2hUX8-hGKK|Q4>ZRwuQ?8W$-QUiBV=e7k18cg#Rg4I}hNYr^dU4|Lc~K5f z5)?i7g?(`6cJM>KNW1#c8UkozzWc*hj5Z)d5QO*KdHv8pPsQg8iYQncx7zv#XM_k_ zSJHkKmx_=p=(i3n+<5)qoe%6Ee`nw1dq<+5CJ!B2Ja@Kx{f1a?uW}s}Xe(mF*@bK= zJ-;+Q5&E@NM1YaoZGV4F){`q!ZjQEq>_{8=fjUG5C9SDa51c)ifzz5*Qhi; zd1(6Nq3KI?gz!h-`PF#R)}12hfAofgrDgBjJDGFuL|G-kipf~gRxU~hNeH90m)C_Q z-z$ayfQWl;-u=L@d@`FKv*T&NE0hyTU;xue2hajVcnw9sVo-SI{qNti`@u(UeEf&+ zeuo)bhcnE^7#(VYC`^=TJx50!Kxe#j`46Q7V2HLOh|w^V4HpBPX{Lk|fIvn-PXhql z)Fc1T9m*vL4Wlu}a^bqq$*s5eKlw8;c^DaiV8wrj^O_C>17Lvm7!()A8JR`yP_O>u zfARU>iN)NffB5(L-12*4^!E9d8x9DUln~4YB|Nkr{>?)`$eQc^O}q2U$2(G$p$%LW zmrA^U^z5szzYhSO@4K%3(ET@uy5697=0S(rmF{lVc@vBZ3L7q?BcHkjuYomwef_u9 zWE+jha$djr_WX_45B}=^{%im6U;gIYo9{&q%Gu>|cDe1Yn{U=}_dRgW$Za=emdY(_ z{U2K$Ks`NV7=+P>Cymv#7eAnrUA+swYJC63 z_Kg|5Vi>jc?S@3xePZAJU%Yo=@w7XXsbvAVtn=1&05+*!H|eHSGY!scdivsaie=Sdn{WrO(;=LVcpehNXuZ;$3gG_;Hqop?E z%AX$0e(m=@_vMXi2HyC|xBTJ)w$L<@02Lc=V;?-Y4{qFC-39>R*8DV=7qQF3$pPx9 z1L(-pUlk{^Po16FyL+c)+hGvy*|mAw$QG>)qO~gDpSx6SjSiO~oRUHS2#DA|oyxc4 zD>?uRY`23Bz*fR_TjKTC^Z~9Q!qC9`AEXal+yCW%|K*=Pe`Ml=6APnLjS;5-s++XB zmSsXYcF(3w13PvPZd`+`-L`xHQHB85ZPNinc+jQ;a60P%q!a+4+j#v_3TD1++=vZ3 zHpUVO01%3tm}A*uXn3Gf^5&*9NE8K!j>;QkV>;#uxPT6zW$mJ_16UOo5{xNS^7FSm zaQos+dF;e_VBKN7fst^&?FU4ugzdV3vSDYQJBboj#iPhPO1h>+2LMJ&TkAF*02nDd z=>Wh;X>$;6-9H?D-ddV2SMt?%pGX)sjr}|W6N%l|Uvuvl?#z|XbSKLIPHiL;`FE*> z1q4P)TS>Q(1yt1mFiNz9)$1nRR7*a9xE(dbtuug_9Zxx34H+ro~KsTLMcfTTnm<2|h#-$>vj zG1k@rP#q@?uqO`JuECJmfWW@ZywDat8moBp3tlriJw-sj*q+`?n<5zEg^jGfvLm2x@<&Pm? zjRDCZ9B_uAa7IbN41S&IP7cTvSbeRmA#y==#ABWDNCk#AwC3Vih3~%#?g#XX58wCs zhi|RZXpAvH0HE5+GaEG6uk7_fWt?D0HIl`ulI`)9`{6s-+? z74O&q*d!H#Y1IKpB>=#fR$jkUf|;)Xf9SU!0l=s=a2z$XzHd2G$SmZ95cO^EY6n2f z%q<;&l)?~3%Ie1JUsVTy^*dS>CjrcbzFz&$|Ly0s4k4H$3|im2aKVJ_v`!Q*n84`J zH1Wk4Py%s>X?jN-0TGpQI(7iY7@{^@*h*>Mi{N~ z#@lBAj&diK#<;mtn#xXu+FY}7e`xf}C!foC%T(LIc9b)*I0o3-0ocmvr~~MXBihQI z$c(o%Cp8_w={6mJAR*2C=}tO;2qyptAfk36kf`YcL|b`b=1zquqDd1Inf2GI0}tzk zbKy&WBJycQfvG6JE7VEP$2x{s5r0 zK)FGv0l$1k@Dw66WEf^ZyP-T>0B4Y(YdV08PJ`E?18|yk0Cl`69{>OVWR|>q-rur0 zmCgMB+`ZY4Bw2Rm_nmXEt-ghOtQlFkRA$!RdpCO}hh#T3oM}o!&Oj8jf`FhW=}FKZ zpa(%OdY%UX0|+1lNG}6w2#!dK9Fo1TyQ;goy1Kg7tlTqW-#mPGH?w<>9?aas-P}Dh zA~S30z9>{x{QUYgb6f7Y%lXdf-QVmQn@xkoqEysc^HF`kX{MoU-i%_&(TY-iz*zed z#lmWq4j>lh89IO@nWF=klMf(Wg?(&Jz`|m&x>P#cIj$eJr}F_=kx@Q?ah{&iv<|>I zwGLn&C+Q9v9Ti>xSEJshQsXZ6LRMz#0LaQmtOJ;x4}eI`(E+HLIskxsy%X-~%F6mx zYwX=SZydMo&+_-zX+D5yK0^m^tKL7W4nQ#C`I*6X^WM#$z4v>c`R*To?N9#hoxj{X zz9*28|9*PC#>=Np2S5+!1hLjH;pN|VUi#hS`uBP7rfMC|_4l8rGk6jmz&uW(ZHspQ zJaN|O(tj5nJg@ftLYoGNPuicQ518fGKTjVpUpMdwziE0}Tm(i6+J6?Hr2nB-1{SCA z_n*gyzVmZ*05qion5Pd&4DLSYh{*HTDvLGmgAW_sz7Rn;b+`ueP{>T#yn$&(I}@B9 z&G9kn00^WtudG-7z}>pHZ-wUj`{N_g0nFnBrTTWTMS4kxmy`YuOKa@qo7u?IR^Mum9hhNB95eEC2ad zul%N`eJfV*5xNF{Ohv2!X6Xw5?*E{!d^P&v|3Pp41t-ztM*05;3bDe#J@`x9{?}Cb zyuI>2MZpW{V$~;oW>2MvwPb1430}6QYXdpL`(#5pVBCufDz)1p4d0v9h|9 zW)}RU&+Mrb0f0iuyKr?C!2R31X^`hn#ibt>r3A@N(%;v?y681yKK0?APhCVrQ?S1J zx%KtW?CyTJwfj~g{nLc`JY{(tH_(}d04DClt$%p`uO1xU{q2{(^X&4qAAIn4A|&#$ zIte_@A_B3-E7A+UDvDo?f$Jg z{*ji{b>~;|l^}=+j0xDgtT;^iw+TmzWjxjJr=$>}*)l(Uul|=C2lsay+wDOkn@ax56oFV# zj$OH?zW9e6R^!+IE!}%VC4*F$@kyWF%t9d6W}i3zG->{l&i}EgeZw66&}n_hl3;2= z`l&BsEJLsAplnSe>A$OZ@M-=DM2Hi7c&oL4(0}>G>Nmf(y0O*XKa74Q&47Rig_6It zTIsg?_iyb)gXGit*k^@^H1$pYKB<}x&)cYJOou7PuiherK*-YzD@!i~etCEAM*aAn z!Dxr(X+BRn?dVRg1DMIP@5sngS&q5~|KB@*etG-3-~Zen{%2qNlh<$k_`}_I`$-QN zTCk_71F$o$Ny>9KUTDbiFfJmjZ1p04=J)m0ugCBIL;Qn(qgwj_(#-&*zF9Ncc@)n} zaOdze1Hp{*pUEZ55Rh?V4BY0cN%w|X`2$-2Cq zU=9@a_j~zoq_F7v%x%q=iSpCjtzWb#sUwi%5k2mZ05*stoOm|P3;|5B@ z`gu1{W=9oKSj;6O12F|9DlF#jIIAJgZw^yXqOg`OI@r=Op8cBp!f)BeUh?)|symxrpcY@F@jJ!pM*ObzBa*YtBJf9FIVWm|TINxCa03ZNK zL_t)6!Uaqj0C**Y3sX)6YRJbA3V`5-QmonPGkp20&V|p|y<73m{~hn&R@DpQmnGkE zYj{P>NI3H-o^NNE5C&6*L6_i8=?P}@)USUAXZBrlXt(~)BzT^x-@wZM61Uz){Z$?B zvns%;485>N?WBfeDzOZQ!}fFDL_U!_UkBh$jk#v>^aayKe4z?^t3=Ag2NFHdnn-zK z{e1n*uYanYGw`7fz=7kFKWP9wk6nlTDII|4u``eB8C-;K-|1M}Jb$k6jjygYnuE=) zPQ4L(4l7Ml^~Lj;nf$4QFrLRud2U6#Ob0L}1j}>)HrH`0tpJ(D8G!4B3$>!>yUpXy z*1i2WHlFV}Zhj9hYe&RR`THxac$N-8X+_gIfKfhxX-|dJ-~Y)tYax!!V9UVQ-V%7t zM8{;>#4)h~oEZ_ZGJpTm@rNaZajlb(nNA4f8pq?4J!%19#VU3KuU1%Ctky0>gU;d6 zy-s(}A}NGb#|EQ-;p6RS$7eI0D8|*==bR2;$R`rQxW-xVG(_8W(!O!Hd6d@y1YS5( z2N1X^&v*2hZeYp)1a7c-{6HYL4?g_q?H|2z{tGXzzw*q|v-^$R54PTG^y)@T>O7WS zQqT1_>i6^4pU89kjrtrNz}^kXyH~O(NA{+KU93cD*}H+EUw`VgD_)7uy(lmIjz0I2 zZSF?@;a}7CyWH=9wUDy=H>dRh!aQtetSCq5p?uP4gIsi?C)5FCBX=>gcmZO#bKULU zH1!{v@I_hq4z2x*xOSGrLRf^P7T8&2 za!tHz&7PtGlZf?ZwQ~l4|9N~|2hct;hj|@9RSVI0q}_q zKp+qhl;@NR)uk}3C2@aaVEC$YV>zG6Ky9{{uN^^a%snK}Ueh;;xM`t?s603ueb z)0=eE-T%iM|KXPpe)jy@E5C8|TbEa!eQ5F4NJd^^Z%)-emyzP1NMk1(wu8y zUOP|1A5#Y~o6}sLLIE8$lKMOKa#26C9$vdz0p!7h&dy%1)lL$Vt!aErI)L<8Os=O( zl|r!`Xsw&a?fOA8j?BnE{}JuX_4ogHbpUye8JtKd1Jq5w2`aEtWoOyO0Kh;$zg-j8 zVYABT?#AJk?JAs87PjbpTJz z3+SOGa}i1(-$uXwv%5cP^&7E?Upn`h?|kOFv5g-b+`YYbW3RalA!}{+kPc@Cn04*X zb^;=Rz(Pc<6G&x^)?VOeKF5`H=^dK~Z^`xVQH2~+k?_ZO`Ah1Mk=N;R>Yg%s$ z7pVF*S^jq1-=XGP)Ov?ai$zGxuz#HS&_7*xe%&Je_^(B)xy&D@#b;osGoEbn+SwJR>X=7vw;G`fy}VT=wAQ;3$d_fXzWrI2rKj3)YyaU~RvCg+Rc<1IW-zcxl4ee# z2``}2JAtP?4u*S`uJVGQTq*d0C$NKle02>s~@g=rGja#+4bB~7*rP))|GOTWYF!_x3=Hz_Upz* z0;9d<;biFJE|~#P#ESUD6At2#8Yfdce^DOJrw{Cqc32CfH8_56>lfFz-!6Kk)$;o1 zFaE}h>#uy}*{>UG+WqEX>)@z;(CF5yL9Ol|CMGdpAS zbIwq45tS9LtW$ZF`~pmZBuZ}mNOo^hbH|Ok+0IlNBS=j-_%kuF<@^-;@p*o;ngYt= z#7y#Zo;Gu)`&2lA6_|k@`tM8c1G^tuch#0Yi|W^~{zt@tm^S)*=xUCPNNSH@ zAql1S6#}>f$G}O~TLFj=KmwPfD5AkWaY!5xdju9qL?WAPLAs2XNYaRJAcx2i()klj zlf~zGx@r7G+=te~jrVL3XjB_uD28G%kFViooS&R4Qi@0{x7*Tg_3qy5g}z#-IP2%a zD;F0oJyS_y+wCRoR^0Byoo?bf%32JR28Pa{0wbbDX@N+#2}#+42Yl@)twPWBeAn|G z$J5N5B*rABvDa!fyQA>^3W`ZIlt23h9!FKoV;PumiCX5E0zbKxS+J3N5TfSy96Ut!%9> zP!&HcDdqZJ$@7ZZ@gdS5wBufDud&hX)vZK;5TJ=fSVO6)w=@kw_Z0c~YKj{EzXp&b z=2m@Qc|7X9MWh|*-TH2Bb59^`Kjp}kmalf}yLp=Ny+?9^h-_o~!#5fq9_<|#{Zge+ zsg@RNUt2GPmu0)S)EyRz4tTDxabyRzHM?=i5N%~eD^pYQdj_9|lC zIDnqgF>p-wNSb!?R?g=tCR3lqqla<WB)2>^01>rIUtMFH-xJpjM zDx!i9+Z7XwO<)p;1u4WgU`O-FbXk{)ec}LM7$tUKP0!lC$bi`rYuH|P*@rt!L=1Mt z^rqHK6bdV z4Jl$KFj$dd<+=`&LWCqX(IAeRaXd(p*eFi{h$SIC)};#^twki!X7aMZ(OT?$Zl<`> zLNmClv?ZIEiRVx(LZx<9Z#tO?u_Lf&;jX~UNQ%M@&~!$ynOsBw>sm_?X62H0S-Bv< z8o>Z27D+?|G}2#4LO5J@#k!=Jn3*-R(#kt_e6nogIEwb8_U&lUjpANndVZl4nXXl- zfgH{+#QKV3)wRfb?*xjY*<3}cGndm0K2RMQaYCX@EEa%Po}!xjAZZa3#-;#!(Sv@} z&0jdo<-1YRPrB2FVK++p@tpdz_v^1c(6PM%`VY{!4_Gk33Z75plJp~J2g)JE zV3lqx>F!TSt8Bq1n{7xMk$NoM)o?q3h?vBr>qw)WH%WJ?#C{Y!(=ZJ=GDxI_9OXE! z?uFgH>YQ8z0S8bnqDUt6B?1+K9K>hh8gV=&+Xz8w7B7Gp(Lm59v;|D0pd50_q&<=Z z?1DAO%eE8A!KNpYP7Ex>3KEDBQm{sBKTFX|Ab5Za_6UI0lIx(^CkU*X#qFH>PlGF; zZfHApzq0=@vjF4wksy!Y0^xBEfn;3fa>~LKkGG#Kw+S+@2oN(XQK=e|(uJMO1h6Dw zPmC2pv49IptaHF_q zj&0nHWsq1SNSFjB7IPetLb~=qO2`HK?5wJ!P(oEii!jp38xj2FLa(GI9z=kMyydW0 z%I8%lB5yh9m!`Zdn7pN+SIXx?CMJI==oUFAOv~y|anXGBNG;qM*ePyTJhc(!42C$$ zE_-TYkXuR;N7-dpZ8&-ED!Vkr1>()-@ReEg^u|C`HqJ>viRGAe--qnlI3Acd5`i%c z0hna9$7~4#B}$X>pabialrHO#+R8V|HLPrwc0)PhhG;jlH!*z{1aMqbcno+F7SM}f2a5LQGL83NO`G#u;^AOcm&`1txp#w|=I&vlu_%;t6` zudt29bSKtN#6s8DqXhBfGJ}A9B}OF9C6)mPN|I?V9O#E|Os1=x$06WQOKc<&5+D&9 zThmXHZW1RZX+%jYF$0Up7z0>=fE~aUFj#|J)*-7x;Fla#^K^lnGO-7CSa=vPUb$iu z*vT2WfV3+%$wv@)I5!C}lgIhaSwPwo6P<7((@TzO#{<*XaXV7Cn*X(V!Iu*^P>47< z7t8K+NAJp7G>bb}i)9B>#g(;a7SGkEbSg~b+SOi%rOEb?k^@TWVtZl}A>RY}$|DYt zoap#d9{vssFpJz`CY5Lg683JD6P;MO{g-pN~+9-UPfRy)Vt zsg7QSVXb}K%Xjojg~2>tZ6EjY20-boe!k;&UWQw}b8PkG=Ck97Ez`Z@{F0IDiYd|E z2Gr!x(e)%L(VYhLB=n{R$p#(Lq?_=^b;T0sH9EU)>qWBd)p5lHHUWFR_xfe|Q5(B8BM4KRx4ptHTuzdYdjF*U2E0#{L*RIE{ zM$&D^Xc+DoKjDx`1<++7KAAtDr;tPZH@3W543fKX@ZNO80r@qmWS@K!}_l47&V9US-9sIHkOAoq;z;t1Z0$gjfwfH&9oYT`4?LIxJ0(>t>C%EzsOm6a z#|t5mh{f1uDT$Ew#YQ5Qghp!tV_axVg_h$O*>Vxmf!M)JZp{E9AdmnGkqmx*_toxh zQwvc^Ie)_EitN}i3!wRO!fLvs*L>;he8whl#%Va(i(wiRZ?idE80`3n!GWkM^i@#{ zP(^W<&YNh16u=niPD!c$VQGI*r;`qmAVj2smCK#`w~;vLYw0@ZYScA^ot;9=K9vV3 z49H2+rifIip6RG|ZV!N1h3c8MYUf;QN$Eg6)0xdLbW|soqLP%8)lWBRMvD{5yGnk+ zy&-DS9m{c{Yj7Uqy^>Py=D5Idp{sBoK;^hMgUbmgr9coUW4%FK>a`a8z4hey927Zv z;Q2kb)OB=E7aU$*p$B(KF<}`0M+AOJeW8r_Fw-BTvoOoT73@!?e9Y)t$v5oCOGl3O^z9PYy@!`YnBLuB>KaJEL= z0sb#CZ!%ffl6(1C{cV$_4G{>zRnP=8K$JTl4JYL%`;a6et{&E($0yry9nydqAXWnD zCsOam`;EbVBWZUnkqLc$X-!v(su=1pVAu7uCWV;kWX`~lM7-XuVxyM~y=T(}4DmII zF|BUjMsXZP@gOpZF+j|o7x+Qdb6l4=Tk#Q*qNlB(8zs3B_rtiAZftTR?xN=zYkE_> z!q9#M?hG2OUay(NiBS%f z&pB&>6Zo#@Y3-;&=%-1|GbO`t;8H5+g>uu{EU&x>QYjp)+v`Q$Zq)81t&Zt5lJ=3f znyQtcT2TuX?FY;XL!TjWI5aZI=Tv`s+~qK_CsIdZ8rZI*|97CN)1T9a)oB!#;deAl zf{|rDDUZwZMYBoRN{pmV(S45YlWBoN@h@8al~^x=3qnr1?~Vk7f+Xptjf_uasBdjw zY%UT3!Ln-xUJrgBMWj|i5`}>WC+Oc{Ijj%?#R#-GIt>FNnup~O^`Th1vuYPI&?sD?}MJJ5HwR-XVfmdlT z0c7X=fZ6AN*55nL696C*h*%@Bl{g(X35cwPkl1)M`%XDTDC26314c;YIRLSv`gWX? zg%$MT!QrvlJm~K?;v})fP%T%3=P&t{g7}V7YBaquLJ5RmBf+Tufk2FqO(IDWne3oh zIZ(=RJ@&jHmF^l749V+&tow}UDx7K| z=^UQ)l4BF_xv%`pBH4g+^fx&%dB$0{k+Ua>gSIF20QV~v6;xy6l1S?KIx85+uTK#o zu~7Y9snvMCJE#HV`>n-=2fo`-1;s1p(cKf$X-_p=wH^KY6jw$l{YL~t$3Gz*xut=- zh|-I$z4l?$sdRU$oz2C@omIEcD_$KGpB0Cg(%rR>>-uNi_pnnXVAR8o|7;oZlaa>> zA1jipFQdmeYmJbu?H_jr_YVe}d+j8Vg_3^ZVz9j67Jb&*BalcRY5(&0zijA?p8d(J zlpDH5uOecb?OxpP^*i1A&K@h}7eaq=fweQ-nEACWLq zIP0t4%A(JD^f-R3`l@2X*$w_`4&42)8;CK7AX8l~Wx8Rw6ZDA|$>YDo`MnoV5 z$*ktn{_T=3vl2vDM?v)*wn4hlLeexw7Le95W}wx9_7ZW8L~_ zaeAoR999|gT$wnjF03T8HaHwsIaxiL7v_8x&u&<@u0r{b zrsL@k`DkRS2B;0F*73{b_S-$&FUe+sRy(xVB_}?K*PlP`Bjf&`nnSV#1GDSXDY!g} z8-R@jo$g|zwPK7aR(neqcir7z5?cUBm(Wi1rjzG0B6B%r>&%g0Ry#7M{dwmzmxCmIWMwp(AHP3o-=8i1jDIqm zq~yIC?Wh65a6^+oVCsq8I_lrt?6!MmZPEG0XKPDk*HKZrCN$PT;H>53)F(;qw@mPC zjewNng%!^)m6eG)jn?7LzT-K?g^Cx1sTr7VeEf({&Oe5d8s%Y3L3+$DrFUVOry9L(8XfNr!X_B45U8m|Fkh3OErIvJh)6ERqITa^X>=&F; zEx+kXtb&p*)~39AScN5BssVH|T_+H;yISy!MH0zDL3YaKD3Xm)m*8PxWoon6LvaBMD|um>JCh4sKjWP90t%>DHpSI;tI}w% ziw;Wb$Hl^);|r~tD+ZHD&5(mm9QQ|QF!>a9xB z>{S-)<=T#NErG->h*v~d$$JNR!LXei4`*|?0H*-1hAjgX{xB$8&sz`nq zuJ?nLyS;<3{&u+aqc0Y(s_GYeu6K~Fp^T2}l;9Mn+8N{YNS+3OutH4C!<05B79PT+ zNK^*1cp5|yCY^|W6eltkdyVM5yY1s<_tH84+B3y+=rBzLgCW+kR2uY zZ=~(0DcR~nIi2uS!Kq8G?zq~tlfkVc)7de0+zr$cyQaG{W2Dc{sW^)rp#LHF-|52b z6n<0O3n0}u1E4Peh#b@1&R+@;@fkQN6}L=;!${GfGT}vcuv1EYw3O%`J=37DKXzPA%IWXlpYG^MIsLu+({7-obZ_q-O?Bv& zd~AG(yc?(wB5Zt^pBbdNf%077h7iHVhr&9Q`81 zDS=Za-0&d_N^I+?Thp!a|2Bu zB27>t{gVyitjyyMfm5EEg+|wYaIbTJH#)cI|IQc7)uJY{V*56`J1)SGe8`F{)}9Pb z!wDiHoq^lz#km=Pu?~PvJ}&=UZpE>J?jR;2kS^4gy+W^fbbRB+{X)6u7R#)i(F$2s z-^!GGs8}ImZEuQ;P%_1>h-MnNCQkAhtUzRqjq{06goqMjlZWwiqgRfbod;WW5S?2t z*A@y|DPwGs46^!6Ns=T}GXP>vl6WSMlXz;z0LOKV?N50b3BX1o$%mkLI3I{uRXEm5Gu5qR(fnn+{$z*#7@SgB zbuJHq&iL&71dre%AWjNvyZ)MO?YwgMlk@GZwdF6|_G^ck2j%Q`?AbUO(8zx{x9?43 z|KRkTh!TSb`~A0Xc07l^@!7?-s;4L#uKdyywm;41#NW?8J3XgKuD!6j=26^h9Ms#* zPGza)hJ|55=`51g>~>DgY3!;^{-~4sm?|^*c>9Avys=Y1I_@nm7A~J(Qc4+<`RR|o zIQ+3w?F=u^%!AIWKXp?u=Vm>cr@g#(>B5CzdC|SM5&h!b=K894sO%&z=hI+AB6jRhxOh4u+%M9Yowe{=fj`&0QE-a-bUSV_=T%0#nAU%Hy-x>zd|ML z$^4LCexbU$Ht2=G9hrwYsoX3AY%L0H3N;eEecTDk(p+;V-oI-@LZ*51(E6X1(}q z{4{oY?Cd-4AXbKYKoW`Ens}Qvvmq8_2I{5pw*(;=0>9Iy&6kDJ@ou zD~nUEFP~T;qE@GS>;C>Ail4u-QZ9z+OZ`co*V8E?;<$9}YN58^zVl(T-ilv&zPM1v z)0)>j4IKbO5_EsjZ+xGEmrdbImi_U8|5^O{&&tztw!^sg!-XK?^nY!ZLTNY!m$X94 zWo+4KvV~_sK zKWh)=)35po7k~sxmzI_s-#gwva$pM8+Sm@t>Drm%5BXK6zl6ul_MHbu#n5~4>YDGm zr@X6YyG0+%GREA43ji!GIbRJH-oM#?{jK9KyyPrYpSamf2jDAS4%x4;=ZqTw(gpS^ z)4w~<3AUHCe-g)cY~|ZU|M~n5@vwfr%;9th7B3DGvx)OXL4wl$VGJ}zX_~e z6sxGt(g&0#x!8U;+}peCEW77kJaU-?%fs3NH$bU|>dFka&QcB4)jap-@xpBGr8rLAuV0Pp@zR&Kb!f6F+=&igd5#X?IHv;; z#gt~cC!Kq00R=e7l`)>q9qOI<^>>?z)xY({)#WlEBp4g`lLmNBJM%crm^jbl(4JO- zBU3s61jLYs(dyG`(p%(=!zjQA)|w_RoBO|A*)R)GQqU=I8(($@BL& z#|uU0i?4XM?si^(=ji3Dh4bqHPx`Gsq@5`pfa5KNZX9UR#6_2sPs*9n0r;3U0OOot z+GzdIL>qSLj}~~j3FN|{jq2yi98UAOJIzTkX_vhM<cN0_7Q-6_P(t8-3T{U=`#r}cGC+&th09V`2c2fXqVt3C{7sw2VQ`n zIKu$AA%aq7@QAwo#l54&Lgjezr9SUj;nG-bfg8XJ5SH@(@?HopKv@`ClmRHt;39C&!eNWo`g*ax^Ou#K*Uzth^PUs5MHpgF>gS_@&f)~H%^bs^ zXyUa={q#Bi{D8BMhyd(2lGom876bm~D~qMT6+6IW*Egy^+0Mf`ot_g|Gik*+1E3WF z(2D7loJmg2b)gtuc6T;*8oPVT>#N!c(($^8Xl6@R+gv-MnQ4mKR5!pf?bolE@lbz% zA{cA8_8J@8^=B{CF0C(%MKTp^Zmw=%jt+o{)eL|Chv)!^NKKoV)ZZWZ@^G%E9<~`= zyLj$uF$kUaZX72GKYOvjYBX+tXghSmiHM1H!PTWy2XMPSr2`ORZ;rqJP#?gOG|~Qn zV+^#rHlq&R66d;9l!B!Ef>>BLHV{rv}^ zNrS|!9IvT0Z0En=8BlTo$57zdNmKUlYR*U=Gy&&5+Ck=_f z51|O#H^)crBqDyniowQ>yjy3O>HwyB2_~7r{W4l@B)5?(P6=j!=IvQJfPS6};8nY|_37lBOx1NaL;rF;Hc+uJ{RdHb)twXffHiY?fY4&Zja|IBm%6Z}L6 zAbpJK0089t{c{}B7onYc{Oa4s=azymK351lD``9V16zOz13h;A6Jtc|Q`7;prgQ*y zp1=QWP9PFcH_Fcdm|+E-6D}fRjV%W5;<>f0jh(x<9xR?)Q?3s{#L65U0OsfboX64u z7;B6*4>peu>YZzsmn)?(PE3-R#2BScJhMftE3g*HsP$9ZeXC{rhr=(YhXDZg+opF2oGhZ0zPhF=-c!;6C{XH;PvZ|S z5fNu;3s3ALkb3Tu;&eSIJ4sE_m*~cReB&rLFC^mb9mMsc;n@pUeSM)sX@RO@MM;u=`og8va>28+gYG@-xHI{a>j11xT8-mguhr^wa%QLQun3|g+h!r=VreNX zE;5lQr@Fe*+~2S7?$*{;lp79D=4t2vkiMXK4uBa^Z0>Cx9XEO}TwN&_Lu&<+E^F}p zt^4hED|^}nj#k!+$p_jJ-}TDng=)E~wKikjJ&msE)cMd%eZa}@nDvb(<|6XW^#@TD zje5_kmsX3RM?}jj?w3^M&G%Yj`MGPM(livBoTh!k6X^gLrYViTV`!N8`tG0J8MTTr zi$OE22MF*leOp&&EDAkInc>MNlAX-3@22#B#|1eAu@b$$7r%WVjsDDSo*wRw|LHte z)t4)oDHQ?Tjh_7%yz<+y>C#TnKKJ$a zc7OWf_K#mW_pNu_#k20erVhcUKUsjVbr8SyPV35g@YySYRy6Ns6W};{W3TaNfB)*O zd&9}A;J^PbzOzs&PsOPJWC|;NuzTy~yMHg)ZttV&YiFVM%qyS$P0z1@Rb^$Rb$EER zvsYVNW%nt+)YFBCjIsB&j*grC=dUc63c>g(6VW?2-`&1<2PYc~!;fX`ohLv*S})a> zzxc|RE}pw!J|#C}vN&4*)c8f+8Sl4^|J3FWLBJ zvi~5Rz|S(Zxvzl$rp)VcR*JSyrm)7nzo46c7BRp~)5|XS&p9wHLH|9KZI?@x^n6liq(; zNu$bq|L5=j)sKGJ>-I28`6;spwx3`TYsH#0o?T`G(h>XUB}#qdm_cksj`nW9`Fi8! zFMe0MMFEu-7scAct=-!CD*02}+E1?#QDTz&n}_w|?h98}a=m}PFoRhstrRmUB3KcV zBuNs(8Ym^e{{GJ2{o~*K-f#WW3u~V`8=w?#?;n5f)n7o5?PJ>s(UJ%js`^W>l;3!} z&Meoi6zJ?Ky)zmBf^=>3hh+P-@XxF+GfsTy;a^^G*NQT^;zl}dW{De#*sq@N+`oxfq#N62#AO#_ z&JvOxMR=)UE#y|sEFtqA%`C|Hw&0WhYUy>$`-g?v;BhsO#jWMlG zr`tI^+P~ZD9D^9jX*Uk<-g@J?mw!jZf>e2F$?omdclXMHN9v=p0V1-oeYAJbdj8q` z*nd>v{Ob9oa;;pd1b*myUb#>NQL6Q{B1saryPb{g2iI?X5GOH|GD-Z_2XCKWJ^vA% z^WzmFB#HU!@4wma4WQLS9-g5MsJ!uR({cE@%QM1gKD_8`kb4>(07GIlUh70VQu_m= z7gCM;i4)kuKfAK@FQ2o630ta5my*`KiIYyOBzD;Tj30FdE+QgUEZfPchE2DmEYii< z(KZ05(1Ku_CjP~K+Auk~`rrIkRBFHugTtq*M@s9}qKX4BV>oG$#6nqQneH;HCa|=0 zEHU?gz9?5h6uU_0Y3ac^OQSajBtVIslTvptyUZST5cy`**ABmY&hs%)|?@ zehD}0`JBLhfOD5{v#wmdvuSr9WQSi|B_?a9{rc@3fB%Pb!Q<%wNTGE{#eHFd2*M?L z>A$s3S!@gdVg$wjM)^|vOyVuj8~-brt`Jdgx81pA7M_JoYOZz{m zu72Jn6-`7BovQ;ltr1MaJpA*_pt;vo%y~1?XLEynrb91+G_3~1w z7|#5z75V%NpJU?GC&`KpTsJmmY*RN_C@oxEzqnLg`u=PGAOKi3TgQWF;5pt|vsZ*b;&3BdDOVnl}J$fS`hfRSVjR>8=N~qea=!fHqVL*#bRW_HJ1S^&y8r$MZ@&KC9RN^_IC*A$?O%QSD}Vp9 zci*{wH(LnGj)+nFC)el1-~V(R+Se*}^Ev=O_4jx4UOlt9Qz&@aia?TaX_pAOOjckN zh$JYKE?xfY+ee!KKom!PGX0=X5NiRz@%;B30l{MtF?I7u9*UsudpD{Dz9 z7AP{5Ykv+O=>T#os**b0OWp_W;oPJaNNc{ox%Z==y$7WbCtvyeX9M5a+1iJr0WfJM zhj3CK01?(!ohahBKWunjxmNQhf3YxWrt$j3?0CxsHwiQ;;?N=GLOC?LWdN~5?4B3^ zqW&G*e%&noe$~6!Nfow~I&fNRjc_3rAoAgjlimR7T1i77jou?`zcE5^Sx}Yfa*O>A^~~@z?~z&dKv< z0b%@Th7imP;70=%kT`fpr<-J?c01-HmCvGs8w?Y`3lKz8w9x=wz)|63KW&~_BC>+o zl_01VoCy&W#)VygAHti7N3(G+gbG2089D$JLKmiV0MQt32&2mdrJxJvD?<^e2r3xn zCv_%Baz2Fep`+1dq=*aF-RgJidq2GDua-*J_GLH$s0b>ADU1ri0D+Q$4j^Ow4^xh0 z7JDoB=wbV;nSA%{wNl_Y*Pn7B$4cqXxAy+$KYs7<=om)BTCL6ZzV*iM|K^*eNdG@S z{SfCBGvz#$FF^;OG9AEp?#xBK9`{s#5l$e`%={#IeqxD6gefA9#Oe{+y!igwmDQcc zPx{SzX>n=9I4p`uh_o9k-$9fjW}4>d6B7$5W&xO})9XEWe7sgGtuI$)$`BwT%p^kN z-7puQ^xz9HQzoTgVkU>_a%SV14uGeY=0Zd?Im$m3SAb)pIJSTEqxX|I254z{=?C9= z^RNEyqtV7QWfoI4x}7D$)y=5gbHBLLeD@oER8S+9cp)O9^ZdCEAT+9Av~8#T2d8QK zz&bsm0|2Wa?H=S?bw+Y5Cx4{ESHyqOrJaM!%@w6eYOiuG4 z<)<_G{>rzV{Y&DaRN5|d54U(E5Q=2oq=Rmz0~kyp0KlxY-#gkSqvFHE;n}a1ZvS+@ zces^DbQ(-DtdugQcesV2)J7mA%!ak;9&S-4C&_0pA#IfByUiW@$qLdAUp)aFgh(6G zrgyXjRwGejA)fCj#LoT63BdEA6n5?-TS*bu+t+*b*7~)_s=bIO_r`Y&0zcCS+@CT5 zMF8;R?(X|moFgKwXmur#-3PF4Qhy+Vr~o$;FT$lW@UVnd8|j0|+m-789?a4KjNl%m zH}dwxEi^vIa9$R`ufn#6`Na-L5R&!|8iG;oz5u~OakaPjQhe~|SIqAn1(mbhika&G z9*kMkavebYR2{&hz5e~J#=CD+7YcB0n(q(5FyZ|>pC29^!ZS$ijVmkv^m}jK-rPv7 zOOp1eDNLj<(ig$6jSc{E9uHtHPRyNnZ0X(Zr`%1&rNjKCFsLrqcDDCpuoo7yxBfYG z0L~?8N<`M$&mQc1o?2TeC)TFvoOl4vrBmh1#ECc_K?LZ>DN*d4yHE#^+DSaq0rbB_ z9RO+lr|(!gZjirpdFr7Ke55)>1p4Q)g z_toG1=F7fOahhhPh^fpp{-4QuFOPq59YBWD)9`uh{*kK_0)@qLsoH5Aoh)tmtaB5> zGwT2b?F3}^px*DNufDjZmClSvv;FnYEN52v(|rCx+w!ZqWH~rrSx(|}Zq`$9t@XV} zdp~{uQy7gjefzCfUcR}WrtzE-rpgiVeD(TE<@Y`~e!SJYc_SKIEsW(S40Hh5xHkXv zg8)JML!?Jk{%v7DU(wFI3Yn?h$RlghBnnV|<3?)Bdvy8+4;S(mC3?!moL49 z0hx^a!oi=KM!B#A_aC)Z1*qoRK> za+Q}(guShE5##DL^J~UN`LbIhq;#_U=H0a8pWL|)Q5V*5kq&?e{ZxMbd2^v`Ufc}% zX=Gk&-Sunh|K)%3{XhK9Yg+NdLh}C)NdO@#EG#Oen#aeOl%zg$sy92khs_&Tmjd7W z2jk##W@6%Yr}sxcdf!?H>uR-y-~G+ktb4W&bPi!bz4l`1{#N_!G`Y;1o=pIAGZLY{ zht>yF`nEGmgSFc5Tz?|-w0UkoQkZ$dK8;IG%$Ura4bU<@H;gYRWD=X3C~NL?B_k%r z;U!8o4@_Gh2VWbNL1ZrhAhcd5-^x}skApVauFE><7eJjht`WI~@)nRj>u^bgZU;xZ zmO&yYl+@xfyI&tK^#Y|Ye?@YBstzJOm%%Iouh3Y2`+oiNweC@kE)sfOwDb|d-6!2< zC!J6GIZtV7zx~FofAcTCcYSRkPV7JI(dwckLaZvwOTA97*KW>P@IJK=5K){Y54TQM zmx|T$Y}(Irr*Ss@uf?5W=0E$%hsOseU{*@~!FS(|BL6vFRRL->e{(JT_--@qyQj_p z`3_*XxEWiO6I>U~_sGA7@b+*ZA30o@C`=RiinAY2k*~;8v+gME)nyI4C*FDP2F4Q(sPt zp!436fu?N!*5W*M;##Y0{!^hoz3J@HyvT2O@@YtF`yX{mPOt>XWR?@LL zRj?1$Hmi|;y=<03Nu4;CzsKXP%gsL{IAudAkPourhDM@6k`e2c$ml?vmos4|!%RND zeOPb*$;Zj*;l!ST6tzl8(mCdm#}%K-9vH9=&WVVKB`AzkBjU2oBxc~hR*BreT9Xyb94aKN^pF#SuXB}>PRw8z)XDrMtS-pWhAyTooxB<87!}o zOD)`U^ZgxUK!wY1gb)jOuy@N3{Qz7_2OtT`FJSfCwDS{Tpt0p1|2uu<`_Q4}$3{Mh z$D)z8=+Xa0y;GZg^ZE}=bj5c^m>ZwK2~o26^8KxyH_z@~U3%+uo(^E<9|XkK{qkPB zR`sr}_~%x`^UO1noxU#@=AXjn<BYo&b|edor@2}|W}tKB>~E!CFil|L^LsM+csoU~rLx$GJJ z)J6KV;X#oCLn|dClfQGWAIFcLJpP;a-xCOIO02&A$~TNM>EIxDZdLiQ1V(T1;B;hO zOD=VPiRrA-`r{w{Ohn+^>e|wG-+48)>A3-7>T)kGUqrlsUwNVU!6)_AnqOJav+~P` z4q&y&eua%0myK+S>{auJ($mELurHc_v)%Zc?WyJh00DX- zEPwCX@_+u8E=6J;o1*foQ@Jn$ClC?)Medg*5!Z$5l5JbtNhOh_;jq65P3$uVihO}d zNsEq3er0LkdV4r(kuFsHat%f$X3q}L^v+T9&e6=3N*`N!5uT=%DEQ7*|MohBRH1B2 zwF&2Lth6bVy>jh*A63w{9pOmp+hwo3e7^V0B(26H@vyiyc?fJgl$YwMNK~#~JpwJ~ zmtcI97O}WC>CC|dC@)QvLz<31Iq5W-OyoqCZq>r8Rc8ev@I#cBu(USDCdzaG(>NRj z1(X-0Tyqqp&QDWi`*3|Hu}>eC3Ae~oIv^E^4in||*o!D!LcAg)PG|vvE+MEPT0K9+ zCcN}-sPK~7`*GTRynp|Hv%7ymg$?p5V2_|WF5T#e=sY194g+e@C- z=Ns`{AK+nPVUhdypTH%@31hpra~;6U{4~U~e*^&;D-tK%i>23hy*Ta1);URCQa|qZ zQy8PP)=Dc@8pMH7gVU&yDegjjfE)AsKY{~9O2j?5`~K11=Xr-aSE?*l%hk~>cgFX( zGT{4@UR___+uB9a4a(7M9e`2OmOLS{&OY8bU9FXtswJW!k^h|UKfd*t)D0-5KEC_O z*7hT1ve2+;6s;opuvMg+ghqw))yjuWzhwIBPwn1frD!gzd;n3P40DP93as zNs`7%8fWS6tN=P7o0@GEHI)2A`eR7TiXd( zEu#>NPC!{JiHKPlGCmnaqhkm2439cvMt_pny6r~)-#+yI)w)^?SQ#>2c5jAzVPZ|n z8{z<9AU8YmSp_Y_oZ2F_~8V9pN#IiYQ60(ukCAJgrdA@#)t9Y2b1g?FM#pj zhZv#5I?(R68(!bq%?MtQM}PA|7$05;H8Mbpzz+tv2819&Y@Hvw#qQBsuMwp#a88kp zDQ>at5h*+g$*wqf&P75+fR&ec3leUcu-x%V9nwi|BNIS{P(E}xY`*}iC|CbkF}hiN z_}?8iAKUJcw2y}C^bXJ=FhK}Zyrysbr-h|&KujPUK!uYNfB@A%D!&S#0;s%vAt_!v zYuqiIe0+0l^@wyh!d4=P1Iu6u$HOt239X*}=t1-LX0%W;oG%jWJ^F@DfBsF~QNW92FJ{ zDG$)D{XT_^a4~7=AXVF{NM(&=^bqkZfAanSZmfpe6T1{N<7#4S)8uz zjtPwg;(1O2?A*uLLP$ghXNNEN=|Q1?NA^b8-(CQvu=8Ms;+GgZ_j9eOfE7*-Y;(7t zu|F4nl<3lN5O0O$N$f5G z|NlVip$JGo4EPZ%54o>qVcSd7o(NF?tpAJu`hMj$ZvJPB)wepX`EcwN5FlBA-$L`@ zu)~W5m<}MLJ|}Va$@ZPy?N825b|EfX z6Tqe>D7^ml-(6U~S#Nd6%MrnNJOCoURIZ=x937vULZz3aqgU%hjG}%rrUS^&exDq# zE|rv0y*M6@D3|B^+ic(Bc@vL!W@CZ1!u;Uzy$6r(`eEVK+h2S0)o&1ybB>u)o2J&r zN!n<3kI&lePC|roF(?+i<)Gks+9+n`jQdxLbfwg^sZFgUiR<-Tvz?wbdLJEkth42U zUSA287LDgK5s5hBF&zLi?;p4S_^*BnB3Qe=vHG3gc%`3ohC3c&hO?u(0V}bcrvrcx zkHrHBL%MM#`26A7N-bg&pPSY>(*c}K>Hr9XQ`Q8{_Y?mL`ByL|TqfjX?R-&z=+zot zBLH6cM%;KbY2G53^3Co)-+c1l{G{{YK{h?LKR9%KhhPrhUonJ}Lv%mo{v#qE!F5;o zmV{TUHfdpGd?pAfff9iQ36wws9#H7fk_uL9_R*1a0vt#3pa##AOa~JuHQ_rCdp!${PmM;1>|-*NONlcgzJc0VL<9!I0k?mU1`|61(b`Z zw1>wJl#SEExtIU*E|6|oX&)wQ3wund(8xnPq7N9o@zc04?QW+s7+_Yf8qy>-b44&m zHy{FLD0WO)~mOl1gn;rg)&R`Og1j#R`FxM;qVc+MDDrL1j)oy)yio z-T$m}s1JTB`|mkeoPLhRf7^cbU(3qd?2@q|Wt#6VK(KUH+}J(&MKSzspHy;w{FCVb z2#|AXKM@)od;dxA)tjY)Ke2_!(C|Jr0X!9-1~Ktbwo#5#>>kJWp7hR|NvWW2ZbYk# zrWgfAF-adI7HvXCLuL>YL9tc_CX7On(2z}%vwE}F>U0_{KlGz=$pj&>LB7r%Z_t28 z&&o$(|?jG!Z)@_{t1XcjSrmVf?&6hTAytTYgOVebYGGG)Z?UfeFjgzy5AmS+r z?)fpsNIE=jD#gpSa(?77QN>jLY21nX#w%Zc>E?@pF{yJonNr}a?e=>|r$-OA?$_(5 zP^#bWeemQQ6ndpXlv;OA${ZYqDrTjLm^3H| zxm3n7JaOWzcUJH2A9g=~*tz=%>np+Lnjb_=L>LeN34q{_fAm4S*@0rC&42LSH+@f~ zcJw6a;wNpoAI5RQ=6bNb+uh!4U%P51ik*rFAOl7eBi^On@FtJ$ z#uj)YUJrgB3oY(@a$Jy|681}0G++QX)>J2A9jwSitHeockvjciHTkvVF^P!oG#5?}Ur!N~3P;Ne4~%Lt5^zyy0b}8A^Y0990SzuYUq!Hq!^M+u zsa}22?;b7G@2~It<=3LkbnzQ)UlT}(sJqMe|5pc_JA-@SU-H#|A}$%Mc$^>rLN-pq z4Oe>`UP(Rrqm&7@*T47Q$JLw4l&6+K)0ahQ_0^;8AHCDrUn*|wjrTgq_-iDBdrx}4 zr?0O?z_?eduQCzAI_w?yK7H6}wEF8c|FxTy#gf*F2qKvTZt8)VJaQbEdWe+vby(3+ zxthkkPNR9cf2e)WTdQe5n)yr-5i8wopYCmcbhLjj>9xTO))0YBl?j&CUR>LJy;NCt zPMo`Z&rnn<9XDF7dLt-TpOTfR-;ei?nlD_d1)fQsmj)vug)l0FQRsQ8bEAR`BD#6? z#@k=}#{d22|91aiFS7_e+J5-PORpzsx_4OLJ8URL>nr7ICGw0RqD+}Aqa2fAMH6=7 zybk!jt}XjZOS<24hsW{bo$mH-=h}L7M@cve7ZMotFGpNi{M=%6Q(fNp?TNSf%G?%~dOzp73g^|OzN%5 z1B>UFA!h=ZJQNXt$f?c5eWs}uaH%a5Umi&W^wUbWUtPQ1p~FN-P3E{vBHG)EQ|lCw zgDhXso=4VR(1QYS-!7i)-{>K#MEj-EUBjK+-RmVq3zJ1s7Wa@%ueh;WSUv2XES!9L zYx{>+sy92;7q`7qr+!cRU8gd0YJqES!}dmuC7A`q0S=OY1uO4h``?pTVWMsw%|}>z z^XXzE5%|@1@p||4&PKF)GUh0BYQx&-x<`ARH*PP4o_02Qo(q4*l&uEq9ry8r*3MC~ zvFyL~VzpY-iU#A$^Oc)@lSl_q*$)fVe(UsXcWXB)6@p52!f7+JN|N~Ty`SxEeVE4G zT=gvuHZ?(UdF_SOjaQ=LqClLpB6t=?vXC<6#d7Pc=@*KmF7#M0a&+2MikB8jbMsuX z)`6ekEKPh=E*5WJzrDY=lX>~IHa$LVZ10^h@zwQ8wOr6zWecJ#J?r>0ls@?(Z*B%_ ztNy`Ze1EIGb9ngD&2YJ9j8VIXr+@yFUw|2@y>@N$w|?W*uZTdrwh}yg(%s$fUcWZO zS@etvAU&XX2bKTWkow|MzCpU6`|^c98h_39l&ZfS>dhwkgZKY(Wk2OL6#^i-PaA3Y zwdLmDrS6j@#)k77(!b1T@XP?o_=wcNJ1h2r%~-7 z_?@(M;vN5ZvAw&v_U^r;cbci&1Yi%OY2LOdYo!W=G=>&Y+q+yeF99j4zH+>MC+r?A z7FNeL0TUhkXs_pKb*1M2YKY-Pu!8M__~)NB1D}5D>r1N(oC{(Xqf33E5n{+|MO?kYzbp1f7 zT<+AHy-qtUSLZ!VL=?x#;YoY7R?I&54KKLmWnqvYea1GN$yLy z0og;O4Q*`rwI#E?lYDrmxpwTmaI^5ofB8YL+k@gT3jU)X{8khONt#T2TeDK*=48dJ zl_F8jK1G>0Y=H6k>PG4DPJ3f5FjH2|VLSi_ae%;5=Tp+l&aA7n>t=5|#m(rQi}BHN zhJxFS*YD7KK#d=hsma1Wwc)iOX*f(iYy%y@WZ?u6aU-sghc^5n-+y$qM-D+kH}=t} z(8(GvvTNRzR_43k&9ElOK$qagMtm9Mr|}Dx>`F&He`UX&6R}unxVtOV@esBLJBhJ) z00ikvsoO5CtZx&FQ+$8GSy+3q4uCZsY^QPT6p=s{msJ#r8(sd7^8MLb6pqiXx7+2V zg~z4ECI=g06JTVe_H=y!o*oZCAQ1AB(vAJlJUssBr6+&>YTA3qdJCyN?+vlD{rKk{ zJML8Kg8XB)LJ@IZ`7By7^?PgK@&Qpg*jApi*omammq)wZ7dFGdo8(ZAr%U282hUUH zYU1OEox59|m##%GUkgLeh`>$iSLT&7FoIqx9)Jj_SSb2IaJYYTvUgBg=ohLB#Jbn5 zfAq6|*YDJ!OlI(j%FAn4UR_+dwOB5v&bGVLhsHBZA9HbtHeR7rtk;`Cp?H2gGqH^p zIc>DX$wIX-v%8+>X3Y95!?R8byvWzfo-V$4qgE%sA4Khw4~C{AK@fY)iYuNd7E4>q5mZFT1|& zpP%=VS6tM2{z1LSR+=iyKZR=@Rs8k3J@KWnWL5`zu}lXr;N1&J>u^<<{b1G4`S=qi zAmdHqne9E(0W7UUtGE~MZ$HV1hvfOI-~BrD@tE*U1b)W%Uro~JU}wYm<@M{^fwJ%y zrCh_(#^7+6^87)Bat%xCQ}F-_2p3`3rrbdn5iBD*opJ|Vg12I7rz_t*Yd$PI{^4tS z$#eAw(n~;$a0Sum>m%?g2$m4l!3qipEO2n1!(T+?Ll4LBp$=e-?+}v}bKPvd#A(Y)f3aF3V$BL#*wJ)3 zg4sBenG+8{X88SQv$z<&^QQOFow~2roKM}j(QbD?{`5XBNX)q#0>akz0Ys3dFTSv8 zlrLl3vaDWDCM_pYio*4k;?`boeXXbzA=3e@7WyvJ0r-m8kTL}6KW6r=e^miG;|xr; zh7|EELmuf1a2gxP2&|zLtZDyD+8@};_b7Z>K`|T+%AYJ{CQht~HEEB=JdJ~xNh#7^ z&LSAtQizz8CgqV<(rMY#2defm7r(~7Ps%`>NnhctSZUH8r|BqPgOp}vpuI^)gG!Uq zq`h&EZ(yZK8S)gb_3gs~3Be=)pbW&o_+SkZD?zJUD_4${A<-U;pAVoinA?m8Z7>p7 z0NKaJhxTB6<*EIxwA- zv>Zj?@jWsdC?9HM0#F{52NjIHlj5K}AwO8&GsU#^GBncnD8=5zce~jwW4L5)q%{BmHw;&S?LOb0W?JW-YPx zcJIgw7BfM@%=}q7OeB--8IqnZ;^U9uLJkxJ`sVfEM}OB~S`0nv^v<#^$&|f!Xb~O# zZ0JFa2t4lRYHqzC-dGK{_FB!RtuADvBD1I2&vgK2wsT-%Y+qU*DgPP-E!Qj9?!k;5 zfDUZ;08;}!>u@gK-*?H`NPDd7AKF%_{#Qqx54rjS@oqZXZ)R6DD1WjqSo_mBDV4U1 zy`v|jCI)U+Uf4T+GSR8Tti7Oj{Dh2hwvRY<$9K4TGr9jl@8)s8wKJ7pDdYE!x1}#5 zo@ZSDY~R!?z2l({ARnJuX{Ej1@ix(LBqKmb8`fU$=n3o4_Ez142A0l50OLCfvG)*4 z6QtK)vyEyYx-0vAD1*I+lL20`sbcTJQ&8Wdv52!c~Ej> zOTjR)(cUkN7i}*u-cu*-{Amjd5Mb}YF|9qu-^$B@>O2%{mXU*dmCm+*%|1UuYKu8+h&QE@Mnx^r0 zzP?b6;9PGc|7GI=03srtzSr!f6FY$Ht!?+yNz+Y^Cqx7?)%Df=M-L5^Q{7L}IEbpt z>o3>a9f%+o62l2PQ{@0~PCBt2#~pGVz$8wfRK!Guv%@1(>ag|zIB}k$II&4;39@r| z76nFY?!}1!Sv-KTvo~=(#`mW=_<8S4;~A^x@U*eL)3ola8=r}@5cK0D8_Q?L1K{&` z0Hf^@&ofqL#RK3ue*c-R#Hlzxz;C~Et>0CTpVTVlxVGdw*l80qlgI2ny}y0`!A=%g z`de?kyi_g2@y2SUpLWO3w9c{keHb>t?$&%fH>2+P{9Kr z{nVb^S4-vI2Nk+jM9>}mO2+gjrI4nQxO|*9iabq3*{35-9ONGt82}&}#uc!<5X)(S zYi*Frr( zVej#p7j7*t-B;)#lN!iCA23nA%+MK}+p4sZi+krCm3~?G?AZZ z?3{@wLITXt0Zib9jpNfhoBh+J!ulS_4G3ur(38Ws5b4E|9&s;46VJ~Vz|VnhEPww= zJxSBwdSjsyWs#fc(&bFzgH`ARn*W}I=PPt&LN5e?qhPh!e&UBEWjq=2C^gUr%qVA8 zy>t;SFk!$-#obO=@gXvJ;X#BXwT(u9bEC?voXekpDZW1q^$Js+GZP_u0eNOV?HwYwV^5 zZq1QWw%zI8zqbv=5WM!{wOiNMNc=eMOiV}@)(h6Oz7pJh)VUpt7ZNZQ4_!(X7CihlR%mQwElK?i0O(SKQU*2-7No3Hu_(>x-TUSZX_=UK=$-m z*Lh@C0(Wl_sXv2nt=JuP5Zm02RP`yCiew64

JQ(m@8H#jdmsVsAWhj-)Q^_6o)5 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 Result<()> { + let width = usize::max(buffer_width, buffer_stride); let buffer_size = buffer.len() * 4; // len is the number of entries so * 4 as we want bytes - let required_buffer_size = (window_width / scale) * (window_height / scale) * 4; // * 4 for 32-bit buffer + let required_buffer_size = width * buffer_height * 4; // * 4 for 32-bit buffer if buffer_size < required_buffer_size { - let err = format!("Update failed because input buffer is too small. Required size for {} x {} window ({}x scale) is {} bytes but the size of the input buffer has the size {} bytes", - window_width, window_height, scale, required_buffer_size, buffer_size); + let err = format!( + "Update failed because input buffer is too small. Required size for {} ({} stride) x {} buffer is {} + bytes but the size of the input buffer has the size {} bytes", + buffer_width, buffer_stride, buffer_height, required_buffer_size, buffer_size); Err(Error::UpdateFailed(err)) } else { Ok(()) diff --git a/src/lib.rs b/src/lib.rs index df413cf..59f0aa0 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -98,6 +98,7 @@ mod buffer_helper; mod key_handler; mod mouse_handler; mod os; +mod rate; mod window_flags; //mod menu; //pub use menu::Menu as Menu; @@ -133,6 +134,34 @@ impl fmt::Debug for Window { } } +pub fn clamp(low: T, value: T, high: T) -> T { + if value < low { + low + } else if value > high { + high + } else { + value + } +} + +/// +/// On some OS (X11 for example) it's possible a window can resize even if no resize has been set. +/// This causes some issues depending on how the content of an input buffer should be displayed then it's possible +/// to set this scaling mode to get a better behavior. +/// +#[derive(Clone, Copy, Debug, PartialEq)] +pub enum ScaleMode { + /// Stretch the buffer in the whole window meaning if your buffer is 256x256 and window is 1024x1024 it will be scaled up 4 times + Stretch, + /// Keep the correct aspect ratio to be displayed while scaling up fully in the other axis. Fill area will be filed with Window::set_bg_color (default 0, 0, 0) + AspectRatioStretch, + /// Places the buffer in the middle of the window without any scaling. Fills the borders with color set Window::set_bg_color (default 0,0,0) + /// If the window is smaller than the buffer the center of the buffer will be displayed + Center, + /// Same as Center but places the buffer in the upper left corner of the window. + UpperLeft, +} + /// /// WindowOptions is creation settings for the window. By default the settings are defined for /// displayng a 32-bit buffer (no scaling of window is possible) @@ -145,8 +174,10 @@ pub struct WindowOptions { pub title: bool, /// If it should be possible to resize the window (default: false) pub resize: bool, - /// Scale of the window that used in conjunction with update_with_buffer_size (default: X1) + /// Scale of the window that used in conjunction with update_with_buffer (default: X1) pub scale: Scale, + /// Adjust how the scaling of the buffer used with update_with_buffer should be done. + pub scale_mode: ScaleMode, } impl Window { @@ -172,17 +203,12 @@ impl Window { /// /// ```no_run /// # use minifb::*; - /// let mut window = match Window::new("Test", 640, 400, - /// WindowOptions { - /// resize: true, - /// ..WindowOptions::default() - /// }) { - /// Ok(win) => win, - /// Err(err) => { - /// println!("Unable to create window {}", err); - /// return; - /// } - ///}; + /// let mut window = Window::new("Test", 640, 400, + /// WindowOptions { + /// resize: true, + /// ..WindowOptions::default() + /// }) + /// .expect("Unable to open Window"); /// ``` pub fn new(name: &str, width: usize, height: usize, opts: WindowOptions) -> Result { imp::Window::new(name, width, height, opts).map(Window) @@ -219,38 +245,6 @@ impl Window { self.0.get_window_handle() } - /// - /// Updates the window with a 32-bit pixel buffer. The encoding for each pixel is `0RGB`: - /// The upper 8-bits are ignored, the next 8-bits are for the red channel, the next 8-bits - /// afterwards for the green channel, and the lower 8-bits for the blue channel. - /// - /// Notice that the buffer needs to be at least the size of the created window. - /// - /// # Examples - /// - /// ```no_run - /// # use minifb::*; - /// fn from_u8_rgb(r: u8, g: u8, b: u8) -> u32 { - /// let (r, g, b) = (r as u32, g as u32, b as u32); - /// (r << 16) | (g << 8) | b - /// } - /// let azure_blue = from_u8_rgb(0, 127, 255); - /// - /// let mut buffer: Vec = vec![azure_blue; 640 * 400]; - /// - /// let mut window = Window::new("Test", 640, 400, WindowOptions::default()).unwrap(); - /// - /// window.update_with_buffer(&buffer).unwrap(); - /// ``` - #[inline] - #[deprecated( - since = "0.14.0", - note = "Please use the update_with_buffer_size instead. This function will be replaced with args given in update_with_buffer_size in the future." - )] - pub fn update_with_buffer(&mut self, buffer: &[u32]) -> Result<()> { - self.0.update_with_buffer(buffer) - } - /// /// Updates the window with a 32-bit pixel buffer. The encoding for each pixel is `0RGB`: /// The upper 8-bits are ignored, the next 8-bits are for the red channel, the next 8-bits @@ -277,12 +271,18 @@ impl Window { /// /// let mut window = Window::new("Test", window_width, window_height, WindowOptions::default()).unwrap(); /// - /// window.update_with_buffer_size(&buffer, buffer_width, buffer_height).unwrap(); + /// window.update_with_buffer(&buffer, buffer_width, buffer_height).unwrap(); /// ``` #[inline] - pub fn update_with_buffer_size(&mut self, buffer: &[u32], _width: usize, _height: usize) -> Result<()> { - // currently width / height isn't used but will be soon - self.0.update_with_buffer(buffer) + pub fn update_with_buffer( + &mut self, + buffer: &[u32], + width: usize, + height: usize, + ) -> Result<()> { + self.0.update_rate(); + self.0 + .update_with_buffer_stride(buffer, width, height, width) } /// @@ -300,6 +300,7 @@ impl Window { /// ``` #[inline] pub fn update(&mut self) { + self.0.update_rate(); self.0.update() } @@ -340,6 +341,60 @@ impl Window { self.0.set_position(x, y) } + /// + /// Sets the background color that is used with update_with_buffer. + /// In some cases there will be a blank area around the buffer depending on the ScaleMode that has been set. + /// This color will be used in the in that area. + /// The function takes 3 parameters in (red, green, blue) and each value is in the range of 0-255 where 255 is the brightest value + /// + /// # Examples + /// + /// ```no_run + /// # use minifb::*; + /// # let mut window = Window::new("Test", 640, 400, WindowOptions::default()).unwrap(); + /// // Set background color to bright red + /// window.set_background_color(255, 0, 0); + /// ``` + /// + #[inline] + pub fn set_background_color(&mut self, red: usize, green: usize, blue: usize) { + let r = clamp(0, red, 255); + let g = clamp(0, green, 255); + let b = clamp(0, blue, 255); + self.0 + .set_background_color(((r << 16) | (g << 8) | b) as u32); + } + + /// + /// Limits the update rate of polling for new events in order to reduce CPU usage. + /// The problem of having a tight loop that does something like this + /// + /// ```no_run + /// # use minifb::*; + /// # let mut window = Window::new("Test", 640, 400, WindowOptions::default()).unwrap(); + /// loop { + /// window.update(); + /// } + /// ``` + /// Is that lots of CPU time will be spent calling system functions to check for new events in a tight loop making the CPU time go up. + /// Using `limit_update_rate` minifb will check how much time has passed since the last time and if it's less than the selected time it will sleep for the remainder of it. + /// This means that if more time has spent than the set time (external code taking longer) minifb will not do any waiting at all so there is no loss in CPU performance with this feature. + /// By default it's set to 4 milliseconds. Setting this value to None and no waiting will be done + /// + /// # Examples + /// + /// ```no_run + /// # use minifb::*; + /// # let mut window = Window::new("Test", 640, 400, WindowOptions::default()).unwrap(); + /// // Make sure that at least 4 ms has passed since the last event poll + /// window.limit_update_rate(Some(std::time::Duration::from_millis(4))); + /// ``` + /// + #[inline] + pub fn limit_update_rate(&mut self, time: Option) { + self.0.set_rate(time) + } + /// /// Returns the current size of the window /// @@ -912,6 +967,7 @@ impl Default for WindowOptions { title: true, resize: false, scale: Scale::X1, + scale_mode: ScaleMode::Stretch, } } } diff --git a/src/native/macosx/MacMiniFB.m b/src/native/macosx/MacMiniFB.m index a0b5ada..59ec334 100644 --- a/src/native/macosx/MacMiniFB.m +++ b/src/native/macosx/MacMiniFB.m @@ -5,11 +5,12 @@ #include #include -extern id g_metal_device; extern id g_command_queue; extern id g_library; extern id g_pipeline_state; +id g_metal_device; + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// NSString* g_shadersSrc = @ @@ -22,17 +23,18 @@ NSString* g_shadersSrc = @ "};\n" "vertex VertexOutput vertFunc(\n" - "unsigned int vID[[vertex_id]])\n" + "unsigned int vID[[vertex_id]],\n" + "constant float4* vertexArray[[buffer(0)]])\n" "{\n" "VertexOutput out;\n" - "out.pos.x = (float)(vID / 2) * 4.0 - 1.0;\n" - "out.pos.y = (float)(vID % 2) * 4.0 - 1.0;\n" + "out.pos.x = (vertexArray[vID].x * 2.0) - 1.0;\n" + "out.pos.y = (vertexArray[vID].y * 2.0) - 1.0;\n" "out.pos.z = 0.0;\n" "out.pos.w = 1.0;\n" - "out.texcoord.x = (float)(vID / 2) * 2.0;\n" - "out.texcoord.y = 1.0 - (float)(vID % 2) * 2.0;\n" + "out.texcoord.x = vertexArray[vID].w;\n" + "out.texcoord.y = vertexArray[vID].z;\n" "return out;\n" "}\n" @@ -159,6 +161,7 @@ void* mfb_open(const char* name, int width, int height, uint32_t flags, int scal [NSApp setActivationPolicy:NSApplicationActivationPolicyRegular]; create_standard_menu(); cursor_init(); + g_metal_device = MTLCreateSystemDefaultDevice(); if (!g_metal_device) { @@ -191,9 +194,9 @@ void* mfb_open(const char* name, int width, int height, uint32_t flags, int scal if (!window) return 0; - window->draw_buffer = malloc((width * height * 4) * 8); + window->draw_parameters = calloc(sizeof(DrawParameters), 1); - if (!window->draw_buffer) + if (!window->draw_parameters) return 0; // Setup command queue @@ -211,18 +214,40 @@ void* mfb_open(const char* name, int width, int height, uint32_t flags, int scal textureDescriptor.width = width; textureDescriptor.height = height; - // Create the texture from the device by using the descriptor + const float scale_t = 1.00f; + const float uv_const = 1.0f; + + static const Vertex intial_vertices[] = { + { -1.0f * scale_t, 1.0f * scale_t, 0.0f, 0.0f }, + { 1.0f * scale_t, 1.0f * scale_t, uv_const, 0.0f }, + { 1.0f * scale_t, -1.0f * scale_t, uv_const, uv_const }, + + { -1.0f * scale_t, 1.0f * scale_t, 0.0f, 0.0f }, + { 1.0f * scale_t, -1.0f * scale_t, uv_const, uv_const }, + { -1.0f * scale_t, -1.0f * scale_t, 0.0f, uv_const }, + }; + + viewController->m_width = width; + viewController->m_height = height; for (int i = 0; i < MaxBuffersInFlight; ++i) { - viewController->m_texture_buffers[i] = [g_metal_device newTextureWithDescriptor:textureDescriptor]; + viewController->m_draw_state[i].texture_width = width; + viewController->m_draw_state[i].texture_height = height; + viewController->m_draw_state[i].texture = + [g_metal_device newTextureWithDescriptor:textureDescriptor]; + viewController->m_draw_state[i].vertex_buffer = + [g_metal_device newBufferWithBytes:intial_vertices + length:sizeof(intial_vertices) + options:MTLResourceStorageModeShared]; + + viewController->m_delayed_delete_textures[i].frame_count = -1; } // Used for syncing the CPU and GPU viewController->m_semaphore = dispatch_semaphore_create(MaxBuffersInFlight); - viewController->m_draw_buffer = window->draw_buffer; - viewController->m_width = width; - viewController->m_height = height; - viewController->m_delayed_delete_count = 0; + viewController->m_draw_parameters = window->draw_parameters; + //viewController->m_width = width; + //viewController->m_height = height; MTKView* view = [[MTKView alloc] initWithFrame:rectangle]; view.device = g_metal_device; @@ -451,20 +476,32 @@ int mfb_update(void* window, void* buffer) /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// -int mfb_update_with_buffer(void* window, void* buffer) +int mfb_update_with_buffer(void* window, void* buffer, uint32_t buf_width, uint32_t buf_height, uint32_t buf_stride) { OSXWindow* win = (OSXWindow*)window; + win->draw_parameters->buffer_width = buf_width; + win->draw_parameters->buffer_height = buf_height; + win->draw_parameters->buffer_stride = buf_stride; + win->draw_parameters->scale_mode = 0; + if (win->shared_data) { - SharedData* shared_data = (SharedData*)win->shared_data; - memcpy(win->draw_buffer, buffer, shared_data->width * shared_data->height * 4); + win->draw_parameters->buffer = buffer; + win->draw_parameters->bg_color = win->shared_data->bg_color; + win->draw_parameters->scale_mode = win->shared_data->scale_mode; } else { - memcpy(win->draw_buffer, buffer, win->width * win->height * 4); + win->draw_parameters->scale_mode = 0; } + //win->draw_parameters->pos_x = 0; + //win->draw_parameters->pos_y = 0; + //win->draw_parameters->width = buf_width; + //win->draw_parameters->height = buf_height; + int state = generic_update(win); [[win contentView] setNeedsDisplay:YES]; + return state; } @@ -603,7 +640,7 @@ static CFStringRef create_string_for_key(CGKeyCode keyCode) if (!layoutData) return 0; - const UCKeyboardLayout *keyboardLayout = (const UCKeyboardLayout *)CFDataGetBytePtr(layoutData); + const UCKeyboardLayout* keyboardLayout = (const UCKeyboardLayout*)CFDataGetBytePtr(layoutData); UInt32 keysDown = 0; UniChar chars[4]; diff --git a/src/native/macosx/OSXWindow.h b/src/native/macosx/OSXWindow.h index 9bbc9ae..dcceba6 100644 --- a/src/native/macosx/OSXWindow.h +++ b/src/native/macosx/OSXWindow.h @@ -42,10 +42,10 @@ void build_submenu(NSMenu* menu, MenuDesc* desc); NSView* childContentView; @public void (*key_callback)(void* user_data, int key, int state); @public void (*char_callback)(void* user_data, unsigned int key); - @public int width; - @public int height; + @public float width; + @public float height; @public int scale; - @public void* draw_buffer; + @public DrawParameters* draw_parameters; @public void* rust_data; @public SharedData* shared_data; @public bool should_close; diff --git a/src/native/macosx/OSXWindow.m b/src/native/macosx/OSXWindow.m index 437c5c7..79f6dab 100644 --- a/src/native/macosx/OSXWindow.m +++ b/src/native/macosx/OSXWindow.m @@ -181,7 +181,7 @@ if (childContentView) [childContentView removeFromSuperview]; - printf("osxwindow: setContentFrameView %p\n", frameView); + //printf("osxwindow: setContentFrameView %p\n", frameView); //printf("osxwindow: setting controller %p\n", view_controller); //frameView->m_view_controller = view_controller; diff --git a/src/native/macosx/OSXWindowFrameView.h b/src/native/macosx/OSXWindowFrameView.h index 01458ea..b365042 100644 --- a/src/native/macosx/OSXWindowFrameView.h +++ b/src/native/macosx/OSXWindowFrameView.h @@ -1,20 +1,43 @@ #import #import +#include "shared_data.h" // Number of textures in flight (tripple buffered) const int MaxBuffersInFlight = 3; /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +typedef struct DrawState { + int texture_width; + int texture_height; + id vertex_buffer; + id texture; +} DrawState; + +/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +typedef struct Vertex { + float x,y; + float u,v; +} Vertex; + +/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +typedef struct DelayedTextureDelete { + id texture; + int frame_count; +} DelayedTextureDelete; + +/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + @interface WindowViewController : NSViewController { - @public id m_texture_buffers[MaxBuffersInFlight]; - @public id m_delayed_delete_textures[MaxBuffersInFlight]; + @public DrawState m_draw_state[MaxBuffersInFlight]; + @public DelayedTextureDelete m_delayed_delete_textures[MaxBuffersInFlight]; @public int m_current_buffer; - @public void* m_draw_buffer; - @public int m_width; - @public int m_height; - @public int m_delayed_delete_count; + @public DrawParameters* m_draw_parameters; + @public float m_width; + @public float m_height; // Used for syncing with CPU/GPU @public dispatch_semaphore_t m_semaphore; } diff --git a/src/native/macosx/OSXWindowFrameView.m b/src/native/macosx/OSXWindowFrameView.m index d452271..5ed7c77 100644 --- a/src/native/macosx/OSXWindowFrameView.m +++ b/src/native/macosx/OSXWindowFrameView.m @@ -7,32 +7,273 @@ id g_command_queue; id g_library; id g_pipeline_state; +enum ScaleMode { + ScaleMode_Stretch, + ScaleMode_AspectRatioStretch, + ScaleMode_Center, + ScaleMode_UpperLeft, +}; + +typedef struct Box { + int x, y, width, height; +} Box; + +static void gen_normalized(Vertex* output, const Box* box, float x, float y, float u, float v) { + // data gets normalized in the shader + float pos_x = box->x / x; + float pos_y = box->y / y; + float width = box->width / x; + float height = box->height / y; + + output[0].x = pos_x; + output[0].y = pos_y; + output[0].u = u; + output[0].v = 0.0f; + + output[1].x = width; + output[1].y = pos_y; + output[1].u = u; + output[1].v = v; + + output[2].x = width; + output[2].y = height; + output[2].u = 0.0f; + output[2].v = v; + + output[3].x = pos_x; + output[3].y = pos_y; + output[3].u = u; + output[3].v = 0.0f; + + output[4].x = width; + output[4].y = height; + output[4].u = 0.0f; + output[4].v = v; + + output[5].x = pos_x; + output[5].y = height; + output[5].u = 0.0f; + output[5].v = 0.0f; +} + +static void calculate_scaling( + Vertex* output, + int buf_width, int buf_height, + int texture_width, int texture_height, + float window_width, float window_height, + int scale_mode) +{ + float x_ratio = (float)window_width; + float y_ratio = (float)window_height; + float v_ratio = (float)buf_width / (float)texture_width; + float u_ratio = (float)buf_height / (float)texture_height; + + switch (scale_mode) { + case ScaleMode_Stretch: + { + Box box = { 0, 0, window_width, window_height }; + gen_normalized(output, &box, x_ratio, y_ratio, u_ratio, v_ratio); + break; + } + + case ScaleMode_AspectRatioStretch: + { + float buffer_aspect = (float)buf_width / (float)buf_height; + float win_aspect = (float)window_width / (float)(window_height); + + if (buffer_aspect > win_aspect) { + int new_height = (int)(window_width / buffer_aspect); + int offset = (new_height - window_height) / -2; + + Box box = { 0, offset, window_width, offset + new_height }; + gen_normalized(output, &box, x_ratio, y_ratio, u_ratio, v_ratio); + } else { + int new_width = (int)(window_height * buffer_aspect); + int offset = (new_width - window_width) / -2; + + Box box = { offset, 0, offset + new_width, window_height }; + gen_normalized(output, &box, x_ratio, y_ratio, u_ratio, v_ratio); + } + + break; + } + + case ScaleMode_Center: + { + int pos_x; + int pos_y; + + if (buf_height > window_height) { + pos_y = -(buf_height - window_height) / 2; + } else { + pos_y = (window_height - buf_height) / 2; + } + + if (buf_width > window_width) { + pos_x = -(buf_width - window_width) / 2; + } else { + pos_x = (window_width - buf_width) / 2; + } + + int height = buf_height + pos_y; + int width = buf_width + pos_x; + + Box box = { pos_x, pos_y, width, height }; + gen_normalized(output, &box, x_ratio, y_ratio, u_ratio, v_ratio); + + break; + } + + case ScaleMode_UpperLeft: + { + int pos_y; + + if (buf_height > window_height) { + pos_y = -(buf_height - window_height); + } else { + pos_y = (window_height - buf_height); + } + + Box box = { 0, pos_y, buf_width, buf_height + pos_y }; + gen_normalized(output, &box, x_ratio, y_ratio, u_ratio, v_ratio); + + break; + } + + default: + break; + } +} + + @implementation WindowViewController -(void)mtkView:(nonnull MTKView *)view drawableSizeWillChange:(CGSize)size { - (void)view; (void)size; - // resize + (void)view; + + NSSize new_size = [view bounds].size; + m_width = new_size.width; + m_height = new_size.height; +} + +uint32_t upper_power_of_two(uint32_t v) { + v--; + v |= v >> 1; + v |= v >> 2; + v |= v >> 4; + v |= v >> 8; + v |= v >> 16; + v++; + return v; } -(void)drawInMTKView:(nonnull MTKView *)view { - //printf("draw view\n"); + const int buffer_width = m_draw_parameters->buffer_width; + const int buffer_height = m_draw_parameters->buffer_height; // Wait to ensure only MaxBuffersInFlight number of frames are getting proccessed // by any stage in the Metal pipeline (App, Metal, Drivers, GPU, etc) dispatch_semaphore_wait(m_semaphore, DISPATCH_TIME_FOREVER); + if (!m_draw_parameters->buffer) { + return; + } + // Iterate through our Metal buffers, and cycle back to the first when we've written to MaxBuffersInFlight m_current_buffer = (m_current_buffer + 1) % MaxBuffersInFlight; + for (int i = 0; i < MaxBuffersInFlight; ++i) { + DelayedTextureDelete* del_texture = &m_delayed_delete_textures[i]; + int frame_count = del_texture->frame_count - 1; + + if (frame_count == 0) { + //printf("freeing texture\n"); + [del_texture->texture setPurgeableState:MTLPurgeableStateEmpty]; + [del_texture->texture release]; + del_texture->frame_count = -1; + } else if (frame_count > 0) { + del_texture->frame_count = frame_count; + } + } + + DrawState* draw_state = &m_draw_state[m_current_buffer]; + + // make sure the current buffer fits in the texture, otherwise allocate a new one + + if (buffer_width > draw_state->texture_width || + buffer_height > draw_state->texture_height) { + + //printf("buffer size %d %d\n", buffer_width, buffer_height); + //printf("old texture size %d %d\n", draw_state->texture_width, draw_state->texture_height); + + int new_width = upper_power_of_two(buffer_width); + int new_height = upper_power_of_two(buffer_height); + + //printf("allocating new texture at size %d %d\n", new_width, new_height); + + MTLTextureDescriptor* texture_desc = [[MTLTextureDescriptor alloc] init]; + + // Indicate that each pixel has a blue, green, red, and alpha channel, where each channel is + // an 8-bit unsigned normalized value (i.e. 0 maps to 0.0 and 255 maps to 1.0) + texture_desc.pixelFormat = MTLPixelFormatBGRA8Unorm; + + // Set the pixel dimensions of the texture + texture_desc.width = new_width; + texture_desc.height = new_width; + + // Allocate the now texture + + id texture = [view.device newTextureWithDescriptor:texture_desc]; + + if (texture == 0) { + printf("Failed to create texture of size %d - %d. Please report this issue. Skipping rendering\n", + new_width, new_height); + return; + } + + bool found_del_slot = false; + + // Put the old texture up for deleting and fail if there are no free slots around. + + for (int i = 0; i < MaxBuffersInFlight; ++i) { + if (m_delayed_delete_textures[i].frame_count == -1) { + m_delayed_delete_textures[i].texture = draw_state->texture; + m_delayed_delete_textures[i].frame_count = MaxBuffersInFlight; + found_del_slot = true; + break; + } + } + + if (!found_del_slot) { + printf("Unable to delete texture!\n"); + } + + draw_state->texture = texture; + draw_state->texture_width = new_width; + draw_state->texture_height = new_width; + } + // Calculate the number of bytes per row of our image. - NSUInteger bytesPerRow = 4 * m_width; - MTLRegion region = { { 0, 0, 0 }, { m_width, m_height, 1 } }; + NSUInteger bytesPerRow = 4 * m_draw_parameters->buffer_stride; + MTLRegion region = { { 0, 0, 0 }, + { m_draw_parameters->buffer_width, + m_draw_parameters->buffer_height, 1 } }; + + //printf("updating texture with %p\n", m_draw_parameters->buffer); // Copy the bytes from our data object into the texture - [m_texture_buffers[m_current_buffer] replaceRegion:region - mipmapLevel:0 withBytes:m_draw_buffer bytesPerRow:bytesPerRow]; + [draw_state->texture replaceRegion:region + mipmapLevel:0 withBytes:m_draw_parameters->buffer bytesPerRow:bytesPerRow]; + + // Update the vertex buffer + calculate_scaling( + draw_state->vertex_buffer.contents, + m_draw_parameters->buffer_width, m_draw_parameters->buffer_height, + draw_state->texture_width, draw_state->texture_height, + m_width, m_height, + m_draw_parameters->scale_mode); // Create a new command buffer for each render pass to the current drawable id commandBuffer = [g_command_queue commandBuffer]; @@ -54,7 +295,11 @@ id g_pipeline_state; if (renderPassDescriptor != nil) { - renderPassDescriptor.colorAttachments[0].clearColor = MTLClearColorMake(1.0, 0.0, 0.0, 1.0); + float red = ((m_draw_parameters->bg_color >> 16) & 0xff) * 1.0f / 255.0f; + float green = ((m_draw_parameters->bg_color >> 8) & 0xff) * 1.0f / 255.0f; + float blue = ((m_draw_parameters->bg_color >> 0) & 0xff) * 1.0f / 255.0f; + + renderPassDescriptor.colorAttachments[0].clearColor = MTLClearColorMake(red, green, blue, 1.0); // Create a render command encoder so we can render into something id renderEncoder = @@ -64,12 +309,13 @@ id g_pipeline_state; // Set render command encoder state [renderEncoder setRenderPipelineState:g_pipeline_state]; - [renderEncoder setFragmentTexture:m_texture_buffers[m_current_buffer] atIndex:0]; + [renderEncoder setFragmentTexture:draw_state->texture atIndex:0]; + [renderEncoder setVertexBuffer:draw_state->vertex_buffer offset:0 atIndex:0]; // Draw the vertices of our quads [renderEncoder drawPrimitives:MTLPrimitiveTypeTriangle vertexStart:0 - vertexCount:3]; + vertexCount:6]; // We're done encoding commands [renderEncoder endEncoding]; @@ -191,35 +437,13 @@ id g_pipeline_state; int width = (int)size.width; int height = (int)size.height; + //m_view_controller->m_width = (int)width; + //m_view_controller->m_height = (int)height; + // if windows is resized we need to create new textures so we do that here and put the old textures in a // "to delete" queue and set a frame counter of 3 frames before the gets released if (window->shared_data) { - if ((width != window->shared_data->width) || - (height != window->shared_data->height)) { - - MTLTextureDescriptor* textureDescriptor = [[MTLTextureDescriptor alloc] init]; - - // Indicate that each pixel has a blue, green, red, and alpha channel, where each channel is - // an 8-bit unsigned normalized value (i.e. 0 maps to 0.0 and 255 maps to 1.0) - textureDescriptor.pixelFormat = MTLPixelFormatBGRA8Unorm; - - // Set the pixel dimensions of the texture - textureDescriptor.width = width; - textureDescriptor.height = height; - - // Create the texture from the device by using the descriptor - - m_view_controller->m_width = width; - m_view_controller->m_height = height; - - for (int i = 0; i < MaxBuffersInFlight; ++i) { - m_view_controller->m_delayed_delete_count = 3; - m_view_controller->m_delayed_delete_textures[i] = m_view_controller->m_texture_buffers[i]; - m_view_controller->m_texture_buffers[i] = [g_metal_device newTextureWithDescriptor:textureDescriptor]; - } - } - window->shared_data->width = width; window->shared_data->height = height; } @@ -237,6 +461,7 @@ id g_pipeline_state; - (void)windowResized:(NSNotification *)notification { + (void)notification; } @end diff --git a/src/native/macosx/shared_data.h b/src/native/macosx/shared_data.h index b869f91..696a455 100644 --- a/src/native/macosx/shared_data.h +++ b/src/native/macosx/shared_data.h @@ -1,6 +1,8 @@ #pragma once typedef struct SharedData { + unsigned int bg_color; + unsigned int scale_mode; unsigned int width; unsigned int height; float mouse_x; @@ -10,3 +12,14 @@ typedef struct SharedData { unsigned char mouse_state[8]; } SharedData; +/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +typedef struct DrawParameters { + void* buffer; + unsigned int bg_color; + int buffer_width; + int buffer_height; + int buffer_stride; + int scale_mode; +} DrawParameters; + diff --git a/src/native/unix/scalar.cpp b/src/native/unix/scalar.cpp new file mode 100644 index 0000000..bf2b26c --- /dev/null +++ b/src/native/unix/scalar.cpp @@ -0,0 +1,208 @@ +#include +#include + +extern "C" void Image_resize_linear_c(uint32_t* target, const uint32_t* source, int w, int h, int s, int w2, int h2) { + if (w2 <= 0) { w2 = 1; } + if (h2 <= 0) { h2 = 1; } + + float x_ratio = ((float)(w)) / w2; + float y_ratio = ((float)(h)) / h2; + int step_x = x_ratio * 1024.0f; + int step_y = y_ratio * 1024.0f; + int fixed_y = 0; + + for (int i = 0; i < h2; i++) { + const int y = (fixed_y >> 10) * s; + int fixed_x = 0; + for (int j = 0; j < w2; j++) { + int x = fixed_x >> 10; + int index = (y + x); + *target++ = source[index]; + fixed_x += step_x; + } + + fixed_y += step_y; + } +} + +static void resize_linear_c_stride(uint32_t* target, const uint32_t* source, int w, int h, int s, int w2, int h2, int stride) { + if (w2 <= 0) { w2 = 1; } + if (h2 <= 0) { h2 = 1; } + + float x_ratio = ((float)(w)) / w2; + float y_ratio = ((float)(h)) / h2; + int step_x = x_ratio * 1024.0f; + int step_y = y_ratio * 1024.0f; + int fixed_y = 0; + int stride_step = stride - w2; + + for (int i = 0; i < h2; i++) { + const int y = (fixed_y >> 10) * s; + int fixed_x = 0; + for (int j = 0; j < w2; j++) { + int x = fixed_x >> 10; + int index = (y + x); + *target++ = source[index]; + fixed_x += step_x; + } + + target += stride_step; + fixed_y += step_y; + } +} + +extern "C" void Image_resize_linear_aspect_fill_c( + uint32_t* target, + const uint32_t* source, + int w, int h, int s, + int window_width, int window_height, uint32_t bg_clear) +{ + // TODO: Optimize by only clearing the areas the image blit doesn't fill + for (int i = 0; i < window_width * window_height; ++i) { + target[i] = bg_clear; + } + + float buffer_aspect = float(w) / float(h); + float win_aspect = float(window_width) / float(window_height); + + if (buffer_aspect > win_aspect) { + int new_height = (int)(window_width / buffer_aspect); + int offset = (new_height - window_height) / -2; + Image_resize_linear_c( + target + (offset * window_width), + source, w, h, s, + window_width, new_height); + } else { + int new_width = (int)(window_height * buffer_aspect); + int offset = (new_width - window_width) / -2; + resize_linear_c_stride( + target + offset, source, w, h, s, + new_width, window_height, window_width); + } +} + +extern "C" void Image_center( + uint32_t* target, + const uint32_t* source, + int w, int h, int s, + int window_width, int window_height, uint32_t bg_clear) +{ + // TODO: Optimize by only clearing the areas the image blit doesn't fill + for (int i = 0; i < window_width * window_height; ++i) { + target[i] = bg_clear; + } + + if (h > window_height) { + int y_offset = (h - window_height) / 2; + int new_height = h - y_offset; + source += y_offset * s; + + if (w > window_width) { + int x_offset = (w - window_width) / 2; + source += x_offset; + + for (int y = 0; y < window_height; ++y) { + for (int x = 0; x < window_width; ++x) { + *target++ = *source++; + } + source += (s - window_width); + } + } else { + int x_offset = (window_width - w) / 2; + + for (int y = 0; y < new_height; ++y) { + target += x_offset; + + for (int x = 0; x < w; ++x) { + *target++ = *source++; + } + + target += (window_width - (w + x_offset)); + source += s - w; + } + } + + } else { + int y_offset = (window_height - h) / 2; + target += y_offset * window_width; + + if (w > window_width) { + int x_offset = (w - window_width) / 2; + source += x_offset; + + for (int y = 0; y < h; ++y) { + for (int x = 0; x < window_width; ++x) { + *target++ = *source++; + } + source += (s - window_width); + } + } else { + int x_offset = (window_width - w) / 2; + target += x_offset; + + for (int y = 0; y < h; ++y) { + for (int x = 0; x < w; ++x) { + *target++ = *source++; + } + + target += (window_width - w); + source += s - w; + } + } + } +} + +extern "C" void Image_upper_left( + uint32_t* target, + const uint32_t* source, + int w, int h, int s, + int window_width, int window_height, uint32_t bg_clear) +{ + // TODO: Optimize by only clearing the areas the image blit doesn't fill + for (int i = 0; i < window_width * window_height; ++i) { + target[i] = bg_clear; + } + + if (h > window_height) { + int y_offset = (h - window_height) / 2; + int new_height = h - y_offset; + + if (w > window_width) { + for (int y = 0; y < window_height; ++y) { + for (int x = 0; x < window_width; ++x) { + *target++ = *source++; + } + source += (s - window_width); + } + } else { + for (int y = 0; y < new_height; ++y) { + for (int x = 0; x < w; ++x) { + *target++ = *source++; + } + + target += (window_width - w); + source += s - w; + } + } + + } else { + if (w > window_width) { + for (int y = 0; y < h; ++y) { + for (int x = 0; x < window_width; ++x) { + *target++ = *source++; + } + source += (s - window_width); + } + } else { + for (int y = 0; y < h; ++y) { + for (int x = 0; x < w; ++x) { + *target++ = *source++; + } + + target += (window_width - w); + source += s - w; + } + } + } +} + diff --git a/src/os/macos/mod.rs b/src/os/macos/mod.rs index 146583b..28b0594 100644 --- a/src/os/macos/mod.rs +++ b/src/os/macos/mod.rs @@ -5,6 +5,7 @@ extern crate raw_window_handle; use error::Error; use key_handler::KeyHandler; use Result; +use rate::UpdateRate; use {Key, KeyRepeat, MouseButton, MouseMode, Scale, WindowOptions}; // use MenuItem; use buffer_helper; @@ -166,7 +167,13 @@ extern "C" { fn mfb_set_title(window: *mut c_void, title: *const c_char); fn mfb_close(window: *mut c_void); fn mfb_update(window: *mut c_void); - fn mfb_update_with_buffer(window: *mut c_void, buffer: *const c_uchar); + fn mfb_update_with_buffer( + window: *mut c_void, + buffer: *const c_uchar, + buf_width: u32, + buf_height: u32, + buf_stride: u32, + ); fn mfb_set_position(window: *mut c_void, x: i32, y: i32); fn mfb_set_key_callback( window: *mut c_void, @@ -200,6 +207,8 @@ extern "C" { #[derive(Default)] #[repr(C)] pub struct SharedData { + pub bg_color: u32, + pub scale_mode: u32, pub width: u32, pub height: u32, pub mouse_x: f32, @@ -214,6 +223,7 @@ pub struct Window { scale_factor: usize, pub shared_data: SharedData, key_handler: KeyHandler, + update_rate: UpdateRate, pub has_set_data: bool, menus: Vec, } @@ -248,7 +258,7 @@ unsafe extern "C" fn char_callback(window: *mut c_void, code_point: u32) { unsafe impl raw_window_handle::HasRawWindowHandle for Window { fn raw_window_handle(&self) -> raw_window_handle::RawWindowHandle { let handle = raw_window_handle::macos::MacOSHandle { - ns_window: self.window_handle, + ns_window: self.window_handle as *mut _, ns_view: std::ptr::null_mut(), ..raw_window_handle::macos::MacOSHandle::empty() }; @@ -284,11 +294,14 @@ impl Window { window_handle: handle, scale_factor: scale_factor, shared_data: SharedData { + bg_color: 0, + scale_mode: opts.scale_mode as u32, width: width as u32 * scale_factor as u32, height: height as u32 * scale_factor as u32, ..SharedData::default() }, key_handler: KeyHandler::new(), + update_rate: UpdateRate::new(), has_set_data: false, menus: Vec::new(), }) @@ -303,6 +316,16 @@ impl Window { } } + #[inline] + pub fn set_rate(&mut self, rate: Option) { + self.update_rate.set_rate(rate); + } + + #[inline] + pub fn update_rate(&mut self) { + self.update_rate.update(); + } + #[inline] pub fn get_window_handle(&self) -> *mut raw::c_void { self.window_handle as *mut raw::c_void @@ -313,21 +336,30 @@ impl Window { mfb_set_mouse_data(self.window_handle, &mut self.shared_data); } - pub fn update_with_buffer(&mut self, buffer: &[u32]) -> Result<()> { + #[inline] + pub fn set_background_color(&mut self, color: u32) { + self.shared_data.bg_color = color; + } + + pub fn update_with_buffer_stride( + &mut self, + buffer: &[u32], + buf_width: usize, + buf_height: usize, + buf_stride: usize, + ) -> Result<()> { self.key_handler.update(); - let check_res = buffer_helper::check_buffer_size( - self.shared_data.width as usize, - self.shared_data.height as usize, - self.scale_factor as usize, - buffer, - ); - if check_res.is_err() { - return check_res; - } + buffer_helper::check_buffer_size(buf_width, buf_height, buf_stride, buffer)?; unsafe { - mfb_update_with_buffer(self.window_handle, buffer.as_ptr() as *const u8); + mfb_update_with_buffer( + self.window_handle, + buffer.as_ptr() as *const u8, + buf_width as u32, + buf_height as u32, + buf_stride as u32, + ); Self::set_mouse_data(self); mfb_set_key_callback( self.window_handle, @@ -459,7 +491,7 @@ impl Window { } #[inline] - pub fn set_input_callback(&mut self, callback: Box) { + pub fn set_input_callback(&mut self, callback: Box) { self.key_handler.set_input_callback(callback) } diff --git a/src/os/unix/mod.rs b/src/os/unix/mod.rs index ad14d4a..13ac378 100644 --- a/src/os/unix/mod.rs +++ b/src/os/unix/mod.rs @@ -9,14 +9,15 @@ #![allow(non_upper_case_globals)] extern crate cast; -extern crate x11_dl; extern crate raw_window_handle; +extern crate x11_dl; use self::x11_dl::keysym::*; use self::x11_dl::xcursor; use self::x11_dl::xlib; use key_handler::KeyHandler; -use {InputCallback, Key, KeyRepeat, MouseButton, MouseMode, Scale, WindowOptions}; +use rate::UpdateRate; +use {InputCallback, Key, KeyRepeat, MouseButton, MouseMode, Scale, ScaleMode, WindowOptions}; use error::Error; use Result; @@ -35,6 +36,54 @@ use mouse_handler; const Button6: c_uint = xlib::Button5 + 1; const Button7: c_uint = xlib::Button5 + 2; +// We have these in C so we can always have optimize on (-O3) so they +// run fast in debug build as well. These functions should be seen as +// "system" functions that just doesn't exist in X11 +extern "C" { + fn Image_upper_left( + target: *mut u32, + source: *const u32, + source_w: u32, + source_h: u32, + source_stride: u32, + dest_width: u32, + dest_height: u32, + bg_color: u32, + ); + + fn Image_center( + target: *mut u32, + source: *const u32, + source_w: u32, + source_h: u32, + source_stride: u32, + dest_width: u32, + dest_height: u32, + bg_color: u32, + ); + + fn Image_resize_linear_aspect_fill_c( + target: *mut u32, + source: *const u32, + source_w: u32, + source_h: u32, + source_stride: u32, + dest_width: u32, + dest_height: u32, + bg_color: u32, + ); + + fn Image_resize_linear_c( + target: *mut u32, + source: *const u32, + source_w: u32, + source_h: u32, + source_stride: u32, + dest_width: u32, + dest_height: u32, + ); +} + mod key_mapping; struct DisplayInfo { @@ -228,6 +277,8 @@ pub struct Window { height: u32, // scale: i32, + bg_color: u32, + scale_mode: ScaleMode, mouse_x: f32, mouse_y: f32, @@ -239,6 +290,7 @@ pub struct Window { should_close: bool, // received delete window message from X server key_handler: KeyHandler, + update_rate: UpdateRate, menu_counter: MenuHandle, menus: Vec, } @@ -372,10 +424,13 @@ impl Window { mouse_y: 0.0, scroll_x: 0.0, scroll_y: 0.0, + bg_color: 0, + scale_mode: opts.scale_mode, buttons: [0, 0, 0], prev_cursor: CursorStyle::Arrow, should_close: false, key_handler: KeyHandler::new(), + update_rate: UpdateRate::new(), menu_counter: MenuHandle(0), menus: Vec::new(), }) @@ -431,15 +486,16 @@ impl Window { }; } - pub fn update_with_buffer(&mut self, buffer: &[u32]) -> Result<()> { - buffer_helper::check_buffer_size( - self.width as usize, - self.height as usize, - self.scale as usize, - buffer, - )?; + pub fn update_with_buffer_stride( + &mut self, + buffer: &[u32], + buf_width: usize, + buf_height: usize, + buf_stride: usize, + ) -> Result<()> { + buffer_helper::check_buffer_size(buf_width, buf_height, buf_stride, buffer)?; - unsafe { self.raw_blit_buffer(buffer) }; + unsafe { self.raw_blit_buffer(buffer, buf_width, buf_height, buf_stride) }; self.update(); @@ -464,6 +520,11 @@ impl Window { self.handle as *mut raw::c_void } + #[inline] + pub fn set_background_color(&mut self, bg_color: u32) { + self.bg_color = bg_color; + } + #[inline] pub fn set_position(&mut self, x: isize, y: isize) { unsafe { @@ -523,6 +584,16 @@ impl Window { } } + #[inline] + pub fn set_rate(&mut self, rate: Option) { + self.update_rate.set_rate(rate); + } + + #[inline] + pub fn update_rate(&mut self) { + self.update_rate.update(); + } + #[inline] pub fn get_keys(&self) -> Option> { self.key_handler.get_keys() @@ -639,37 +710,63 @@ impl Window { //////////////////////////////////// - unsafe fn raw_blit_buffer(&mut self, buffer: &[u32]) { - match self.scale { - 1 => { - // input buffer may be larger than necessary, so get a slice of correct size - let src_buf = &buffer[0..self.draw_buffer.len()]; - - self.draw_buffer[..].copy_from_slice(src_buf); + unsafe fn raw_blit_buffer( + &mut self, + buffer: &[u32], + buf_width: usize, + buf_height: usize, + buf_stride: usize, + ) { + match self.scale_mode { + ScaleMode::Stretch => { + Image_resize_linear_c( + self.draw_buffer.as_mut_ptr(), + buffer.as_ptr(), + buf_width as u32, + buf_height as u32, + buf_stride as u32, + self.width as u32, + self.height as u32, + ); } - 2 => { - self.scale_2x(buffer); + ScaleMode::AspectRatioStretch => { + Image_resize_linear_aspect_fill_c( + self.draw_buffer.as_mut_ptr(), + buffer.as_ptr(), + buf_width as u32, + buf_height as u32, + buf_stride as u32, + self.width as u32, + self.height as u32, + self.bg_color, + ); } - 4 => { - self.scale_4x(buffer); + ScaleMode::Center => { + Image_center( + self.draw_buffer.as_mut_ptr(), + buffer.as_ptr(), + buf_width as u32, + buf_height as u32, + buf_stride as u32, + self.width as u32, + self.height as u32, + self.bg_color, + ); } - 8 => { - self.scale_8x(buffer); - } - - 16 => { - self.scale_16x(buffer); - } - - 32 => { - self.scale_32x(buffer); - } - - _ => { - panic!("bad scale for raw_blit_buffer()"); + ScaleMode::UpperLeft => { + Image_upper_left( + self.draw_buffer.as_mut_ptr(), + buffer.as_ptr(), + buf_width as u32, + buf_height as u32, + buf_stride as u32, + self.width as u32, + self.height as u32, + self.bg_color, + ); } } @@ -1002,35 +1099,6 @@ impl Window { } } -// macro_rules inside impl {} blocks currently not supported -// https://github.com/rust-lang/rust/issues/37205 -macro_rules! gen_scale_x( - ($($fn_name:ident, $x:expr),+$(,)?) => ( - impl Window { - $(unsafe fn $fn_name(&mut self, buffer : &[u32]) { - let w = self.width as usize; - - let bw = (self.width as usize) / $x; - let bh = (self.height as usize) / $x; - - for y in 0..bh { - let src = &buffer[y * bw..y * bw + bw]; - - for dy in 0..$x { - let dest = &mut self.draw_buffer[(y * $x + dy) * w..(y * $x + dy) * w + w]; - - for x in 0..bw { - dest[x * $x .. x * $x + $x].copy_from_slice(&[src[x]; $x]); - } - } - } - })+ - } - ) -); - -gen_scale_x!(scale_2x, 2, scale_4x, 4, scale_8x, 8, scale_16x, 16, scale_32x, 32,); - impl Drop for Window { fn drop(&mut self) { unsafe { diff --git a/src/os/windows/mod.rs b/src/os/windows/mod.rs index 1737044..facc8ec 100644 --- a/src/os/windows/mod.rs +++ b/src/os/windows/mod.rs @@ -8,9 +8,10 @@ const INVALID_ACCEL: usize = 0xffffffff; use error::Error; use key_handler::KeyHandler; +use rate::UpdateRate; use Result; use {CursorStyle, MenuHandle, MenuItem, MenuItemHandle}; -use {InputCallback, Key, KeyRepeat, MouseButton, MouseMode, Scale, WindowOptions}; +use {InputCallback, Key, KeyRepeat, MouseButton, MouseMode, Scale, ScaleMode, WindowOptions}; use {MENU_KEY_ALT, MENU_KEY_CTRL, MENU_KEY_SHIFT, MENU_KEY_WIN}; use buffer_helper; @@ -174,8 +175,7 @@ unsafe extern "system" fn wnd_proc( wparam: minwindef::WPARAM, lparam: minwindef::LPARAM, ) -> minwindef::LRESULT { - // This make sure we actually don't do anything before the user data has been setup for the - // window + // This make sure we actually don't do anything before the user data has been setup for the window let user_data = get_window_long(window); @@ -186,21 +186,18 @@ unsafe extern "system" fn wnd_proc( let mut wnd: &mut Window = mem::transmute(user_data); match msg { - /* - winuser::WM_MOUSEMOVE => { - let mouse_coords = lparam as u32; - let scale = user_data.scale as f32; - user_data.mouse.local_x = (((mouse_coords >> 16) & 0xffff) as f32) / scale; - user_data.mouse.local_y = ((mouse_coords & 0xffff) as f32) / scale; - - return 0; - } - */ winuser::WM_MOUSEWHEEL => { let scroll = ((((wparam as u32) >> 16) & 0xffff) as i16) as f32 * 0.1; wnd.mouse.scroll = scroll; } + winuser::WM_SETCURSOR => { + if winapi::shared::minwindef::LOWORD(lparam as u32) == winuser::HTCLIENT as u16 { + winuser::SetCursor(wnd.cursors[wnd.cursor as usize]); + return 1; + } + } + winuser::WM_KEYDOWN => { update_key_state(wnd, (lparam as u32) >> 16, true); return 0; @@ -241,6 +238,13 @@ unsafe extern "system" fn wnd_proc( } } + /* + winuser::WM_ERASEBKGND => { + let dc = wnd.dc.unwrap(); + wingdi::SelectObject(dc, wnd.clear_brush as *mut std::ffi::c_void); + wingdi::Rectangle(dc, 0, 0, wnd.width, wnd.height); + } + */ winuser::WM_SIZE => { let width = (lparam as u32) & 0xffff; let height = ((lparam as u32) >> 16) & 0xffff; @@ -250,7 +254,7 @@ unsafe extern "system" fn wnd_proc( winuser::WM_PAINT => { // if we have nothing to draw here we return the default function - if wnd.buffer.len() == 0 { + if wnd.draw_params.buffer == std::ptr::null() { return winuser::DefWindowProcW(window, msg, wparam, lparam); } @@ -260,23 +264,127 @@ unsafe extern "system" fn wnd_proc( bitmap_info.bmi_header.biPlanes = 1; bitmap_info.bmi_header.biBitCount = 32; bitmap_info.bmi_header.biCompression = wingdi::BI_BITFIELDS; - bitmap_info.bmi_header.biWidth = wnd.width; - bitmap_info.bmi_header.biHeight = -wnd.height; + bitmap_info.bmi_header.biWidth = wnd.draw_params.buffer_width as i32; + bitmap_info.bmi_header.biHeight = -(wnd.draw_params.buffer_height as i32); bitmap_info.bmi_colors[0].rgbRed = 0xff; bitmap_info.bmi_colors[1].rgbGreen = 0xff; bitmap_info.bmi_colors[2].rgbBlue = 0xff; + let buffer_width = wnd.draw_params.buffer_width as i32; + let buffer_height = wnd.draw_params.buffer_height as i32; + let window_width = wnd.width as i32; + let window_height = wnd.height as i32; + + let mut new_height = window_height; + let mut new_width = window_width; + let mut x_offset = 0; + let mut y_offset = 0; + + let dc = wnd.dc.unwrap(); + wingdi::SelectObject(dc, wnd.clear_brush as *mut std::ffi::c_void); + + match wnd.draw_params.scale_mode { + ScaleMode::AspectRatioStretch => { + let buffer_aspect = buffer_width as f32 / buffer_height as f32; + let win_aspect = window_width as f32 / window_height as f32; + + if buffer_aspect > win_aspect { + new_height = (window_width as f32 / buffer_aspect) as i32; + y_offset = (new_height - window_height) / -2; + + if y_offset != 0 { + wingdi::Rectangle(dc, 0, 0, window_width, y_offset); + wingdi::Rectangle( + dc, + 0, + y_offset + new_height, + window_width, + window_height, + ); + } + } else { + new_width = (window_height as f32 * buffer_aspect) as i32; + x_offset = (new_width - window_width) / -2; + + if x_offset != 0 { + wingdi::Rectangle(dc, 0, 0, x_offset, window_height); + wingdi::Rectangle( + dc, + x_offset + new_width, + 0, + window_width, + window_height, + ); + } + } + } + + ScaleMode::Center => { + new_width = buffer_width; + new_height = buffer_height; + + if buffer_height > window_height { + y_offset = -(buffer_height - window_height) / 2; + } else { + y_offset = (window_height - buffer_height) / 2; + } + + if buffer_width > window_width { + x_offset = -(buffer_width - window_width) / 2; + } else { + x_offset = (window_width - buffer_width) / 2; + } + + if y_offset > 0 { + wingdi::Rectangle(dc, 0, 0, window_width, y_offset); + wingdi::Rectangle( + dc, + 0, + y_offset + new_height, + window_width, + window_height, + ); + } + + if x_offset > 0 { + wingdi::Rectangle(dc, 0, y_offset, x_offset, buffer_height + y_offset); + wingdi::Rectangle( + dc, + x_offset + buffer_width, + y_offset, + window_width, + buffer_height + y_offset, + ); + } + } + + ScaleMode::UpperLeft => { + new_width = buffer_width; + new_height = buffer_height; + + if buffer_width < window_width { + wingdi::Rectangle(dc, buffer_width, 0, window_width, window_height); + } + + if buffer_height < window_height { + wingdi::Rectangle(dc, 0, buffer_height, window_width, window_height); + } + } + + _ => (), + } + wingdi::StretchDIBits( - wnd.dc.unwrap(), + dc, + x_offset, + y_offset, + new_width, + new_height, 0, 0, - wnd.width * wnd.scale_factor, - wnd.height * wnd.scale_factor, - 0, - 0, - wnd.width, - wnd.height, - mem::transmute(wnd.buffer.as_ptr()), + wnd.draw_params.buffer_width as i32, + wnd.draw_params.buffer_height as i32, + mem::transmute(wnd.draw_params.buffer), mem::transmute(&bitmap_info), wingdi::DIB_RGB_COLORS, wingdi::SRCCOPY, @@ -293,10 +401,6 @@ unsafe extern "system" fn wnd_proc( return winuser::DefWindowProcW(window, msg, wparam, lparam); } -pub enum MinifbError { - UnableToCreateWindow, -} - fn to_wstring(str: &str) -> Vec { let v: Vec = OsStr::new(str) .encode_wide() @@ -313,29 +417,41 @@ struct MouseData { pub scroll: f32, } -/* -struct MenuStore { - name: String, - menu: HMENU, - accel_items: Vec, +struct DrawParameters { + buffer: *const u32, + buffer_width: u32, + buffer_height: u32, + scale_mode: ScaleMode, +} + +impl Default for DrawParameters { + fn default() -> Self { + DrawParameters { + buffer: std::ptr::null(), + buffer_width: 0, + buffer_height: 0, + scale_mode: ScaleMode::Stretch, + } + } } -*/ pub struct Window { mouse: MouseData, dc: Option, window: Option, - buffer: Vec, + clear_brush: windef::HBRUSH, is_open: bool, scale_factor: i32, width: i32, height: i32, menus: Vec

, key_handler: KeyHandler, + update_rate: UpdateRate, accel_table: windef::HACCEL, accel_key: usize, - prev_cursor: CursorStyle, + cursor: CursorStyle, cursors: [windef::HCURSOR; 8], + draw_params: DrawParameters, } unsafe impl raw_window_handle::HasRawWindowHandle for Window { @@ -366,7 +482,7 @@ impl Window { cbWndExtra: 0, hInstance: libloaderapi::GetModuleHandleA(ptr::null()), hIcon: ptr::null_mut(), - hCursor: ptr::null_mut(), + hCursor: winuser::LoadCursorW(ptr::null_mut(), winuser::IDC_ARROW), hbrBackground: ptr::null_mut(), lpszMenuName: ptr::null(), lpszClassName: class_name.as_ptr(), @@ -463,16 +579,17 @@ impl Window { mouse: MouseData::default(), dc: Some(winuser::GetDC(handle.unwrap())), window: Some(handle.unwrap()), - buffer: Vec::new(), key_handler: KeyHandler::new(), + update_rate: UpdateRate::new(), is_open: true, scale_factor: scale_factor, - width: width as i32, - height: height as i32, + width: (width * scale_factor as usize) as i32, + height: (height * scale_factor as usize) as i32, menus: Vec::new(), accel_table: ptr::null_mut(), accel_key: INVALID_ACCEL, - prev_cursor: CursorStyle::Arrow, + cursor: CursorStyle::Arrow, + clear_brush: wingdi::CreateSolidBrush(0), cursors: [ winuser::LoadCursorW(ptr::null_mut(), winuser::IDC_ARROW), winuser::LoadCursorW(ptr::null_mut(), winuser::IDC_IBEAM), @@ -483,11 +600,12 @@ impl Window { winuser::LoadCursorW(ptr::null_mut(), winuser::IDC_SIZENS), winuser::LoadCursorW(ptr::null_mut(), winuser::IDC_SIZEALL), ], + draw_params: DrawParameters { + scale_mode: opts.scale_mode, + ..DrawParameters::default() + }, }; - // Set arrow as default cursor - winuser::SetCursor(window.cursors[0]); - Ok(window) } } @@ -561,15 +679,17 @@ impl Window { #[inline] pub fn set_cursor_style(&mut self, cursor: CursorStyle) { - unsafe { - if self.prev_cursor == cursor { - return; - } + self.cursor = cursor; + } - winuser::SetCursor(self.cursors[cursor as usize]); + #[inline] + pub fn set_rate(&mut self, rate: Option) { + self.update_rate.set_rate(rate); + } - self.prev_cursor = cursor; - } + #[inline] + pub fn update_rate(&mut self) { + self.update_rate.update(); } #[inline] @@ -588,7 +708,7 @@ impl Window { } #[inline] - pub fn set_input_callback(&mut self, callback: Box) { + pub fn set_input_callback(&mut self, callback: Box) { self.key_handler.set_input_callback(callback) } @@ -619,7 +739,8 @@ impl Window { fn generic_update(&mut self, window: windef::HWND) { unsafe { - let mut point: windef::POINT = mem::uninitialized(); + let mut point: windef::POINT = mem::zeroed(); + winuser::GetCursorPos(&mut point); winuser::ScreenToClient(window, &mut point); @@ -635,7 +756,7 @@ impl Window { fn message_loop(&self, window: windef::HWND) { unsafe { - let mut msg = mem::uninitialized(); + let mut msg = mem::zeroed(); while winuser::PeekMessageW(&mut msg, window, 0, 0, winuser::PM_REMOVE) != 0 { // Make this code a bit nicer @@ -657,22 +778,35 @@ impl Window { } } - pub fn update_with_buffer(&mut self, buffer: &[u32]) -> Result<()> { + pub fn set_background_color(&mut self, color: u32) { + unsafe { + wingdi::DeleteObject(self.clear_brush as *mut std::ffi::c_void); + let r = (color >> 16) & 0xff; + let g = (color >> 8) & 0xff; + let b = (color >> 0) & 0xff; + self.clear_brush = wingdi::CreateSolidBrush((b << 16) | (g << 8) | r); + } + } + + pub fn update_with_buffer_stride( + &mut self, + buffer: &[u32], + buf_width: usize, + buf_height: usize, + buf_stride: usize, + ) -> Result<()> { let window = self.window.unwrap(); Self::generic_update(self, window); - let check_res = buffer_helper::check_buffer_size( - self.width as usize, - self.height as usize, - self.scale_factor as usize, - buffer, - ); - if check_res.is_err() { - return check_res; - } + buffer_helper::check_buffer_size(buf_width, buf_height, buf_stride, buffer)?; + + self.draw_params.buffer = buffer.as_ptr(); + self.draw_params.buffer_width = buf_width as u32; + self.draw_params.buffer_height = buf_height as u32; + // stride currently not supported + //self.draw_params.buffer_stride = buf_stride as u32; - self.buffer = buffer.to_vec(); unsafe { winuser::InvalidateRect(window, ptr::null_mut(), minwindef::TRUE); } @@ -732,7 +866,7 @@ impl Window { // the current client size is preserved and still show all pixels // unsafe fn adjust_window_size_for_menu(handle: windef::HWND) { - let mut rect: windef::RECT = mem::uninitialized(); + let mut rect: windef::RECT = mem::zeroed(); let menu_height = winuser::GetSystemMetrics(winuser::SM_CYMENU); diff --git a/src/rate.rs b/src/rate.rs new file mode 100644 index 0000000..bfd3f9b --- /dev/null +++ b/src/rate.rs @@ -0,0 +1,41 @@ +extern crate time; + +use std::time::Duration; + +pub struct UpdateRate { + target_rate: Option, + prev_time: f64, +} + +impl UpdateRate { + pub fn new() -> UpdateRate { + UpdateRate { + // Default limit to 4 ms + target_rate: Some(Duration::from_millis(4)), + prev_time: 0.0, + } + } + + #[inline] + pub fn set_rate(&mut self, rate: Option) { + self.target_rate = rate + } + + pub fn update(&mut self) { + if let Some(rate) = self.target_rate { + let target_rate = rate.as_secs_f64(); + let current_time = time::precise_time_s(); + let delta = current_time - self.prev_time; + + if delta < target_rate { + let sleep_time = target_rate - delta; + if sleep_time > 0.0 { + //println!("sleeping {} ms", sleep_time * 1000.0); + std::thread::sleep(Duration::from_secs_f64(sleep_time)); + } + } + + self.prev_time = time::precise_time_s(); + } + } +}