crystalct / MagicDesk2

Open Hardware Project to build a 3 in 1 cartridge based on Magic Desk
Other
12 stars 2 forks source link

Binaries which you have supplied don't work #2

Closed C0d3C4T closed 9 months ago

C0d3C4T commented 1 year ago

After mixing Binaries in repo with remaining essential files from vice 3.6.1, exe doesn't show emulator screen, it just appears and disappears, no errors in console.

moreover you didn't supply source code for that vice modification so I can't recompile it myself and I sadly found that out after I ordered PCBs which is a huge disadvantage because I want to make custom menu and prototypying it with emulator seems better idea than burning memories each time.

crystalct commented 1 year ago

After cloning this repository, in the folder GTK3VICE-3.6.1-win32-r42742/bin you will find the patched vice binaries for the Magic Desk 16 bit config, of course if you are interested in this setup. If you are interested in Gmod3, the standard vice will also work. Also in the case of the Magic Desk 16, to create the crt, use the cartconv.exe patched by me. I just tested binaries from this repository, and they works. About source code of MD2.bin and GMod3.bin I will look them up in my previous notebook and put them online.

C0d3C4T commented 1 year ago

Everything that you wrote about is clear to me and I actually discovered that earlier myself and checked everything twice before I posted another issue but I feel like you didn't understand me in all aspects of problem. Official 3.6.x/3.7.x binaries do work for me, binaries which I build myself do also work (I have local copy of source with own mods), what you shared do not work and if you have shared vice mod source then I could compile that myself. I want to go with magic desk 16k pages and I'm stuck.

I'm obviously aware of need of another cartconv and so on and source of md2.bin and gmod3.bin are least of interest at this point.

crystalct commented 1 year ago

I posted the pacth to sourgeforge so that the VICE team could update the official VICE, but they argued that before making the change to their sources, they expect there is an official game that runs on the 16 kbyte Magic Desk. However you can find the sources for modifying VICE here: https://sourceforge.net/p/vice-emu/patches/353/

C0d3C4T commented 1 year ago

Good, I've downloaded source and after compilation it runs and works properly with MD2.bin

zitev commented 1 year ago

Hi @crystalct,

I am wondering if writing the GMod3 binary to the 27c160 via the TL286-II adapter should work in the same order as we were used to with Plus/4 images? I'm asking because the test copy doesn't want to start (after switching on only a frozen blue screen with a blue frame), if I remove the IC, then basic starts, if I test the image in Vice, then it starts - I can guess , that the entry order may be different. Any tips?

thanks,

crystalct commented 1 year ago

@zitev i suppose you mean https://github.com/msolajic/c264-magic-cart but i don't know how it want the BIN written on EPROM. Anyway i use this: https://github.com/mafe72/27c160-tl866-adapter The BIN is perfectly linear, no swap or mix. A20 always to GND. first 512K: A18 to GND, A19 to GND 2nd 512k: A18 to +5V, A19 to GND 3rd 512K: A18 to GND, A19 to +5V 4th 512k: A18 to +5V, A19 to +5V

zitev commented 1 year ago

@crystalct i use the same adapter as you, my question was about the switching sequence, but i think it is also the same as by the c264 magic cart. Due to some problem, the card does not start with the test image, for now I am looking for the reason. I have one more question: I didn't manage to generate a 2MB C64 bin (I successfully did it with Plus/4 several times). Even if you use the -g3 switch, the process stops with an error. Is there a process description somewhere for generating a GMod3 image?

Thanks for your help,

crystalct commented 1 year ago

https://bitbucket.org/zzarko/magic-cartridge-generator/src/main/

put max 62 prgs (menu limit right now is 62 items) into prg directory.

C:\PSDK3v2\MinGW\msys\1.0\home\crystal\zarko\main>python crtgen.py -g3

Magic Cartridge Generator v3.7
(c) 2013-2022  Žarko Živanov

Magic Desk Compatible Cartridge, Magic 264 Cartridge, Magic 128 Cartridge
(c) 2013-2022  Marko Šolajić

Using configuration c64gm3, Commodore 64 Gmod3

