English Amiga Board


Go Back   English Amiga Board > Support > support.Other

 
 
Thread Tools
Old 29 December 2022, 18:20   #1
Mikeywikey
Kickstart Hacker
 
Mikeywikey's Avatar
 
Join Date: Apr 2021
Location: Wales
Posts: 80
Kickstart Editor (Windows GUI, DOS/Linux/MacOS CLI)

I've been on and off writing a Amiga Kickstart ROM editor for some time, with various features, basically I wanted something like Remus and other ROM tools, but all in one single download, uses text based definition files, that runs on Windows/Linux/MacOS, because for most people burning ROMs it can be more inconvenient to download it all on to an Amiga (although WinUAE makes that super simple really, if you use Windows).

Anyway, I tried to make it a one-stop shop that can do a bunch of useful things all in one interface.

Split ROMs
Create ROMs; add/delete etc.
Calculate checksums
Save ROMs; with byteswapping/splitting HI+LO/CD32 interleaving/overburning/chopping @512k
For ROMs it doesn't know about you can can analyse for RELOCs, compare etc.

If you want to edit ROMs there's a "patching language" so you can overwrite bytes, search for opcodes etc.

There's a (basic) disassembler, not as good as WinUAE, mainly just 68000, no FPU etc. but it tries to understand libraries

You can generate Skick RTB files from the tool, looks like I can soft boot 2.05/3.1.4/3.2 etc. with the generated files, might be useful for WHDLoad

You can read files from ADFs

Anyway, if there's features you'd like to see, please suggest...

I've tried to put together some guides for things people might want to do (1.3+scsi, 1Mb, Terible Fire ehide etc.)

Obviously, no ROMs are included in the editor!

http://capitoline.twocatsblack.com/

Last edited by Mikeywikey; 02 March 2023 at 18:50. Reason: New website address added
Mikeywikey is offline  
Old 29 December 2022, 18:35   #2
mfilos
Paranoid Amigoid
 
mfilos's Avatar
 
Join Date: Mar 2008
Location: Athens/Greece
Age: 45
Posts: 1,978
Fantastic idea man!!!
Thank you very much for this. Will definitely give it a go and report back! \o/
mfilos is offline  
Old 29 December 2022, 18:49   #3
Mikeywikey
Kickstart Hacker
 
Mikeywikey's Avatar
 
Join Date: Apr 2021
Location: Wales
Posts: 80
Thanks dude! I’ve heard you might know one or two things about editing kickstarts…

Last edited by Mikeywikey; 29 December 2022 at 18:50. Reason: Weird character came out as ?
Mikeywikey is offline  
Old 30 December 2022, 11:57   #4
RoC
Registered User
 
Join Date: May 2011
Location: Italy
Posts: 214
Fantastic! The idea for this is just great and for me quite useful for creating custom roms, like I usually do with Remus

I believe it is just me and have tried too shortly (10 min) but I was expecting to dissect/edit existing roms, changing some of its module and saving it.

The thing is that I am not able to load any rom. When opening from the GUI Object browser and mapping a the Capitoline Hashes folder it seems not to load them.

I am able to create an empty rom with the desired size and layout (juicy you have already foreseen even the CD32 one) but then how I am supposed to put the modules in there?

Again, it is just me not knowing how to use that and doing something wonky, but what would be the right approach? Should we create a new rom and then add/replace the KS modules?

Many thanks for the tool

Last edited by RoC; 30 December 2022 at 12:16.
RoC is offline  
Old 30 December 2022, 18:53   #5
Mikeywikey
Kickstart Hacker
 
Mikeywikey's Avatar
 
Join Date: Apr 2021
Location: Wales
Posts: 80
Quote:
Originally Posted by RoC View Post
Fantastic! The idea for this is just great and for me quite useful for creating custom roms, like I usually do with Remus

I believe it is just me and have tried too shortly (10 min) but I was expecting to dissect/edit existing roms, changing some of its module and saving it.

