more movie format experimentations

This commit is contained in:
minjaesong
2022-04-28 11:10:48 +09:00
parent 806b534f77
commit e7315834ae
7 changed files with 531 additions and 1 deletions

View File

@@ -20,6 +20,12 @@ class DMADelegate(val vm: VM) {
}
}
fun ramToFrame2(from: Int, devnum: Int, offset: Int, length: Int) {
(vm.peripheralTable[devnum].peripheral as? GraphicsAdapter)?.let {
UnsafeHelper.memcpyRaw(null, vm.usermem.ptr + from, null, it.framebuffer2!!.ptr + offset, length.toLong())
}
}
fun ramToFrame(from: Int, to: Int, length: Int) {
for (i in 0..7) {
if (vm.peripheralTable[i].type == VM.PERITYPE_GPU_AND_TERM) {
@@ -29,6 +35,15 @@ class DMADelegate(val vm: VM) {
}
}
fun ramToFrame2(from: Int, to: Int, length: Int) {
for (i in 0..7) {
if (vm.peripheralTable[i].type == VM.PERITYPE_GPU_AND_TERM) {
ramToFrame2(from, i, to, length)
return
}
}
}
fun frameToRam(from: Int, to: Int, devnum: Int, length: Int) {
(vm.peripheralTable[devnum].peripheral as? GraphicsAdapter)?.let {
UnsafeHelper.memcpyRaw(null, it.framebuffer.ptr + from, null, vm.usermem.ptr + to, length.toLong())

View File

@@ -502,7 +502,7 @@ class GraphicsJSR223Delegate(val vm: VM) {
for (k in 0L until len) {
val x = (k % width).toInt()
val y = (k / width).toInt()
val t = bayerKernels[pattern][4 * (y % 4) + (x % 4)]
val t = bayerKernels[pattern % bayerKernels.size][4 * (y % 4) + (x % 4)]
val r = vm.peek(srcPtr + channels * k + 0)!!.toUint().toFloat() / 255f
val g = vm.peek(srcPtr + channels * k + 1)!!.toUint().toFloat() / 255f