-use frame::*;
+use crate::frame::*;
pub fn put_blocks(buf: &mut NAVideoBuffer<u8>, xpos: usize, ypos: usize, blk: &[[i16;64]; 6]) {
let stridey = buf.get_stride(0);
let mut idxv = buf.get_offset(2) + xpos * 8 + ypos * 8 * stridev;
let mut data = buf.get_data_mut();
- let mut framebuf: &mut [u8] = data.as_mut_slice();
+ let framebuf: &mut [u8] = data.as_mut_slice();
for j in 0..8 {
for k in 0..8 {
let mut idxv = buf.get_offset(2) + xpos * 8 + ypos * 8 * stridev;
let mut data = buf.get_data_mut();
- let mut framebuf: &mut [u8] = data.as_mut_slice();
+ let framebuf: &mut [u8] = data.as_mut_slice();
for j in 0..8 {
for k in 0..8 {
}
}
-fn edge_emu(src: &NAVideoBuffer<u8>, xpos: isize, ypos: isize, bw: usize, bh: usize, dst: &mut [u8], dstride: usize, comp: usize) {
+pub fn edge_emu(src: &NAVideoBuffer<u8>, xpos: isize, ypos: isize, bw: usize, bh: usize, dst: &mut [u8], dstride: usize, comp: usize) {
let stride = src.get_stride(comp);
let offs = src.get_offset(comp);
let (w, h) = src.get_dimensions(comp);
ebuf.resize((((pre + post) as usize) + bh) * ebuf_stride, 0);
for comp in 0..3 {
- let dstride = src.get_stride(comp);
+ let dstride = dst.get_stride(comp);
let doff = dst.get_offset(comp);
let mut ddta = dst.get_data_mut();
- let mut dbuf: &mut [u8] = ddta.as_mut_slice();
+ let dbuf: &mut [u8] = ddta.as_mut_slice();
let x = if comp > 0 { dx/2 } else { dx };
let y = if comp > 0 { dy/2 } else { dy };
let sx_ = (if comp > 0 { sx >> 1 } else { sx }) - pre;
let bh_ = if comp > 0 { bh/2 } else { bh };
(interp[mode])(&mut dbuf[doff + x + y * dstride..], dstride, ebuf.as_slice(), ebuf_stride, bw_, bh_);
}
-
} else {
for comp in 0..3 {
let sstride = src.get_stride(comp);
let soff = src.get_offset(comp);
let sdta = src.get_data();
let sbuf: &[u8] = sdta.as_slice();
- let dstride = src.get_stride(comp);
+ let dstride = dst.get_stride(comp);
let doff = dst.get_offset(comp);
let mut ddta = dst.get_data_mut();
- let mut dbuf: &mut [u8] = ddta.as_mut_slice();
+ let dbuf: &mut [u8] = ddta.as_mut_slice();
let x = if comp > 0 { dx/2 } else { dx };
let y = if comp > 0 { dy/2 } else { dy };
let sx_ = ((if comp > 0 { sx >> 1 } else { sx }) - pre) as usize;