+Random Terrain Posted February 12, 2013 Share Posted February 12, 2013 The bB page doesn't seem to be clear on this. Can you only use one of the four options, or can you use more than one? www.randomterrain.com/atari-2600-memories-batari-basic-commands.html#optimization If you can use more than one, is it similar to kernel options where only certain options can be used together? Thanks. Quote Link to comment Share on other sites More sharing options...
Cybearg Posted February 12, 2013 Share Posted February 12, 2013 I assume you can use more than one. I've been using optimization speed and optimization inlinerand with Heartbreak. Maybe one of them isn't doing anything as a result, but I don't get any errors, anyway. Quote Link to comment Share on other sites More sharing options...
+Gemintronic Posted February 12, 2013 Share Posted February 12, 2013 Maybe we should gather some of these intriguing questions in one place then submit the list to batari. The only other way is to have our assembly gurus reverse engineer what Fred already knows. Quote Link to comment Share on other sites More sharing options...
+Random Terrain Posted February 12, 2013 Author Share Posted February 12, 2013 I think batari briefly browses this forum from time to time, so maybe he'll have the answer. Or maybe one of the other guys with big brains can tell by looking at the bB code. Quote Link to comment Share on other sites More sharing options...
RevEng Posted February 12, 2013 Share Posted February 12, 2013 I confirmed by looking at the source code for the bB compiler... the optimizations can be mixed and matched. 2 Quote Link to comment Share on other sites More sharing options...
+Random Terrain Posted February 12, 2013 Author Share Posted February 12, 2013 I confirmed by looking at the source code for the bB compiler... the optimizations can be mixed and matched. Can you tell if any of them are incompatible with each other? And can you tell if they can be on the same line like this: set optimization speed size noinlinedata inlinerand or if they need to be on separate lines like this: set optimization speed set optimization size set optimization noinlinedata set optimization inlinerand Thanks. Quote Link to comment Share on other sites More sharing options...
RevEng Posted February 12, 2013 Share Posted February 12, 2013 None of the settings are incompatible with each other, with the exception of "set optimization none". If you use that it will disable previous optimization lines. You can't put optimizations all on the same line, they need to be separate lines. 1 Quote Link to comment Share on other sites More sharing options...
+Random Terrain Posted February 12, 2013 Author Share Posted February 12, 2013 None of the settings are incompatible with each other, with the exception of "set optimization none". If you use that it will disable previous optimization lines. You can't put optimizations all on the same line, they need to be separate lines. Thanks. I'll update the bB page later today. Quote Link to comment Share on other sites More sharing options...
RevEng Posted February 17, 2013 Share Posted February 17, 2013 I took a look at the optimization description today, and what you have written for "size" isn't accurate. Based on what I see in the bB source code, this is how it works... size May decrease the size of generated code when using the multisprite kernel. bB will attempt to reuse bytes that may otherwise go wasted when it tries to align sprite data. Quote Link to comment Share on other sites More sharing options...
+Random Terrain Posted February 17, 2013 Author Share Posted February 17, 2013 I took a look at the optimization description today, and what you have written for "size" isn't accurate. Based on what I see in the bB source code, this is how it works... size May decrease the size of generated code when using the multisprite kernel. bB will attempt to reuse bytes that may otherwise go wasted when it tries to align sprite data. Weird. That was written by batari. I guess he forgot how it worked when wrote up the description. Thanks. Quote Link to comment Share on other sites More sharing options...
RevEng Posted February 17, 2013 Share Posted February 17, 2013 Maybe his intent was to increase the scope for "size" beyond the multisprite kernel, but that's all it's affecting right now, and it doesn't have anything to with multiplication or division. (unlike "speed") I'm not trying to claim I'm more authoritative on bB than batari, but the source code is pretty clear. Anyone with a rudimentary understanding of C can search statements.c for "optimization" and confirm what I'm saying. Quote Link to comment Share on other sites More sharing options...
+Random Terrain Posted February 17, 2013 Author Share Posted February 17, 2013 Thanks. I just updated it. 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.