The thing is that I am not able to load any rom. When opening from the GUI Object browser and mapping a the Capitoline Hashes folder it seems not to load them.

I am able to create an empty rom with the desired size and layout (juicy you have already foreseen even the CD32 one) but then how I am supposed to put the modules in there?

Again, it is just me not knowing how to use that and doing something wonky, but what would be the right approach? Should we create a new rom and then add/replace the KS modules?

Many thanks for the tool
Yea, so first off, obviously no ROMs are included, so copy them into the ROMs directory before you start Capitoline, it only reads the directories when it first starts up - it's clunky I know, I really should make it more dynamic!
Once you have copied your ROMs into the ROM directory, then click on [Select Folder], and choose the directory that contains the Capitoline Hashes/Components/ROMs/Licence Keys, you'll then be able to browse the ROMs folder using the [Object browser] tab.
If you add more ROMs, it's probably best to close and re-open the tool, the reason for this is that it needs to analyse all the files you have, this can take some time if you have loads of ROMs as it does a CRC32 hash to identify all files - so dont put massive files in here, just kickstarts.
I think I'm gonna do a quick YouTube video, as it's not as intuitive as I thought - appreciate the feedback.
Mikeywikey is offline  
Old 30 December 2022, 19:25   #6
jotd
This cat is no more
 
jotd's Avatar
 
Join Date: Dec 2004
Location: FRANCE
Age: 52
Posts: 8,160
Quote:
Originally Posted by Mikeywikey View Post
I've been on and off writing a Amiga
You can generate Skick RTB files from the tool, looks like I can soft boot 2.05/3.1.4/3.2 etc. with the generated files, might be useful for WHDLoad
how do you achieve that with a fixed address ROM file ? you need to compute relocs which means all hidden tables and all.

I'm curious. I asked that question a while back and ended up computing RTB myself for kickstart 1.1, but with a lot of disassembly and heuristics & testing https://retrocomputing.stackexchange...es-rtb-created
jotd is offline  
Old 30 December 2022, 21:39   #7
Mikeywikey
Kickstart Hacker
 
Mikeywikey's Avatar
 
Join Date: Apr 2021
Location: Wales
Posts: 80
Quote:
Originally Posted by jotd View Post
how do you achieve that with a fixed address ROM file ? you need to compute relocs which means all hidden tables and all.

I'm curious. I asked that question a while back and ended up computing RTB myself for kickstart 1.1, but with a lot of disassembly and heuristics & testing https://retrocomputing.stackexchange...es-rtb-created
I basically worked out the relocs for all the modules, the really easy ones (Hyperion ROMs) basically had loadable libraries on the disks for most of the modules, so you’re given them.
If you don’t have a loadable library, the next step is to do a byte compare with a ROM that has the same module, in a different location, the relocs are the only things that change, if you don’t have the same version then you can heuristicslly compare similar modules, finally, disassembling and comparing the code with reloc candidates will work, but it’s tedious.

I *could* have just ripped the Remus dat files, but that feels like cheating, I wrote every line of code, and the challenge was to do it myself. I wrote the ADF code from the ground up and reverse engineered the RTB stuff (which is why I don’t fully understand it).

It’s mainly just a code exercise, full of individual and different challenges, but if people find it useful, cool.
Mikeywikey is offline  
Old 30 December 2022, 22:11   #8
Mikeywikey
Kickstart Hacker
 
Mikeywikey's Avatar
 
Join Date: Apr 2021
Location: Wales
Posts: 80
Quote:
Originally Posted by jotd View Post
how do you achieve that with a fixed address ROM file ? you need to compute relocs which means all hidden tables and all.

