-brankp_cart.xml, ekara_cart.xml, hikara.xml: Fixed up metadata.

* Fixed titles.
* Added details from cartridge labels.
* Added track list for Hi-kara user cartridge.

-formats/fs_cbmdos.cpp: More const
This commit is contained in:
Vas Crabb 2024-05-21 07:34:47 +10:00
parent cc42b2bf56
commit 9ab890331a
6 changed files with 66 additions and 37 deletions

View File

@ -37,6 +37,7 @@ Known carts:
<description>J-Pop Blue</description> <description>J-Pop Blue</description>
<year>2015</year> <year>2015</year>
<publisher>Bandai</publisher> <publisher>Bandai</publisher>
<info name="alt_title" value="ジェイポップブルー" />
<info name="serial" value="2315998" /> <info name="serial" value="2315998" />
<part name="cart" interface="bkrankp_cart"> <part name="cart" interface="bkrankp_cart">
<dataarea name="rom" size="0x400000"> <dataarea name="rom" size="0x400000">
@ -46,9 +47,10 @@ Known carts:
</software> </software>
<software name="aikatsu" supported="no"> <software name="aikatsu" supported="no">
<description>Aikatsu Ver. Best</description> <description>Aikatsu! Idol Katsudō!</description>
<year>2015</year> <year>2015</year>
<publisher>Bandai</publisher> <publisher>Bandai</publisher>
<info name="alt_title" value="アイカツ!アイドルカツドウ!" />
<info name="serial" value="2315999" /> <info name="serial" value="2315999" />
<part name="cart" interface="bkrankp_cart"> <part name="cart" interface="bkrankp_cart">
<dataarea name="rom" size="0x800000"> <dataarea name="rom" size="0x800000">
@ -61,6 +63,7 @@ Known carts:
<description>J-Pop - Strawberry</description> <description>J-Pop - Strawberry</description>
<year>2015</year> <year>2015</year>
<publisher>Bandai</publisher> <publisher>Bandai</publisher>
<info name="alt_title" value="ジェイポップストロベリー" />
<info name="serial" value="2316073" /> <info name="serial" value="2316073" />
<part name="cart" interface="bkrankp_cart"> <part name="cart" interface="bkrankp_cart">
<dataarea name="rom" size="0x400000"> <dataarea name="rom" size="0x400000">
@ -73,6 +76,7 @@ Known carts:
<description>J-Pop - Green</description> <description>J-Pop - Green</description>
<year>2015</year> <year>2015</year>
<publisher>Bandai</publisher> <publisher>Bandai</publisher>
<info name="alt_title" value="ジェイポップグリーン" />
<info name="serial" value="2316095" /> <info name="serial" value="2316095" />
<part name="cart" interface="bkrankp_cart"> <part name="cart" interface="bkrankp_cart">
<dataarea name="rom" size="0x400000"> <dataarea name="rom" size="0x400000">
@ -85,6 +89,7 @@ Known carts:
<description>J-Pop - Pink</description> <description>J-Pop - Pink</description>
<year>2015</year> <year>2015</year>
<publisher>Bandai</publisher> <publisher>Bandai</publisher>
<info name="alt_title" value="ジェイポップピンク" />
<info name="serial" value="2316096" /> <info name="serial" value="2316096" />
<part name="cart" interface="bkrankp_cart"> <part name="cart" interface="bkrankp_cart">
<dataarea name="rom" size="0x400000"> <dataarea name="rom" size="0x400000">
@ -97,6 +102,7 @@ Known carts:
<description>Kid's Pop - Lemon Yellow</description> <description>Kid's Pop - Lemon Yellow</description>
<year>2015</year> <year>2015</year>
<publisher>Bandai</publisher> <publisher>Bandai</publisher>
<info name="alt_title" value="キッズポップレモンイエロー" />
<info name="serial" value="2316097" /> <info name="serial" value="2316097" />
<part name="cart" interface="bkrankp_cart"> <part name="cart" interface="bkrankp_cart">
<dataarea name="rom" size="0x400000"> <dataarea name="rom" size="0x400000">
@ -160,6 +166,7 @@ Known carts:
<description>Kid's Pop - Red</description> <description>Kid's Pop - Red</description>
<year>2015</year> <year>2015</year>
<publisher>Bandai</publisher> <publisher>Bandai</publisher>
<info name="alt_title" value="キッズポップレッド" />
<info name="serial" value="2333253" /> <info name="serial" value="2333253" />
<part name="cart" interface="bkrankp_cart"> <part name="cart" interface="bkrankp_cart">
<dataarea name="rom" size="0x400000"> <dataarea name="rom" size="0x400000">
@ -184,6 +191,7 @@ Known carts:
<description>Kid's Pop - Apple Green</description> <description>Kid's Pop - Apple Green</description>
<year>2015</year> <year>2015</year>
<publisher>Bandai</publisher> <publisher>Bandai</publisher>
<info name="alt_title" value="キッズポップアップルグリーン" />
<info name="serial" value="2336074" /> <info name="serial" value="2336074" />
<part name="cart" interface="bkrankp_cart"> <part name="cart" interface="bkrankp_cart">
<dataarea name="rom" size="0x400000"> <dataarea name="rom" size="0x400000">
@ -196,6 +204,7 @@ Known carts:
<description>J-Pop - Grapefruit</description> <description>J-Pop - Grapefruit</description>
<year>2015</year> <year>2015</year>
<publisher>Bandai</publisher> <publisher>Bandai</publisher>
<info name="alt_title" value="ジェイポップグレープフルーツ" />
<info name="serial" value="2336075" /> <info name="serial" value="2336075" />
<part name="cart" interface="bkrankp_cart"> <part name="cart" interface="bkrankp_cart">
<dataarea name="rom" size="0x400000"> <dataarea name="rom" size="0x400000">
@ -209,6 +218,7 @@ Known carts:
<year>2015</year> <year>2015</year>
<publisher>Bandai</publisher> <publisher>Bandai</publisher>
<info name="serial" value="2336076" /> <info name="serial" value="2336076" />
<info name="alt_title" value="ディズニードリームヒットソング" />
<part name="cart" interface="bkrankp_cart"> <part name="cart" interface="bkrankp_cart">
<dataarea name="rom" size="0x800000"> <dataarea name="rom" size="0x800000">
<rom name="Disney_mx25l6406e_c22017.BIN" size="0x800000" crc="777a37de" sha1="27116702adbaed782677b3f64215c4f0f022fa65" /> <rom name="Disney_mx25l6406e_c22017.BIN" size="0x800000" crc="777a37de" sha1="27116702adbaed782677b3f64215c4f0f022fa65" />
@ -220,6 +230,7 @@ Known carts:
<description>J-Pop - Mint</description> <description>J-Pop - Mint</description>
<year>2015</year> <year>2015</year>
<publisher>Bandai</publisher> <publisher>Bandai</publisher>
<info name="alt_title" value="ジェイポップミント" />
<info name="serial" value="2350534" /> <info name="serial" value="2350534" />
<part name="cart" interface="bkrankp_cart"> <part name="cart" interface="bkrankp_cart">
<dataarea name="rom" size="0x400000"> <dataarea name="rom" size="0x400000">
@ -232,6 +243,7 @@ Known carts:
<description>Best Hit Song</description> <description>Best Hit Song</description>
<year>2015</year> <year>2015</year>
<publisher>Bandai</publisher> <publisher>Bandai</publisher>
<info name="alt_title" value="ベストヒットソング" />
<info name="serial" value="2350535" /> <info name="serial" value="2350535" />
<part name="cart" interface="bkrankp_cart"> <part name="cart" interface="bkrankp_cart">
<dataarea name="rom" size="0x400000"> <dataarea name="rom" size="0x400000">