Reading prg files from prg directory ...
Found music file: HelloWorld
Found prg files:
    Menu 1: 10th Frame
    Menu 1: 180
    Menu 1: 1942
    Menu 1: 1943 - The Battle of Midway (J1)
    Menu 1: 1985 - The Day After
    Menu 1: 49152
    Menu 1: 4th and Inches
    Menu 1: 5th Gear
    Menu 1: 720 Degrees
    Menu 1: A Fistful of Bucks
    Menu 1: ACE - Air Combat Emulator
    Menu 1: ACE 2
    Menu 1: Abu Simbel Profanation (Equinoxe - 2017)
    Menu 1: Abyss
    Menu 1: Abyssonaut (Anthony Stiller - 2015)
    Menu 1: Ace 2088
    Menu 1: Acid Runner
    Menu 1: Action Biker
    Menu 1: Action Fighter
    Menu 1: Action Force
    Menu 1: Actionauts
    Menu 1: Addicta Ball
    Menu 1: Adrenalin
    Menu 1: Advanced Pinball Simulator
    Menu 1: Adventureland
    Menu 1: Adventures of Barsak the Dwarf
    Menu 1: Adventures of Basildon Bond, The
    Menu 1: Africa Gardens
    Menu 1: Agent UOP
    Menu 1: Agent USA
    Menu 1: Agent X II (Part 1) (J1)
    Menu 1: Agent X II (Part 2) (J1)
    Menu 1: Air Support
    Menu 1: Airwolf II
    Menu 1: Airwolf
    Menu 1: Alcatraz (J1)
    Menu 1: Alcazar - The Forgotten Fortress
    Menu 1: Alien (Argus Press Software)
    Menu 1: Alien 8 (Rod & Emu - 2019)
    Menu 1: MidRes
    Menu 1: adidas Championship Tie Break (J1)
    Menu 1: basic
    Menu 1: breakthru-2nd-fire
    Menu 1: chop-def-exo
    Menu 1: cruncher
    Menu 1: delux_di
    Menu 1: dir-mast
    Menu 1: dropzone-def-exo
    Menu 1: exolon-exo
    Menu 1: fw-def-exo
    Menu 1: green-beret-2nd-fire
    Menu 1: make_dir
    Menu 1: mood25
    Menu 1: ninja-spirit
    Menu 1: ninja_dest-exo
    Menu 1: pro_text
    Menu 1: rambo-first-blood-2nd-fire
    Menu 1: ry2
    Menu 1: sprite_e
    Menu 1: wizball-2nd-fire
    Menu 1: wolf-def

Coniguration 'output.cfg' is generated for c64gm3.

C:\PSDK3v2\MinGW\msys\1.0\home\crystal\zarko\main>python crtgen.py output

Magic Cartridge Generator v3.7
(c) 2013-2022  Žarko Živanov

Magic Desk Compatible Cartridge, Magic 264 Cartridge, Magic 128 Cartridge
(c) 2013-2022  Marko Šolajić