I'm curious. I asked that question a while back and ended up computing RTB myself for kickstart 1.1, but with a lot of disassembly and heuristics & testing https://retrocomputing.stackexchange...es-rtb-created
By the way, v1.1 is really hard, so I feel your pain, only two versions exist, they are almost identical and the BCPL relojcs make it so much more difficult, I think I’ve done down to 1.2 mainly because I didn’t see a need, I’ve got some half done, but incomplete.
Mikeywikey is offline  
Old 30 December 2022, 23:54   #9
idrougge
Registered User
 
Join Date: Sep 2007
Location: Stockholm
Posts: 4,332
Quote:
Originally Posted by Mikeywikey View Post
I *could* have just ripped the Remus dat files, but that feels like cheating, I wrote every line of code, and the challenge was to do it myself.
I think it's a greater win for the community if tools share common formats and the effort to generate data files instead of everyone going his own way.
idrougge is offline  
Old 31 December 2022, 01:44   #10
Mikeywikey
Kickstart Hacker
 
Mikeywikey's Avatar
 
Join Date: Apr 2021
Location: Wales
Posts: 80
Quote:
Originally Posted by idrougge View Post
I think it's a greater win for the community if tools share common formats and the effort to generate data files instead of everyone going his own way.
I agree

My files are human readable text files anyone can add or update, skick/remus are closed source unpublished formats... ;p

All joking aside, the point of the tool is to make things easier, can’t do that if you don’t reinvent.
Mikeywikey is offline  
Old 31 December 2022, 09:57   #11
RoC
Registered User
 
Join Date: May 2011
Location: Italy
Posts: 214
Quote:
Originally Posted by Mikeywikey View Post
Yea, so first off, obviously no ROMs are included, so copy them into the ROMs directory before you start Capitoline, it only reads the directories when it first starts up - it's clunky I know, I really should make it more dynamic!
Once you have copied your ROMs into the ROM directory, then click on [Select Folder], and choose the directory that contains the Capitoline Hashes/Components/ROMs/Licence Keys, you'll then be able to browse the ROMs folder using the [Object browser] tab.
If you add more ROMs, it's probably best to close and re-open the tool, the reason for this is that it needs to analyse all the files you have, this can take some time if you have loads of ROMs as it does a CRC32 hash to identify all files - so dont put massive files in here, just kickstarts.
I think I'm gonna do a quick YouTube video, as it's not as intuitive as I thought - appreciate the feedback.
Many thanks for the hint

Now I can see all of the roms (eventually I moved my roms pack into it)

It looks very good, now starting to play with it to
RoC is offline  
Old 31 December 2022, 10:48   #12
Mikeywikey
Kickstart Hacker
 
Mikeywikey's Avatar
 
Join Date: Apr 2021
Location: Wales
Posts: 80
Quote:
Originally Posted by RoC View Post
Many thanks for the hint

Now I can see all of the roms (eventually I moved my roms pack into it)

It looks very good, now starting to play with it to
Awesome cheers, I’ll definitely do a “getting started” guide, so people can get up and running quickly.
Mikeywikey is offline  
Old 31 December 2022, 12:04   #13
alexh
Thalion Webshrine
 
alexh's Avatar
 
Join Date: Jan 2004
Location: Oxford
Posts: 14,330
Thanks for all the hard work. Does it support CDTV extended ROMs? Maybe the recently released v2.35?
alexh is online now  
Old 31 December 2022, 16:34   #14
Mikeywikey
Kickstart Hacker
 
Mikeywikey's Avatar
 
Join Date: Apr 2021
Location: Wales
Posts: 80
Quote:
Originally Posted by alexh View Post
Thanks for all the hard work. Does it support CDTV extended ROMs? Maybe the recently released v2.35?
I added the 2.35 CDTVLand extended ROM definitions, I definitely have 2.30 and 2.7, maybe 2.0 (can’t remember!) but not 1.0 or the flash betas. Don’t think I did FMV either.

