{"id":192,"date":"2022-12-30T12:41:17","date_gmt":"2022-12-30T12:41:17","guid":{"rendered":"http:\/\/192.168.1.222\/Capitoline\/?page_id=31"},"modified":"2025-06-22T12:42:34","modified_gmt":"2025-06-22T11:42:34","slug":"structure","status":"publish","type":"page","link":"http:\/\/capitoline.twocatsblack.com\/index.php\/structure\/","title":{"rendered":"ROM Banks"},"content":{"rendered":"\n<p>The Amiga supports several ROM\/Kickstart &#8220;banks&#8221;; The original A1000 bank is a 256k chunk starting at $FC0000, this was used right up until the first kickstart 1.4 (alpha), then there was a move to use 512k kickstarts starting earlier at $F80000 (an extra 256k)<\/p>\n\n\n\n<p>The CDTV was an exception as it uses $F00000 for its extended ROM, these are separate physical ROMs (the CD32 also uses $200000 for the VCD\/FMV\/mpeg CD32 ROM).<\/p>\n\n\n\n<p>This was pretty much the same until the CD32 which has a 1Mb kickstart, or, more correctly an original 512k kickstart at $F80000 and an extended kickstart at $E00000.<\/p>\n\n\n\n<p>The A500+\/A600\/A1200\/CD32 are all (electrically) capable of addressing a further 1Mb of space at $A80000 without any hardware modifications.<\/p>\n\n\n\n<pre class=\"wp-block-code has-secondary-color has-tertiary-background-color has-text-color has-background has-small-font-size\"><code><strong>256k Kickstart\n0xFC0000 - 0xFFFFFF 256k chunk<\/strong><\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code has-secondary-color has-tertiary-background-color has-text-color has-background has-small-font-size\"><code><strong>512k Kickstart\n0xF80000 - 0xFFFFFF 512k chunk, overlaps the 256k chunk, but starts earlier<\/strong><\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code has-secondary-color has-tertiary-background-color has-text-color has-background has-small-font-size\"><code><strong>1Mb Kickstart\n0xF80000 - 0xFFFFFF 512k chunk\n0xE00000 - 0xE7FFFF 512k chunk<\/strong><\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code has-secondary-color has-tertiary-background-color has-text-color has-background has-small-font-size\"><code><strong>2Mb Kickstart\n0xF80000 - 0xFFFFFF 512k chunk\n0xE00000 - 0xE7FFFF 512k chunk\n0xA80000 - 0xB7FFFF 1Mb chunk\nNote, these banks are not contiguous.<\/strong><\/code><\/pre>\n\n\n\n<p>ROMs can also be &#8220;softloaded&#8221; via relocation into different chunks of memory like 0xC00000\/0x200000 via KickIt\/ReKick\/Degrader\/RelocKick\/skick\/mkick etc. if you have some spare memory here&#8217;<br><br>The CD32 FMV ROM is a little bit of an anomaly, it&#8217;s technically an &#8220;expansion ROM&#8221;, which normally uses a different method for addressing, usually being mapped to a different address (therefore would normally be fully relocatable), however in the CD32, it always appears at a fixed $200000 address and apart from the initial autoconfig bootstrap, it uses normal kickstart style components (libraries) and it&#8217;s own ROM scanning &#8211; using a standard 0x4AFC MATCHWORD (which isn&#8217;t automatically relocatable), the libraries use lots of fixed addresses in the 0x200000-0x23FFFF range (256k ROM).<\/p>\n\n\n\n<p>There are also other areas used for loading additional ROMs, expansion ROMs can appear at $E80000 (and maybe $E90000), but they get copied from there (there&#8217;s also the ZorroIII address $FF000000, but I&#8217;ll ignore 32bit addresses here for now).<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Amiga supports several ROM\/Kickstart &#8220;banks&#8221;; The original A1000 bank is a 256k chunk starting at $FC0000, this was used right up until the first kickstart 1.4 (alpha), then there was a move to use 512k kickstarts starting earlier at $F80000 (an extra 256k) The CDTV was an exception as it uses $F00000 for its &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"http:\/\/capitoline.twocatsblack.com\/index.php\/structure\/\"> <span class=\"screen-reader-text\">ROM Banks<\/span> Read More &raquo;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":30,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"default","site-content-layout":"default","ast-global-header-display":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","footnotes":""},"class_list":["post-192","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/capitoline.twocatsblack.com\/index.php\/wp-json\/wp\/v2\/pages\/192","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/capitoline.twocatsblack.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/capitoline.twocatsblack.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/capitoline.twocatsblack.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/capitoline.twocatsblack.com\/index.php\/wp-json\/wp\/v2\/comments?post=192"}],"version-history":[{"count":3,"href":"http:\/\/capitoline.twocatsblack.com\/index.php\/wp-json\/wp\/v2\/pages\/192\/revisions"}],"predecessor-version":[{"id":915,"href":"http:\/\/capitoline.twocatsblack.com\/index.php\/wp-json\/wp\/v2\/pages\/192\/revisions\/915"}],"wp:attachment":[{"href":"http:\/\/capitoline.twocatsblack.com\/index.php\/wp-json\/wp\/v2\/media?parent=192"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}