View File

@ -315,7 +315,7 @@ license:CC0-1.0
Japanese cart listing (by M code) (M-x on cartridge / box, MC in cart identifier code) Japanese cart listing (by M code) (M-x on cartridge / box, MC in cart identifier code)
M-1 *MC0001-ATM Artist Mini Volume 1 (Aya Matsuura) M-1 *MC0001-ATM Artist Mini Volume 1 (Aya Matsuura)
M-2 *MC0002-ATM Artist Mini Volume 2 (PIKA☆NCHI, A・RA・SHI) M-2 *MC0002-ATM Artist Mini Volume 2 (PIKA☆NCHI, A·RA·SHI, etc.)
M-3 *MC0003-ATM Artist Mini Volume 3 (Morning Musume) M-3 *MC0003-ATM Artist Mini Volume 3 (Morning Musume)
M-4 *MC0004-ATM Artist Mini Volume 4 (w-inds) M-4 *MC0004-ATM Artist Mini Volume 4 (w-inds)
M-5 *MC0005-KSM Kids Song Mini Volume 1 (TV Song) M-5 *MC0005-KSM Kids Song Mini Volume 1 (TV Song)
@ -324,7 +324,7 @@ license:CC0-1.0
M-8 *MC0008-KSM Kids Song Mini Volume 3 M-8 *MC0008-KSM Kids Song Mini Volume 3
M-9 *MC0009-JPM J-Pop Mix Mini Volume 1 M-9 *MC0009-JPM J-Pop Mix Mini Volume 1
M-10 *MC0010-ATM Artist Mini Volume 6 (Utada Hikaru) M-10 *MC0010-ATM Artist Mini Volume 6 (Utada Hikaru)
M-11 *MC0011-KSM Kids Song Mini Volume 4 (Fantastic) M-11 *MC0011-KSM Kids Song Mini Volume 4 (Micky Mouse March, Hoshi ni Negai O, etc.)
M-12 *MC0012-ATM Artist Mini Volume 7 (Ayumi Hamasaki) M-12 *MC0012-ATM Artist Mini Volume 7 (Ayumi Hamasaki)
M-13 *MC0013-KSM Kids Song Mini Volume 5 M-13 *MC0013-KSM Kids Song Mini Volume 5
M-14 *MC0014-ATM Artist Mini Volume 8 (BoA) M-14 *MC0014-ATM Artist Mini Volume 8 (BoA)
@ -371,7 +371,7 @@ license:CC0-1.0
S-14 *SC0014-SAI Saiten Cartridge Challenge Idol vol.4 S-14 *SC0014-SAI Saiten Cartridge Challenge Idol vol.4
S-15 *SC0015-DCS Saiten Cartridge Detective Conan Vol.2 S-15 *SC0015-DCS Saiten Cartridge Detective Conan Vol.2
S-16 *SC0016-SAI Saiten Cartridge Nesshō vol. 5 S-16 *SC0016-SAI Saiten Cartridge Nesshō vol. 5
S-17 *SC0017-SAI Kids' Challenge Vol.2 S-17 *SC0017-SAI Kids' Challenge Vol.2 (Te o Tsunagō, Anpanman no March, etc.)
S-18 *SC0018-SAI Saiten Cartridge Challenge Artist Vol.1 (Morning Musume, Tanpopo, Petit Moni, Gotō Maki) S-18 *SC0018-SAI Saiten Cartridge Challenge Artist Vol.1 (Morning Musume, Tanpopo, Petit Moni, Gotō Maki)
S-19 *SC0019-SAI Saiten Cartridge Nesshō vol. 6 S-19 *SC0019-SAI Saiten Cartridge Nesshō vol. 6
S-20 *SC0020-SAI Saiten Cartridge Challenge Idol vol.5 S-20 *SC0020-SAI Saiten Cartridge Challenge Idol vol.5
@ -419,7 +419,7 @@ license:CC0-1.0
*KR-1 Kirarin Revolution (comes in kira kara Starter Set bundled with Kirarin Revolution microphone) (inside cart is marked AC0009-KIR) *KR-1 Kirarin Revolution (comes in kira kara Starter Set bundled with Kirarin Revolution microphone) (inside cart is marked AC0009-KIR)
*BX01-MOR Morning Musume Special (sticker inside cart is marked CS019-004A) *BX01-MOR Morning Musume Special (sticker inside cart is marked CS019-004A)
*PR-01 MNG (c)2002 Morning Musume - I'm Here! (single song 'not for sale' cartridge) *PR-01 MNG (c)2002 Premium Cartridge Koko ni Iru Zee! Morning Musume (single song 'not for sale' cartridge)
PR-02 AYY (c)2003 Aya Matsuura - Prairies Man (single song 'not for sale' cartridge) PR-02 AYY (c)2003 Aya Matsuura - Prairies Man (single song 'not for sale' cartridge)
*PR-06 Misora Hibari (inside cart is marked AC0009) *PR-06 Misora Hibari (inside cart is marked AC0009)
@ -1791,9 +1791,10 @@ license:CC0-1.0
</software> </software>
<software name="dc0004"> <software name="dc0004">
<description>Dream Cartridge: TV Pop Junior Vol.8 (Japan) (DC0004-TPJ)</description> <description>Dream Cartridge: TV Pop Junior Vol.8 (Happy Lucky - Onegai Mirmo, mini-moni - Telephone! Ring Ring Ring, etc.) (Japan) (DC0004-TPJ)</description>
<year>2004</year> <year>2004</year>
<publisher>Takara</publisher> <publisher>Takara</publisher>
<info name="alt_title" value="ドリームカートリッジ TVPOPジュニア Vol.8 (ハッピー♥ラッキー~お願いミルモ~/ミニモニ。テレフォン!リンリンリン/他)"/> <!-- from cover art -->
<sharedfeat name="compatibility" value="EKARA,POPIRA,TAIKO"/> <sharedfeat name="compatibility" value="EKARA,POPIRA,TAIKO"/>
<part name="cart" interface="ekara_cart"> <part name="cart" interface="ekara_cart">
<feature name="slot" value="rom_24lc02"/> <feature name="slot" value="rom_24lc02"/>
@ -1849,10 +1850,10 @@ license:CC0-1.0
</software> </software>
<software name="dc0009"> <software name="dc0009">
<description>Dream Cartridge: TV Pop Junior Vol.10 (Japan) (DC0009-TPJ)</description> <description>Dream Cartridge: TV Pop Junior Vol.10 (Bon Voyage!, Kimi to Yakusoku Shita Yasashī Ano Basho Made, etc.) (Japan) (DC0009-TPJ)</description>
<year>2004</year> <year>2004</year>
<publisher>Takara</publisher> <publisher>Takara</publisher>
<info name="alt_title" value="ドリームカートリッジ TVPOPジュニア"/> <!-- from cover art --> <info name="alt_title" value="ドリームカートリッジ TVPOPジュニア (BON VOYAGE!/君と約束した優しいあの場所まで/他)"/> <!-- from cover art -->
<info name="alt_title" value="TV POPジュニアvol.10"/> <!-- shown on-screen when run on Popira --> <info name="alt_title" value="TV POPジュニアvol.10"/> <!-- shown on-screen when run on Popira -->
<sharedfeat name="compatibility" value="EKARA,POPIRA,TAIKO"/> <sharedfeat name="compatibility" value="EKARA,POPIRA,TAIKO"/>
<part name="cart" interface="ekara_cart"> <part name="cart" interface="ekara_cart">
@ -2297,9 +2298,10 @@ license:CC0-1.0
</software> </software>
<software name="mc0002"> <software name="mc0002">
<description>Artist Mini Volume 2 (PIKA☆NCHI, A・RA・SHI) (Japan) (MC0002-ATM)</description> <description>Artist Mini Volume 2 (PIKA☆NCHI, A·RA·SHI, etc.) (Japan) (MC0002-ATM)</description>
<year>2003</year> <year>2003</year>
<publisher>Takara</publisher> <publisher>Takara</publisher>
<info name="alt_title" value="アーティストミニ mini vol.2 (PIKA☆NCHIA·RA·SHI他)"/>
<sharedfeat name="compatibility" value="EKARA"/> <sharedfeat name="compatibility" value="EKARA"/>
<part name="cart" interface="ekara_cart"> <part name="cart" interface="ekara_cart">
<dataarea name="rom" size="0x080000"> <dataarea name="rom" size="0x080000">
@ -2413,9 +2415,10 @@ license:CC0-1.0
</software> </software>
<software name="mc0011"> <software name="mc0011">
<description>Kids Song Mini Volume 4 (Fantastic) (Japan) (MC0011-KSM)</description> <description>Kids Song Mini Volume 4 (Micky Mouse March, Hoshi ni Negai O, etc.) (Japan) (MC0011-KSM)</description>
<year>2003</year> <year>2003</year>
<publisher>Takara</publisher> <publisher>Takara</publisher>
<info name="alt_title" value="アーティストミニ mini vol.4 (ミッキーマウス・マーチ/星に願いを/他)"/>
<sharedfeat name="compatibility" value="EKARA"/> <sharedfeat name="compatibility" value="EKARA"/>
<part name="cart" interface="ekara_cart"> <part name="cart" interface="ekara_cart">
<dataarea name="rom" size="0x080000"> <dataarea name="rom" size="0x080000">
@ -2722,9 +2725,10 @@ license:CC0-1.0
</software> </software>
<software name="sc0013"> <software name="sc0013">
<description>Saiten Cartridge Nesshō vol. 4 (Japan) (SC0013-SAI)</description> <description>Saiten Cartridge Nesshō vol. 4 (Naminori Johnny, Kanashimi wa Yuki no Yō Ni, etc.) (Japan) (SC0013-SAI)</description>
<year>2001</year> <year>2001</year>
<publisher>Takara</publisher> <publisher>Takara</publisher>
<info name="alt_title" value="採点カートリッジ 熱唱 vol. 4 (波乗りジョニー/悲しみは雪のように/他)"/>
<sharedfeat name="compatibility" value="EKARA"/> <sharedfeat name="compatibility" value="EKARA"/>
<part name="cart" interface="ekara_cart"> <part name="cart" interface="ekara_cart">
<dataarea name="rom" size="0x100000"> <dataarea name="rom" size="0x100000">
@ -2773,9 +2777,10 @@ license:CC0-1.0
</software> </software>
<software name="sc0017"> <software name="sc0017">
<description>Kids' Challenge Vol.2 (Japan) (SC0017-SAI)</description> <description>Kids' Challenge Vol.2 (Te o Tsunagō, Anpanman no March, etc.) (Japan) (SC0017-SAI)</description>
<year>2001</year> <year>2001</year>
<publisher>Takara</publisher> <publisher>Takara</publisher>
<info name="alt_title" value="採点カートリッジ キッズチャレンジ Vol.2 (てをつなごう/アンパンマンのマーチ/他)"/>
<sharedfeat name="compatibility" value="EKARA"/> <sharedfeat name="compatibility" value="EKARA"/>
<part name="cart" interface="ekara_cart"> <part name="cart" interface="ekara_cart">
<dataarea name="rom" size="0x100000"> <dataarea name="rom" size="0x100000">
@ -2952,9 +2957,10 @@ license:CC0-1.0
</software> </software>
<software name="pr01"> <software name="pr01">
<description>PR-01 Morning Musume - I'm Here! (Not for Sale, Japan)</description> <description>PR-01 Premium Cartridge Koko ni Iru Zee! Morning Musume (Not for Sale, Japan)</description>
<year>2002</year> <year>2002</year>
<publisher>Takara</publisher> <publisher>Takara</publisher>
<info name="alt_title" value="プレミアムカートリッジ ここにいるぜえ! モーニング娘。" />
<sharedfeat name="compatibility" value="EKARA"/> <sharedfeat name="compatibility" value="EKARA"/>
<part name="cart" interface="ekara_cart"> <part name="cart" interface="ekara_cart">
<dataarea name="rom" size="0x80000"> <dataarea name="rom" size="0x80000">
@ -2993,10 +2999,10 @@ license:CC0-1.0
</software> </software>
<software name="gs1"> <software name="gs1">
<description>Natsukashi no Meikyoku-shū (Japan)</description> <description>Natsukashi no Meikyoku-shū (Akatonbo, Haru ga Kita, etc.) (Japan)</description>
<year>2002</year> <year>2002</year>
<publisher>Takara</publisher> <publisher>Takara</publisher>
<info name="alt_title" value="懐かしの名曲集" /> <info name="alt_title" value="懐かしの名曲集 (赤蜻蛉/春が来た/他)" />
<sharedfeat name="compatibility" value="EKARA,POPIRA"/> <sharedfeat name="compatibility" value="EKARA,POPIRA"/>
<part name="cart" interface="ekara_cart"> <part name="cart" interface="ekara_cart">
<dataarea name="rom" size="0x100000"> <dataarea name="rom" size="0x100000">

