• src/conio/scale.c

    From Deuc¨@VERT to Git commit to main/sbbs/master on Friday, May 14, 2021 11:23:13
    https://gitlab.synchro.net/main/sbbs/-/commit/519520da478586166e0cbe5f
    Modified Files:
    src/conio/scale.c
    Log Message:
    Make a generic odd pointy scaler.

    Since we have all odd numbers thanks to the pointy scaler, and we
    have 2x thanks to xBR, we should now be able to build any integer
    scaling from a combination of those two scalers.

    This, of course, assumes you have enough CPU and RAM to actually
    do the scaling you want... powers of two will likely be the worst
    case for scaling.

    Also, do pointy scaling before xBR.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Friday, May 14, 2021 16:11:05
    https://gitlab.synchro.net/main/sbbs/-/commit/27980120d384a8180f69ac22
    Modified Files:
    src/conio/scale.c
    Log Message:
    Include the necessary

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wednesday, May 19, 2021 12:55:05
    https://gitlab.synchro.net/main/sbbs/-/commit/176075498ed8cc04b6eb0581
    Modified Files:
    src/conio/scale.c
    Log Message:
    On scale fail, but both buffers back in the pool

    If do_scale ever failed, it would result in graphics buffers not
    returning to the pool, resulting in them never being reused.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Thursday, May 20, 2021 01:17:03
    https://gitlab.synchro.net/main/sbbs/-/commit/a47c0a08a85fdb9fff8234c5
    Modified Files:
    src/conio/scale.c
    Log Message:
    Declare blend() as inline to eliminate gcc warning

    warning: always_inline function might not be inlinable [-Wattributes]

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Thursday, May 20, 2021 01:28:27
    https://gitlab.synchro.net/main/sbbs/-/commit/0c28f0192b77c5b42e47a33a
    Modified Files:
    src/conio/scale.c
    Log Message:
    Screw it, if the compiler doesn't optimize it, just use more CPU.

    At least the warnings are gone.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Thursday, May 20, 2021 20:34:08
    https://gitlab.synchro.net/main/sbbs/-/commit/e5207b5673336e23e80c0754
    Modified Files:
    src/conio/scale.c
    Log Message:
    Fix error: `stderr' undeclared (first use in this function)

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Sunday, April 30, 2023 23:55:12
    https://gitlab.synchro.net/main/sbbs/-/commit/3d8c103ac68b26d823749c94
    Modified Files:
    src/conio/scale.c
    Log Message:
    Fix off-by-one error and increase precision

    Cleans up artifacts in interpolated values nicely.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Monday, May 01, 2023 09:16:26
    https://gitlab.synchro.net/main/sbbs/-/commit/2d915f2b0149c11b98b68d5d
    Modified Files:
    src/conio/scale.c
    Log Message:
    Scaling optimizations

    Use weight == 0 instead of int == double when deciding to copy pixel
    When interpolating width, do it by column, not row

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Monday, July 03, 2023 22:58:58
    https://gitlab.synchro.net/main/sbbs/-/commit/476f5e8a5f2b11e42c5e19dc
    Modified Files:
    src/conio/scale.c
    Log Message:
    UBSan claims this is undefined behaviour...

    I don't believe them, but I'll fix it anyway.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net