ROMv6!

Using, learning, programming and modding the Gigatron and anything related.
Forum rules
Be nice. No drama.
lb3361
Posts: 360
Joined: 17 Feb 2021, 23:07

ROMv6!

Post by lb3361 »

In order to give the opportunity to test the proposed ROMv6, I have setup a staging repository at https://github.com/lb3361/gigatron-rom. Keep in mind that this is not the real stuff, just a place to make sure everything works and fix the bugs. Feel free to test and find what needs to be changed. Problems will be fixed by rewriting the git history in this staging repository, in order to have something clean to submit as a pull request once deemed solid enough.
proposedROMv6.rom
(128 KiB) Downloaded 108 times
proposedDEVROM.rom
(128 KiB) Downloaded 80 times
v6_mainmenu.png
v6_mainmenu.png (6.09 KiB) Viewed 2183 times
The proposed ROMv6.rom file is based on the latest DEVROM and includes the following changes compared to ROMv5a
v6_invaders.png
v6_invaders.png (4.95 KiB) Viewed 2183 times
v6_credits.png
v6_credits.png (4.79 KiB) Viewed 2183 times
I wanted to include the SDCard browser but finally decided to provide it in the DEVROM. This new DEVROM contains four improvements that depends on a rather new fast dispatching technology https://forum.gigatron.io/viewtopic.php?t=403 which I consider promising but not ready for a stable ROM.
  • Even faster multiplication and division.
  • A new SYS_Exec that addresses all the points identified by Marcel and more. It supports arbitrary execution addresses, correctly masks the audio channels when one attempts to load code on top of the audio counters, can load code anywhere above the Gigatron essential variables [$00-$2f], and runs two to three times faster.
  • A new SYS_Loader that builds on the SYS_Exec infrastructure. The first native loader was written by at67 for his ROMvX0 because he wanted to be able to directly load an image into the framebuffer. This was not possible with the old loader because it lived there. This ones pushes the concept further. It displays a visual feedback on the screen, but will stop as soon as it detects an attempt to load code or data in the visual feedback area.
  • Work in progress about the integration of the loader and the SDCard browser. This idea is to have the loader recognize the presence of the Pluggy Reloaded and propose to run the SDCard browser, as shown below. Alas this may not work yet. As a stop-gap measure, users of the dev rom can press 'B' in the main menu to immediately start the SDCard browser.
So the idea is that you can have the SDCard browser, but you have to use the DEVROM and by the same token test all this new stuff. All this comes at the cost of a few more MIDI scores in the Tetronis application.
devrom_loader_browser.png
devrom_loader_browser.png (3.85 KiB) Viewed 2183 times
Please take the time to test all this.
veekoo
Posts: 121
Joined: 07 Jun 2021, 07:07

Re: ROMv6!

Post by veekoo »

Happy to test stuff. Couple of minor things with ROMv6.

1. Happend once with Snake and rebooting by press of key caused program halting with boot screen and some garbage. Very often I have seen this garbage pattern when program is wrong rom version (playing years with gigatron).

2. My own programs which I recomplied for this rom. WIth lottoprogram what uses "tiny" console, goes out of screen sync loading the program. Screen syncs and program starts and runs fine after that.
lb3361
Posts: 360
Joined: 17 Feb 2021, 23:07

Re: ROMv6!

Post by lb3361 »

Thanks for the feedback.
veekoo wrote: 10 Dec 2022, 18:44 1. Happend once with Snake and rebooting by press of key caused program halting with boot screen and some garbage. Very often I have seen this garbage pattern when program is wrong rom version (playing years with gigatron).
I was not able to reproduce. I tried to run Snake (it runs fine and reboot ran fine). I must not be doing the same as you. Can you tell me more, as precisely as possible? Are you using the proposed devrom or the proposed romv6?
veekoo wrote: 10 Dec 2022, 18:44 2. My own programs which I recomplied for this rom. WIth lottoprogram what uses "tiny" console, goes out of screen sync loading the program. Screen syncs and program starts and runs fine after that.
Can you share the gt1 file? I was unable to reproduce the problem. Did you compile with the glcc version found in Compilers/glcc (which supports -rom=v6)? Note that compiling for romv4 or romv5a should produce gt1 files that work on ROMv6 too. On the other hand, programs compiled for a devrom runs only on a devrom (and may crash if the devroms are not compatible). Are you using the proposed devrom or the proposed romv6?
at67
Site Admin
Posts: 647
Joined: 14 May 2018, 08:29

Re: ROMv6!

Post by at67 »

If you are including the SDCARD Browser that I wrote, you really should allow me to do a pull request to this proposed new ROM. Obviously as I am the author of it, I should also be credited in the main repo for it.

P.S. If you are talking about your own SDCARD Browser, then disregard this message.