Off the top of my head I can’t remember what the difference was between the A570/A690 and CDTV, mainly no floppy boot? I have a CDTV but I’m not an expert (I’m reverse engineering the CD interface to implement as FPGA, but haven’t touched it for a couple of years).
Mikeywikey is offline  
Old 31 December 2022, 23:31   #15
alexh
Thalion Webshrine
 
alexh's Avatar
 
Join Date: Jan 2004
Location: Oxford
Posts: 14,330
A570/A690 differences are down to the two different NVRAM implementations.

If you want any encouragement on the CDTV CDROM interface or FPGA programming just ask. I know a bit about the first one, and almost everything about the 2nd one.
alexh is online now  
Old 31 December 2022, 23:51   #16
Mikeywikey
Kickstart Hacker
 
Mikeywikey's Avatar
 
Join Date: Apr 2021
Location: Wales
Posts: 80
Quote:
Originally Posted by alexh View Post
A570/A690 differences are down to the two different NVRAM implementations.

If you want any encouragement on the CDTV CDROM interface or FPGA programming just ask. I know a bit about the first one, and almost everything about the 2nd one.
Ah, so A690 isn’t just a name change, that makes sense as I couldn’t see why there were three versions of 2.35, cheers.

I’ll keep you in mind when/if I start up the CDTV project again - good to know, I’ve only got as far as using my logic analyser on basic handshakes so far.
Mikeywikey is offline  
Old 18 August 2023, 18:06   #17
ScottC2010
Registered User
 
Join Date: Apr 2017
Location: Leamington Spa / Warwickshire
Posts: 532
Hi
I have run the program with my 3.2.1 ROM I have just bought from Hyperion - in the object browser though the A1200.47.111.rom is just coloured red and when i look at the components binary chucnks and click on 1Mb_Scantable_3.2 is just says 'Unknown, no INI, no default in the right hand screen,
Any ideas what i am doing wrong?
ScottC2010 is offline  
Old 22 August 2023, 20:04   #18
arcam
Registered User
 
Join Date: May 2021
Location: Fay-aux-Loges (France)
Posts: 51
@Mikeywikey Is there a video tutorial that explain how to use this tool ? Thank a lot for your app !
arcam is offline  
Old 05 September 2023, 10:19   #19
Mikeywikey
Kickstart Hacker
 
Mikeywikey's Avatar
 
Join Date: Apr 2021
Location: Wales
Posts: 80
Quote:
Originally Posted by ScottC2010 View Post
Hi
I have run the program with my 3.2.1 ROM I have just bought from Hyperion - in the object browser though the A1200.47.111.rom is just coloured red and when i look at the components binary chucnks and click on 1Mb_Scantable_3.2 is just says 'Unknown, no INI, no default in the right hand screen,
Any ideas what i am doing wrong?
Just saw your post, feel free to PM me (or FB to send me a notification) - as long as you've unzipped everything and have the latest definitions, it will be green in the Windows GUI
Mikeywikey is offline  
Old 05 September 2023, 10:19   #20
Mikeywikey
Kickstart Hacker
 
Mikeywikey's Avatar
 
Join Date: Apr 2021
Location: Wales
Posts: 80
Quote:
Originally Posted by arcam View Post
@Mikeywikey Is there a video tutorial that explain how to use this tool ? Thank a lot for your app !
Started doing one! just been busy.
Mikeywikey is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
vscode-amiga-debug now supports Linux, MacOS Bartman News 38 31 October 2023 10:28
Can macOS or non-UAE Windows PC manage files on an Amiga-formatted USB-thumbdrive? studio460 support.Hardware 5 17 June 2019 10:12
only one database for all systems(Windows, macOS, Linux ...) Dic_Ray support.FS-UAE 2 28 December 2016 20:22
not seeing files in gui but can in CLI Kilack New to Emulation or Amiga scene 4 22 December 2008 16:43
Kumiko GUI - Amiga Workbench 3.1 GUI for Windows milika Amiga scene 31 18 April 2007 19:16

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 01:26.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.10068 seconds with 15 queries