Reading configuration file output.cfg ...
Reading cartridge section ...
Reading menu 1 section ...
Menu 1 programs:
    10th Frame
    180
    1942
    1943 - The Battle of Midway (J1
    1985 - The Day After
    49152
    4th and Inches
    5th Gear
    720 Degrees
    A Fistful of Bucks
    ACE - Air Combat Emulator
    ACE 2
    Abu Simbel Profanation (Equinox
    Abyss
    Abyssonaut (Anthony Stiller - 2
    Ace 2088
    Acid Runner
    Action Biker
    Action Fighter
    Action Force
    Actionauts
    Addicta Ball
    Adrenalin
    Advanced Pinball Simulator
    Adventureland
    Adventures of Barsak the Dwarf
    Adventures of Basildon Bond, Th
    Africa Gardens
    Agent UOP
    Agent USA
    Agent X II (Part 1) (J1)
    Agent X II (Part 2) (J1)
    Air Support
    Airwolf II
    Airwolf
    Alcatraz (J1)
    Alcazar - The Forgotten Fortres
    Alien (Argus Press Software)
    Alien 8 (Rod & Emu - 2019)
    MidRes
    adidas Championship Tie Break (
    basic
    breakthru-2nd-fire
    chop-def-exo
    cruncher
    delux di
    dir-mast
    dropzone-def-exo
    exolon-exo
    fw-def-exo
    green-beret-2nd-fire
    make dir
    mood25
    ninja-spirit
    ninja dest-exo
    pro text
    rambo-first-blood-2nd-fire
    ry2
    sprite e
    wizball-2nd-fire
    wolf-def

Using configuration c64gm3, Commodore 64 Gmod3

Assembling cartridge file ...
SID

Cartridge memory map:
               menu-c64-gm3.PRG located at $000000
                      menu data located at $0006d5
                  program table located at $000b2f
                          music located at $000d9b

                     10th Frame located at $00135e, Bank 0 (0), run address: valori: $00135e, 0 (0) BASIC RUN
                            180 located at $0085a8, Bank 4 (4), run address: valori: $0085a8, 4 (4) BASIC RUN
                           1942 located at $00f237, Bank 7 (7), run address: valori: $00f237, 7 (7) BASIC RUN
1943 - The Battle of Midway (J1 located at $016a08, Bank 11 (b), run address: valori: $016a08, 11 (b) BASIC RUN
           1985 - The Day After located at $01c17e, Bank 14 (e), run address: valori: $01c17e, 14 (e) BASIC RUN
                          49152 located at $020008, Bank 16 (10), run address: valori: $020008, 16 (10) $c000
                 4th and Inches located at $021008, Bank 16 (10), run address: valori: $021008, 16 (10) BASIC RUN
                       5th Gear located at $027fc3, Bank 19 (13), run address: valori: $027fc3, 19 (13) BASIC RUN
                    720 Degrees located at $0308dd, Bank 24 (18), run address: valori: $0308dd, 24 (18) BASIC RUN
             A Fistful of Bucks located at $035f46, Bank 26 (1a), run address: valori: $035f46, 26 (1a) BASIC RUN
      ACE - Air Combat Emulator located at $03b485, Bank 29 (1d), run address: valori: $03b485, 29 (1d) BASIC RUN
                          ACE 2 located at $044774, Bank 34 (22), run address: valori: $044774, 34 (22) BASIC RUN
Abu Simbel Profanation (Equinox located at $04bd05, Bank 37 (25), run address: valori: $04bd05, 37 (25) BASIC RUN
                          Abyss located at $053299, Bank 41 (29), run address: valori: $053299, 41 (29) BASIC RUN
Abyssonaut (Anthony Stiller - 2 located at $05b93d, Bank 45 (2d), run address: valori: $05b93d, 45 (2d) BASIC RUN
                       Ace 2088 located at $060f44, Bank 48 (30), run address: valori: $060f44, 48 (30) BASIC RUN
                    Acid Runner located at $069f4f, Bank 52 (34), run address: valori: $069f4f, 52 (34) BASIC RUN
                   Action Biker located at $06fe5c, Bank 55 (37), run address: valori: $06fe5c, 55 (37) BASIC RUN
                 Action Fighter located at $0744d8, Bank 58 (3a), run address: valori: $0744d8, 58 (3a) BASIC RUN
                   Action Force located at $07d6c1, Bank 62 (3e), run address: valori: $07d6c1, 62 (3e) BASIC RUN
                     Actionauts located at $084347, Bank 66 (42), run address: valori: $084347, 66 (42) BASIC RUN
                   Addicta Ball located at $087cf8, Bank 67 (43), run address: valori: $087cf8, 67 (43) BASIC RUN
                      Adrenalin located at $08da08, Bank 70 (46), run address: valori: $08da08, 70 (46) BASIC RUN
     Advanced Pinball Simulator located at $0912bf, Bank 72 (48), run address: valori: $0912bf, 72 (48) BASIC RUN
                  Adventureland located at $0966ea, Bank 75 (4b), run address: valori: $0966ea, 75 (4b) BASIC RUN
 Adventures of Barsak the Dwarf located at $09f95a, Bank 79 (4f), run address: valori: $09f95a, 79 (4f) BASIC RUN
Adventures of Basildon Bond, Th located at $0a3458, Bank 81 (51), run address: valori: $0a3458, 81 (51) BASIC RUN
                 Africa Gardens located at $0a8d88, Bank 84 (54), run address: valori: $0a8d88, 84 (54) BASIC RUN
                      Agent UOP located at $0aca78, Bank 86 (56), run address: valori: $0aca78, 86 (56) BASIC RUN
                      Agent USA located at $0b83c2, Bank 92 (5c), run address: valori: $0b83c2, 92 (5c) BASIC RUN
       Agent X II (Part 1) (J1) located at $0bd6d3, Bank 94 (5e), run address: valori: $0bd6d3, 94 (5e) BASIC RUN
       Agent X II (Part 2) (J1) located at $0c3449, Bank 97 (61), run address: valori: $0c3449, 97 (61) BASIC RUN
                    Air Support located at $0c80b3, Bank 100 (64), run address: valori: $0c80b3, 100 (64) BASIC RUN
                     Airwolf II located at $0cc5a7, Bank 102 (66), run address: valori: $0cc5a7, 102 (66) BASIC RUN
                        Airwolf located at $0d21a8, Bank 105 (69), run address: valori: $0d21a8, 105 (69) BASIC RUN
                  Alcatraz (J1) located at $0d6e4a, Bank 107 (6b), run address: valori: $0d6e4a, 107 (6b) BASIC RUN
Alcazar - The Forgotten Fortres located at $0d9faf, Bank 108 (6c), run address: valori: $0d9faf, 108 (6c) BASIC RUN
   Alien (Argus Press Software) located at $0df1dd, Bank 111 (6f), run address: valori: $0df1dd, 111 (6f) BASIC RUN
     Alien 8 (Rod & Emu - 2019) located at $0e383c, Bank 113 (71), run address: valori: $0e383c, 113 (71) BASIC RUN
                         MidRes located at $0eaf9b, Bank 117 (75), run address: valori: $0eaf9b, 117 (75) $0550
adidas Championship Tie Break ( located at $0faa45, Bank 125 (7d), run address: valori: $0faa45, 125 (7d) BASIC RUN
                          basic located at $101437, Bank 128 (80), run address: valori: $101437, 128 (80) $0040
             breakthru-2nd-fire located at $104edf, Bank 130 (82), run address: valori: $104edf, 130 (82) BASIC RUN
                   chop-def-exo located at $10ba90, Bank 133 (85), run address: valori: $10ba90, 133 (85) BASIC RUN
                       cruncher located at $10e6b0, Bank 135 (87), run address: valori: $10e6b0, 135 (87) BASIC RUN
                       delux di located at $110ca7, Bank 136 (88), run address: valori: $110ca7, 136 (88) BASIC RUN
                       dir-mast located at $114a07, Bank 138 (8a), run address: valori: $114a07, 138 (8a) BASIC RUN
               dropzone-def-exo located at $1188d1, Bank 140 (8c), run address: valori: $1188d1, 140 (8c) BASIC RUN
                     exolon-exo located at $12179c, Bank 144 (90), run address: valori: $12179c, 144 (90) BASIC RUN
                     fw-def-exo located at $1279e6, Bank 147 (93), run address: valori: $1279e6, 147 (93) BASIC RUN
           green-beret-2nd-fire located at $12b9c4, Bank 149 (95), run address: valori: $12b9c4, 149 (95) BASIC RUN
                       make dir located at $134870, Bank 154 (9a), run address: valori: $134870, 154 (9a) BASIC RUN
                         mood25 located at $138802, Bank 156 (9c), run address: valori: $138802, 156 (9c) BASIC RUN
                   ninja-spirit located at $13e3de, Bank 159 (9f), run address: valori: $13e3de, 159 (9f) BASIC RUN
                 ninja dest-exo located at $145553, Bank 162 (a2), run address: valori: $145553, 162 (a2) BASIC RUN
                       pro text located at $14b69f, Bank 165 (a5), run address: valori: $14b69f, 165 (a5) BASIC RUN
     rambo-first-blood-2nd-fire located at $14edb8, Bank 167 (a7), run address: valori: $14edb8, 167 (a7) BASIC RUN
                            ry2 located at $157f51, Bank 171 (ab), run address: valori: $157f51, 171 (ab) BASIC RUN
                       sprite e located at $164750, Bank 178 (b2), run address: valori: $164750, 178 (b2) BASIC RUN
               wizball-2nd-fire located at $166f12, Bank 179 (b3), run address: valori: $166f12, 179 (b3) BASIC RUN
                       wolf-def located at $171908, Bank 184 (b8), run address: valori: $171908, 184 (b8) BASIC RUN

Cartridge size 2048k , unused 544718 bytes / 2144 block(s)

Done! Cartridge saved as 'prg.bin'

If needed, you can convert it to Gmod3 crt with cartconv from VICE:
    cartconv -t gmod3 -i 'prg.bin' -o 'prg.crt'
and run it in VICE with:
    x64sc -cartcrt 'prg.crt'

and then

C:\PSDK3v2\MinGW\msys\1.0\home\crystal\zarko\main>cartconv -t gmod3 -i prg.bin -o prg.crt
c64 input_filenames: 1 output_filenames: 1
loadfile_size: 200000
Input file: prg.bin
Output file: prg.crt
Conversion from binary format to C64 GMod3 .crt successful.

I used python 3.10.11 for windows

image

zitev commented 1 year ago

@crystalct thank you for details. Is it not possible to create a multimenu card? In the case of the C264 magic cart, the generator can create a 2MB image using a multi-menu method, so there is no 62 file limit. I created a similar config file in which I defined the menus and associated programs, but the process is not the same according to them... :/

crystalct commented 1 year ago

i never used multimenu..... i will

crystalct commented 9 months ago

I confirm it... it's possible to create a multimenu card...