From my initial testing disabling one extra scan line allows for 100% more vCPU and SYS cycles, (i.e. double the speed as tested by Mandlebrot taking only 10minutes to render instead of 20).
What's the catch?
1: I have only tested this in my emulator so far, but it passes with flying colours with respect to meeting video timing and compatibility with the inbuilt applications and all of the applications I have written so far.
2: You have to modify your ROM if you want to try this on real hardware, (why haven't I done it yet you ask? I'm waiting on some Ebay bits and pieces and I will update this post with my results when they arrive).
How do I modify my ROM? Well if you have an EPROM programmer and know what you are doing, you can try the following, *NOTE* I'm not responsible for anything good or bad that manifests itself as an outcome.
Code: Select all
.ld $01,y ; new $01c2 $1401
sound2a .ld $3f ; old $01c3
sound2b .adda [$03] ; old $01c4
.st [$03] ; old $01c5
.ld [$13] ; old $01c6
.bra [$0c] ; old $01c7
.ld $c0,out ; old $01c8
videoB .ld [$09] ; new $01c9 $0109
.adda $01,x ; new $01ca $9001
.ld [$0a] ; new $01cb $010a
.adda [y,x] ; new $01cc $8d00
.st [$0a] ; new $01cd $c20a
.ld videoC ; new $01ce $00d4
.bra join + 2 ; new $01cf $fcfd
.st [$0c] ; new $01d0 $c20c
.nop ; new $01d1 $0200
.nop ; new $01d2 $0200
.nop ; new $01d3 $0200
Here's a video of it in action in emulation, (this video shows the old videoC disable code, the code I posted above is for disabling videoB, the performance between the two is exactly the same, videoB just looks better).
https://www.youtube.com/watch?v=TVM69DfP9CQ