View File

@ -64,11 +64,11 @@ license:CC0-1.0
--> -->
<!-- this one has some songs programmed into it: <!-- this one has some songs programmed into it:
キューティーハニー 倖田來未 Cutie Honey Kōda Kumi キューティーハニー 倖田來未 Cutie Honey Kōda Kumi
KissHug aiko KissHug aiko KissHug aiko KissHug aiko
さくらんぼ 大塚愛 Sakuranbo Ōtsuka Ai さくらんぼ 大塚愛 Sakuranbo Ōtsuka Ai
Dream Fighter Perfume Dream Fighter Perfume Dream Fighter Perfume Dream Fighter Perfume
ポリリズム Perfume Polyrhythm Perfume --> ポリリズム Perfume Polyrhythm Perfume -->
<software name="user5" supported="no"> <software name="user5" supported="no">
<description>Hi-kara 5-song capacity user cartridge (used, with 5 songs) (Japan)</description> <description>Hi-kara 5-song capacity user cartridge (used, with 5 songs) (Japan)</description>
<year>2008</year> <year>2008</year>
@ -80,6 +80,11 @@ license:CC0-1.0
</part> </part>
</software> </software>
<!-- this one has some songs programmed into it:
崖の上のポニョ 藤岡藤巻と大橋のぞみ Gake no Ue no Ponyo Fujioka Fujimaki & Ōhashi Nozomi
タンタンターン! MilkyWay Tan Tan Tān! MilkyWay
ハートのエースが出てこない キャンディーズ Heart no Ace ga Detekonai Candies
プリキュア5、スマイル go go! 工藤真由 PreCure 5, Smile Go Go! Kudō Mari -->
<software name="user5a" cloneof="user5" supported="no"> <software name="user5a" cloneof="user5" supported="no">
<description>Hi-kara 5-song capacity user cartridge (used, with 4 songs) (Japan)</description> <description>Hi-kara 5-song capacity user cartridge (used, with 4 songs) (Japan)</description>
<year>2008</year> <year>2008</year>
@ -232,9 +237,10 @@ license:CC0-1.0
</software> </software>
<software name="pokemon" supported="no"> <software name="pokemon" supported="no">
<description>Pocket Monsters Special</description> <description>Utatte Asonde! Best Hit Pokémon</description>
<year>2008</year> <year>2008</year>
<publisher>Takara Tomy</publisher> <publisher>Takara Tomy</publisher>
<info name="alt_title" value="うたってあそんで!ベストヒットポケモン"/>
<part name="cart" interface="ekara_cart"> <part name="cart" interface="ekara_cart">
<dataarea name="rom" size="0x200000"> <dataarea name="rom" size="0x200000">
<rom name="r-08b0541.u1" size="0x200000" crc="8b6a6d4b" sha1="5f264bff2deedbd61d844c4f8ba4421ac598636c"/> <rom name="r-08b0541.u1" size="0x200000" crc="8b6a6d4b" sha1="5f264bff2deedbd61d844c4f8ba4421ac598636c"/>
@ -243,9 +249,10 @@ license:CC0-1.0
</software> </software>
<software name="ciao" supported="no"> <software name="ciao" supported="no">
<description>Ciao Special</description> <description>Ciao Best Hit Cartridge</description>
<year>2009</year> <year>2009</year>
<publisher>Takara Tomy</publisher> <publisher>Takara Tomy</publisher>
<info name="alt_title" value="ちゃお ベストヒットカートリッジ"/>
<part name="cart" interface="ekara_cart"> <part name="cart" interface="ekara_cart">
<dataarea name="rom" size="0x200000"> <dataarea name="rom" size="0x200000">
<rom name="cc0907001.u1" size="0x200000" crc="45f6b2a3" sha1="b3b1b3f269b128a2b09aa932f77d53da53f6130f"/> <rom name="cc0907001.u1" size="0x200000" crc="45f6b2a3" sha1="b3b1b3f269b128a2b09aa932f77d53da53f6130f"/>

