+Karl G Posted June 24, 2020 Share Posted June 24, 2020 The times that I've poked around the std_kernel.asm code, I've noticed a vertical_reflect symbol, and I'm not sure. Maybe it's a half-realized idea? Defining it in code doesn't allow it to compile, since it skips over the kernel entry point. I imagine from its name that it could be something to allow reusing players on the bottom half of the screen where they never switch sides, like for a warlords type of game. I was going to ask @RevEng about this directly, but I figured it would be handy to have this information available for anyone else looking at bB internals in the future. 1 Quote Link to comment Share on other sites More sharing options...
RevEng Posted June 24, 2020 Share Posted June 24, 2020 I can't track down the thread at the moment, but some time ago batari added a symmetrical playfield kernel. Since "std_kernel_vertical_reflect.asm" should be used for that feature, instead of "std_kernel.asm", my best guess is that those conditionals in the standard kernel are harmless proto-feature cruft. 1 1 Quote Link to comment Share on other sites More sharing options...
+Karl G Posted June 24, 2020 Author Share Posted June 24, 2020 Thanks! Wouldn't that be horizontal reflect, though? Anyway, I was wondering about a standard kernel variant that used a static playfield and freed of the associated variables. I'll check it out and see if it fits what I was looking for. 1 Quote Link to comment Share on other sites More sharing options...
Mr SQL Posted June 24, 2020 Share Posted June 24, 2020 The function might have been intended as a vertical reflection for the sprites. I implemented such a function in the SuperCharger BASIC, it complements the hardware based horizontal sprite flip to save additional space. 1 Quote Link to comment Share on other sites More sharing options...
+batari Posted June 24, 2020 Share Posted June 24, 2020 It was intended to allow for a reflected, symmetrical playfield in the standard kernel instead of the asymmetric default playfield. The benefit would be that it'd free up space for variables and save time and space by not having to draw the other half of the playfield. I don't remember much about it myself but if those tags are still in the standard kernel, most likely it was too confusing to create a dual-purpose kernel in one file so two separate kernels were created, and the old labels were never removed from the original. 5 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.