P.P.S. You really should get permission before hand for everything you want to include/modify in a ROM that you have not authored, (whether this is obvious to you or not, is not strictly apparent from this thread and yes I have given permission for some of my stuff that you are including, but not to modifying Tetronis. Tetronis has been part of the ROM eco-system for a long time and is starting to show it's age, I would recommend you replace it with one of the newer games, e.g. VideoPoker).
lb3361
Posts: 360
Joined: 17 Feb 2021, 23:07

Re: ROMv6!

Post by lb3361 »

at67 wrote: 10 Dec 2022, 21:09 If you are including the SDCARD Browser that I wrote, you really should allow me to do a pull request to this proposed new ROM.
Obviously as I am the author of it, I should also be credited in the main repo for it.
Pull requests: feel free to send pull requests (I believe it works). Anyway the plan was to do the opposite, eventually turn all this into a pull request for the gigatron-rom site. This would be the actual release. This means you'll have the last word on what's going into this work anyway. This was the intention all along!

For the record, there already are due credits for the browser in the devrom credits app (the browser is in the devrom, not romv6). In fact I specifically rewrote the Credits application to make it easier to add the appropriate credits. See also the README file in https://github.com/lb3361/gigatron-rom/ ... pps/SDCard. For the record also, the gigatron-rom repository comes under a global BSD license and your Contrib directory also contains a BSD license notice. That said, making sure all authors agree is a good thing. This is why I described my Tetronis surgery and wrote "I hope at67 will not object". I thought I had your agreement for the SDCard browser and Invaders because it had been discussed in the previous thread.
devrom_credits.png
devrom_credits.png (8.14 KiB) Viewed 2132 times
Practically:
  • Pluggy reloaded browser and its integration into the loader: Your call. Do you approve or not?
  • Invader: Also your call.
  • Tetronis: Also your call. Just tell me what to do!
  • Videopoker: We should contact the author. Also this is a big Gt1. Not enough space without removing something else.
at67
Site Admin
Posts: 647
Joined: 14 May 2018, 08:29

Re: ROMv6!

Post by at67 »

lb3361 wrote: 11 Dec 2022, 01:59 Pull requests: feel free to send pull requests (I believe it works). Anyway the plan was to do the opposite, eventually turn all this into a pull request for the gigatron-rom site. This would be the actual release. This means you'll have the last word on what's going into this work anyway. This was the intention all along!
You are kind of missing the point, but honestly I am done trying to explain it.
lb3361 wrote: 11 Dec 2022, 01:59
  • Pluggy reloaded browser and its integration into the loader: Your call. Do you approve or not?
  • Invader: Also your call.
  • Tetronis: Also your call. Just tell me what to do!
  • Videopoker: We should contact the author. Also this is a big Gt1. Not enough space without removing something else.
Do what you like I guess.
lb3361
Posts: 360
Joined: 17 Feb 2021, 23:07

Re: ROMv6!

Post by lb3361 »

at67 wrote: 11 Dec 2022, 06:01 You are kind of missing the point, but honestly I am done trying to explain it.
I was interpreting the BSD license as permission to hack. I realize that this is only legal permission, not moral permission.
at67 wrote: 11 Dec 2022, 06:01 Do what you like I guess.
I would like this project to make a happy at67.
  • Would it be acceptable for you to replace Tetronis by SDCard?
  • What about modifying SDCard to print "Waiting for pluggy reloaded" when no pluggy reloaded is responding?
  • Would it be acceptable for you to be credited with "Invaders & SDCard \n at67"?
In the mean time, in order to avoid confusion, I will revert my staging branch to its original status.
at67
Site Admin
Posts: 647
Joined: 14 May 2018, 08:29

Re: ROMv6!

Post by at67 »

lb3361 wrote: 11 Dec 2022, 11:57 I would like this project to make a happy at67.
Ok, wow, this changes everything, I didn't realise my happiness was such a high priority.

Given the above, I now revert all previous permissions I have given you, this applies to all code I have written, (but not limited to), Native, (ROM), vCPU, gtBASIC, GCL, gtBASIC runtime, applications, games, tests...I think you get the idea.

So that means no SDCARD Browser, Tetronis, Invader, ROM routines lifted from ROMvX0, etc, should find their way into ROMv5, ROMv6, or any ROM's that you work on.

For bonus happiness points, it would be awesome if you gave me permission to remove what little code you contributed to ROMvX0, so that I could have a clean slate while we have two diverging ROM paths. Obviously I don't need your permission to remove your code from my ROM, but I guess respect is something I strive to give and receive.
lb3361
Posts: 360
Joined: 17 Feb 2021, 23:07

Re: ROMv6!

Post by lb3361 »

In principle, I do not need specific permissions other than the BSD license you already gave in your contrib directory. By the same token you do not need permissions from me for what I have already given. What has been given remains given.

In practice, there is no point really. The thing you never got is that my ego does not need to "own a rom." I was happy enough with an educational hobby and the opportunity to contribute little ideas that could be useful additions, with a feeling it is going somewhere. That feeling is gone. So rest assured that I am not going to release a divergent rom anytime soon.

Many thanks to Marcel and Walter for creating a wonderful little machine.
veekoo
Posts: 121
Joined: 07 Jun 2021, 07:07

Re: ROMv6!

Post by veekoo »

veekoo wrote: 10 Dec 2022, 18:44 Happy to test stuff. Couple of minor things with ROMv6.

1. Happend once with Snake and rebooting by press of key caused program halting with boot screen and some garbage. Very often I have seen this garbage pattern when program is wrong rom version (playing years with gigatron).

2. My own programs which I recomplied for this rom. WIth lottoprogram what uses "tiny" console, goes out of screen sync loading the program. Screen syncs and program starts and runs fine after that.
1. Snake reboot issue was only one time. Couldn't verify it.

2. "tiny" console issue was something that shows even in emulators. Like 64K-ROMv5a-Emulator (programs compiled to this format). So it's more like feature than problem.
Post Reply