View File

@ -42,9 +42,9 @@
/CS9 19 /CS9 19
/CSA 20 /CSA 20
Comelta DRAC-1 expansion modules use a 64-pin edge connector with an Comelta DRAC-1 expansion modules use a 96-pin Eurocard connector with row
external manual reset input and more power rails, but without some b unused. Has an external manual reset input and more power rails, but
control signals: omits some control signals:
+25V a 1 c +25V +25V a 1 c +25V
external manual reset a 2 c reserved external manual reset a 2 c reserved

View File

@ -16,6 +16,7 @@ Current limitations:
***************************************************************************/ ***************************************************************************/
#include "fs_cbmdos.h" #include "fs_cbmdos.h"
#include "d64_dsk.h" #include "d64_dsk.h"
#include "fsblk.h" #include "fsblk.h"
@ -30,6 +31,7 @@ Current limitations:
#include <string_view> #include <string_view>
#include <tuple> #include <tuple>
namespace fs { namespace fs {
const cbmdos_image CBMDOS; const cbmdos_image CBMDOS;
}; };
@ -390,7 +392,7 @@ err_t impl::file_create(const std::vector<std::string> &path, const meta_data &m
if (!result) if (!result)
{ {
// Claim a next directory sector // Claim a next directory sector
auto [err, new_sector] = claim_track_sector(DIRECTORY_TRACK); auto const [err, new_sector] = claim_track_sector(DIRECTORY_TRACK);
if (err != ERR_OK) if (err != ERR_OK)
return err; return err;
auto new_block = read_sector(DIRECTORY_TRACK, new_sector); auto new_block = read_sector(DIRECTORY_TRACK, new_sector);
@ -409,7 +411,7 @@ err_t impl::file_create(const std::vector<std::string> &path, const meta_data &m
sector = new_sector; sector = new_sector;
} }
auto [err, file_track, file_sector] = claim_sector(); auto const [err, file_track, file_sector] = claim_sector();
if (err != ERR_OK) if (err != ERR_OK)
return err; return err;
@ -441,7 +443,7 @@ err_t impl::file_write(const std::vector<std::string> &path, const std::vector<u
u8 dir_track = 0; u8 dir_track = 0;
u8 dir_sector = 0; u8 dir_sector = 0;
u8 dir_file_index = 0; u8 dir_file_index = 0;
auto callback = [&result, &dir_track, &dir_sector, &dir_file_index, path_part](u8 track, u8 sector, u8 file_index, const cbmdos_dirent &dirent) auto const callback = [&result, &dir_track, &dir_sector, &dir_file_index, path_part] (u8 track, u8 sector, u8 file_index, const cbmdos_dirent &dirent)
{ {
bool found = strtrimright_cbm(dirent.m_file_name) == path_part; bool found = strtrimright_cbm(dirent.m_file_name) == path_part;
if (found) if (found)
@ -499,7 +501,7 @@ err_t impl::file_write(const std::vector<std::string> &path, const std::vector<u
while (track_to_free != CHAIN_END) while (track_to_free != CHAIN_END)
{ {
err_t err = free_sector(track_to_free, sector_to_free); err_t const err = free_sector(track_to_free, sector_to_free);
if (err != ERR_OK) if (err != ERR_OK)
return err; return err;
datablk = read_sector(track_to_free, sector_to_free); datablk = read_sector(track_to_free, sector_to_free);
@ -593,7 +595,7 @@ std::tuple<err_t, u8, u8> impl::claim_sector() const
{ {
for (int track = 0; track < m_max_track - 1; track++) for (int track = 0; track < m_max_track - 1; track++)
{ {
auto [err, sector] = claim_track_sector(s_data_track_order[track]); auto const [err, sector] = claim_track_sector(s_data_track_order[track]);
if (err == ERR_OK) if (err == ERR_OK)
return std::make_tuple(ERR_OK, s_data_track_order[track], sector); return std::make_tuple(ERR_OK, s_data_track_order[track], sector);
if (err != ERR_NO_SPACE) if (err != ERR_NO_SPACE)
@ -643,13 +645,13 @@ fsblk_t::block_t impl::read_sector(int track, int sector) const
std::optional<impl::cbmdos_dirent> impl::dirent_from_path(const std::vector<std::string> &path) const std::optional<impl::cbmdos_dirent> impl::dirent_from_path(const std::vector<std::string> &path) const
{ {
if (path.size() != 1) if (path.size() != 1)
return { }; return std::nullopt;
std::string_view path_part = path[0]; std::string_view path_part = path[0];
std::optional<cbmdos_dirent> result; std::optional<cbmdos_dirent> result;
auto callback = [&result, path_part](u8 track, u8 sector, u8 file_index, const cbmdos_dirent &dirent) auto const callback = [&result, path_part] (u8 track, u8 sector, u8 file_index, const cbmdos_dirent &dirent)
{ {
bool found = strtrimright_cbm(dirent.m_file_name) == path_part; bool const found = strtrimright_cbm(dirent.m_file_name) == path_part;
if (found) if (found)
result = dirent; result = dirent;
return found; return found;
@ -670,7 +672,8 @@ void impl::iterate_directory_entries(const std::function<bool(u8 track, u8 secto
{ {
auto entries = iter.dirent_data(); auto entries = iter.dirent_data();
for (int file_index = 0; file_index < SECTOR_DIRECTORY_COUNT; file_index++) { for (int file_index = 0; file_index < SECTOR_DIRECTORY_COUNT; file_index++)
{
if (entries[file_index].m_file_type != 0x00) if (entries[file_index].m_file_type != 0x00)
{ {
if (callback(iter.track(), iter.sector(), file_index, entries[file_index])) if (callback(iter.track(), iter.sector(), file_index, entries[file_index]))
@ -687,7 +690,8 @@ void impl::iterate_all_directory_entries(const std::function<bool(u8 track, u8 s
{ {
auto entries = iter.dirent_data(); auto entries = iter.dirent_data();
for (int file_index = 0; file_index < SECTOR_DIRECTORY_COUNT; file_index++) { for (int file_index = 0; file_index < SECTOR_DIRECTORY_COUNT; file_index++)
{
if (callback(iter.track(), iter.sector(), file_index, entries[file_index])) if (callback(iter.track(), iter.sector(), file_index, entries[file_index]))
return; return;
} }
@ -811,7 +815,7 @@ const std::array<impl::cbmdos_dirent, impl::SECTOR_DIRECTORY_COUNT> &impl::block
u8 impl::block_iterator::size() const u8 impl::block_iterator::size() const
{ {
return m_track != CHAIN_END ? SECTOR_DATA_BYTES : m_sector - 1; return (m_track != CHAIN_END) ? SECTOR_DATA_BYTES : (m_sector - 1);
} }
} // anonymous namespace } // anonymous namespace

View File

@ -1636,7 +1636,7 @@ void xavix_hikara_state::machine_reset()
for (int j = 0; j < 5; j++) for (int j = 0; j < 5; j++)
{ {
u8 searchfor[5] = { 0x29, 0x80, 0xd0, 0x14, 0xad }; constexpr u8 searchfor[5] = { 0x29, 0x80, 0xd0, 0x14, 0xad };
if (ROM[i + j] == searchfor[j]) if (ROM[i + j] == searchfor[j])
matchcount++; matchcount++;