Welcome, Guest. Please login or register.

Author Topic: Amiga 1000 Kickstart Eproms/Roms  (Read 17759 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show all replies
    • http://www.iki.fi/sintonen/
Re: Amiga 1000 Kickstart Eproms/Roms
« on: December 03, 2007, 07:59:01 AM »
Quote
Is there a way I can test the images to see if they are a valid kickstart?

Merge the files and check the contents, look for "AMIGA ROM Operating System"?
 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show all replies
    • http://www.iki.fi/sintonen/
Re: Amiga 1000 Kickstart Eproms/Roms
« Reply #1 on: December 03, 2007, 08:45:44 AM »
Hmmmm, it looks like KS 1.2 ROM, at least the fe0000 half, but there's something rather strange stuff there. "intuition 33.702 (30 Sep 1986)" clearly suggests KS 1.2, but other stuff doesn't match.

Ah, the new archive is ok. That's KS 1.2 (33.180).

Which reminds me, you should probably take the archive down... :-)
 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show all replies
    • http://www.iki.fi/sintonen/
Re: Amiga 1000 Kickstart Eproms/Roms
« Reply #2 on: December 03, 2007, 12:45:24 PM »
Indeed. The difference between 1 and 2 ROM chip setup is the 16bit vs 32bit wide access to the ROM.

My understanding is that A500/A2000/A600 3.1 ROM should work fine with A1000 too, assuming you can hack it (either 512KB ROM hack, 512KB WOM hack, or 256KB RAM + 256KB WOM + sw hack).
 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show all replies
    • http://www.iki.fi/sintonen/
Re: Amiga 1000 Kickstart Eproms/Roms
« Reply #3 on: December 03, 2007, 03:38:18 PM »
@TjLaZer
Code: [Select]
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv)
{
  if (argc == 4)
  {
    FILE *f1 = fopen(argv[1], &quot;rb&quot;);
    FILE *f2 = fopen(argv[2], &quot;rb&quot;);
    FILE *f3 = fopen(argv[3], &quot;wb&quot;);
    if (f1 && f2 && f3)
    {
      for (;;)
      {
        int a, b;
        a = fgetc(f1);
        b = fgetc(f2);
        if (a == EOF || b == EOF)
        {
          break;
        }
        fputc(a, f3);
        fputc(b, f3);
      }
    }
    return EXIT_SUCCESS;
  }
  fprintf(stderr, &quot;usage %s: infile1 infile2 outfile\n&quot;, argv[0]);
  return EXIT_FAILURE;
}

Code: [Select]

p@abit:~$ gcc -Wall -O2 merge.c -o merge    
p@abit:~$ ./merge "A1000 U5N FC-EVEN.bin" "A1000 U5P FC-ODD.bin" fc.rom
p@abit:~$ ./merge "A1000 U2N FE-EVEN.bin" "A1000 U2P FE-ODD.bin" fe.rom
p@abit:~$ cat fc.rom fe.rom > ks12.rom                                
p@abit:~$ md5sum ks12.rom
85ad74194e8[censored]de1a9443b7a  ks12.rom
p@abit:~$
 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show all replies
    • http://www.iki.fi/sintonen/
Re: Amiga 1000 Kickstart Eproms/Roms
« Reply #4 on: January 06, 2008, 08:31:49 PM »
@amigaksi

Indeed, compressing with LZMA (the best compressor there is pretty much):

116644 ks 1.1 ntsc
116139 ks 1.1 pal
121084 ks 1.2
120795 ks 1.3

The decompressor is very small. In my lzmaLoader I could fit a PPC executable decompressor into 3584 bytes (this includes a lot of support code too, not just the decompressor). m68k decompressor should be even smaller.