Page 2 of 2

Re: Long term dev plan

Posted: Tue Apr 08, 2025 5:50 pm
by Ian
I don't like the idea of using a zero-sized array for the data block; this is an extension in GNU C but I'm not sure it would necessarily work in Visual C++.
I think it does work, but I don't think it's valid c++. It's part of c99.

We can use data[1] instead, and that is legal c++. This should be fine because the the minimum size that can be written is 1 anyway.

Do you know what the reserved memory address range is? There must be a chunk that is reserved for writing these memory updates. If I can get my head around how these update buffers were working I can fix the frame timing which currently starts off vblank randomly half way through the frame lol.

Re: Long term dev plan

Posted: Sun Apr 13, 2025 11:12 pm
by Ian
Well my rewrite was pretty successful :)

Main loop for the program now runs like this

Code: Select all

    for (int i = 0; i < 384; i++)
    {
        TileGen.DrawLine(i);
        ppc_execute(lineCycles);
    }
My only issue is currently my buffered data I wrote to separate memory locations. Really I think they should live in real3d memory. Just I don't know where and how big these buffers are. It's not a massive issue, but saving/loading won't quite work right unless I add these buffers to the save states .. which means breaking file compatibility again which probably isn't so cool.