+Karl G Posted August 20, 2018 Share Posted August 20, 2018 I have created a new minikernel inspired by the Player Scores minikernel. This minikernel can display 4 separate single-digit player scores in 4 different colors, all on the same line. To use, you will need to disable the built-in scores with the following definition: const noscore=1 You will include the minikernel in the last bank of your project with the following line: inline 4scores.asm You can then define each player's score and score color in a way similar to the following. Note that the following variables are provided via the minikernel, and do not need to be defined manually: p0scorecolor = $4E p1scorecolor = $8E p2scorecolor = $CE p3scorecolor = $3E p0score = 0 p1score = 0 p2score = 0 p3score = 0 I have also created a small (2K) game that uses this minikernel for a simple 4-player paddles game. Since the standard kernel does not multiplex player objects, it relies upon flicker to display 4 players. How good or bad this looks will depend on your individual setup (the screenshot is somewhat deceptive due to phosphor being turned on in Stella). Anyway, please try it out, and let me know how it works for everyone! 4scores Minikernel version 0.3 updated 8/30/2018: 4scores.asm starcatcher.bas starcatcher.bas.bin 8 Quote Link to comment Share on other sites More sharing options...
+Gemintronic Posted August 20, 2018 Share Posted August 20, 2018 I tried compiling at 4k and 8k (making sure 4scores was in bank 2) just fine. Thank you! bblint tried to object. But, I think that was just bblint being bblint. Stella didn't have a problem running the resulting ROMs. [8/20/2018 7:48:37 PM] bblint found the following errors in starcatcher.bas warning(): Found 1 "for" loops and 0 "next" loop-endings. warning(): Found 0 commands that use end, and 2 "end" commands. 1 Quote Link to comment Share on other sites More sharing options...
RevEng Posted August 21, 2018 Share Posted August 21, 2018 bblint tried to object. But, I think that was just bblint being bblint. Fixed now. There was a bug where tabs weren't being correctly parsed as whitespace. Great job on the 4scores minikernel, Karl! 2 Quote Link to comment Share on other sites More sharing options...
+Karl G Posted August 21, 2018 Author Share Posted August 21, 2018 Uploaded version 0.2, which turns off the reflect bit, if it is on. It looks like this minikernel fits and works in bank 1 for a DPC+ project, but, like the multisprite kernel, it overcycles. I haven't figured out the reason for this yet, though. It seems to be working fine with the standard kernel. 1 Quote Link to comment Share on other sites More sharing options...
+Karl G Posted August 30, 2018 Author Share Posted August 30, 2018 Updated to version 0.3, which hides the HMOVE bar (black line on the left) in the same way that bB and other minikernels do. 2 Quote Link to comment Share on other sites More sharing options...
KevKelley Posted November 21, 2022 Share Posted November 21, 2022 Curious. Does this work with Superchip RAM? I had tried using this in a program and I seem to get this when I compile: Quote --- Unresolved Symbol List p3score 0000 ???? (R ) p2score 0000 ???? (R ) p1score 0000 ???? (R ) p0score 0000 ???? (R ) superchip.h 0000 ???? (R ) p3scorecolor 0000 ???? (R ) p2scorecolor 0000 ???? (R ) p1scorecolor 0000 ???? (R ) p0scorecolor 0000 ???? (R ) I assume that there is something in this that conflicts with superchip? Here is what I was working with to start to see if this was possible. RLGL_2022_11_20.bas Quote Link to comment Share on other sites More sharing options...
+Karl G Posted November 21, 2022 Author Share Posted November 21, 2022 There's no reason you can't use this minikernel and SuperChip RAM. There's two reasons why yours wouldn't compile? 1) You need to use inline instead of include for 4scores.asm where you have it. 2) You can't include two minikernels. When I changed the include to inline and commented out the 6lives_statusbar minikernel, I was able to get it to compile. 1 Quote Link to comment Share on other sites More sharing options...
KevKelley Posted November 21, 2022 Share Posted November 21, 2022 Ahhhh. I didn’t think about the two mini kernels thing! I had wound up getting it to compile but that was before I tried defining the player scores and changed the online/include. So now I have to make a decision on what to do next! Thank you very much. 1 Quote Link to comment Share on other sites More sharing options...
+Gemintronic Posted November 21, 2022 Share Posted November 21, 2022 I have got 4scores and another mini kernel to compile using this technique: https://forums.atariage.com/topic/327038-experiments-in-2-simultaneous-mini-kernels/ Though, I have not run this on real hardware yet. Also, it is highly likely you'll have to modify both mini kernels as they may use the same RAM locations (aux, temp, lives, lifepointer, etc..) Quote Link to comment Share on other sites More sharing options...
+Karl G Posted November 21, 2022 Author Share Posted November 21, 2022 Yeah; it could indeed be hacked to work, but I wouldn't recommend it since it makes for a very big screen, and further limits the number of cycles available to bB. Maybe pfscores would do the trick instead? Edit: if you determine that you need the functionality of both, I'm willing to try making a hybrid minikernel to have both in one. It may require giving up a couple of variables though, since both probably use some of the same memory locations (I'll need to check for sure). 1 Quote Link to comment Share on other sites More sharing options...
Ecernosoft Posted November 21, 2022 Share Posted November 21, 2022 1 hour ago, Gemintronic said: I have got 4scores and another mini kernel to compile using this technique: https://forums.atariage.com/topic/327038-experiments-in-2-simultaneous-mini-kernels/ Though, I have not run this on real hardware yet. Also, it is highly likely you'll have to modify both mini kernels as they may use the same RAM locations (aux, temp, lives, lifepointer, etc..) Nice! What system is that on? Just asking. 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.