Page 2 of 2

Re: New CX16 support for Ozmoo 14

Posted: Fri Feb 21, 2025 7:11 am
by fredrik
RAM contents are generally preserved through a reset, and Ozmoo checks when it starts, if the game file has already been read into RAM. However, when resetting the computer, Basic writes a special value at the end of Basic RAM, so one or two bytes are changed. This turned out to have unwanted, albeit sometimes hilarious effects in some games.

Re: New CX16 support for Ozmoo 14

Posted: Sat Feb 22, 2025 11:14 pm
by cosmicr
fredrik wrote: Sat Jul 06, 2024 4:21 pm Ozmoo copies the entire state of the virtual machine to Video RAM every turn,
This is an interesting approach, wondering why not banked ram? Faster to use VRAM because of the auto increment?

Re: New CX16 support for Ozmoo 14

Posted: Sun Feb 23, 2025 4:38 pm
by fredrik
cosmicr wrote: Sat Feb 22, 2025 11:14 pm
fredrik wrote: Sat Jul 06, 2024 4:21 pm Ozmoo copies the entire state of the virtual machine to Video RAM every turn,
This is an interesting approach, wondering why not banked ram? Faster to use VRAM because of the auto increment?
Two reasons:

1: For a maximum size Z-code game, we're already using all of banked RAM.

2: Writing a block of up to 64 KB to VRAM is both simple and fast. Auto-increment, and no bank calculations needed. Since this data has to be written every turn, it's important that it's as fast as possible. Part of the data we read may still be in banked memory though, but at least we don't need to switch the bank back and forth for every byte copied.