Post subject: Joystick ports
Joined: 11/18/2017
Posts: 3
SaxxonPike wrote:
I did some playing around with the C64 core tonight, specifically the disk code. A good number of fastloaders and copy protections work. Some do not. - Unformatted track checks seem to work fine. Shamus is one such game. - Fat tracks (one form of Electronic Arts protection) work fine. Adventure Construction Set is one such game. - Vorpal is hit or miss. The games that work consistently work, the games that do not, do not. For those of you unfamiliar with the system... Disk games easy start guide: - At the READY prompt, type LOAD"*",8,1. The " is mapped to shift-2 and the * is mapped to ] to stay relative to the physical layout of a C64. - If READY shows up again with a blinking cursor, the game is not an auto-loader, so you have to type RUN and press enter. It will commence loading. Tape games easy start guide: - At the READY prompt, type LOAD and press Enter. We force Play to be pressed, so it should immediately begin to load the program on the tape. Things to remember: - The C64 has two joystick ports. Some games require port 1. Some games require port 2. If your input doesn't seem to be working, switch ports. - Games that are published on magnetic media have very slow access times. Be patient with them. - Cartridges require no intervention; they will load immediately. It also occurred to me we lack a soft and hard reset. That's priority one. Followed by getting better disk and tape support. We still have quite a few games that aren't loading yet.
Dear SaxxonPike, you wrote on TASVideos discussion board: Things to remember: - The C64 has two joystick ports. Some games require port 1. Some games require port 2. If your input doesn't seem to be working, switch ports. I use the version 1.13.1 June 25, 2017 on WinXP 64 emulation How can I switch between the ports (Joystick1/Joystick2)? Thanks in advance. Kind Regards, Anna
Alyosha
He/Him
Editor, Emulator Coder, Expert player (3823)
Joined: 11/30/2014
Posts: 2832
Location: US
^ I think what you want is Config -> Controllers -> Player 2. Just assign some hotkey's for player 2 to use.
Joined: 11/18/2017
Posts: 3
Alyosha wrote:
^ I think what you want is Config -> Controllers -> Player 2. Just assign some hotkey's for player 2 to use.
Thank you for the answer, Alyosha. Maybe I did not understand everything. Config > Hotkeys... not show me any field to assign for Player1/2? Please can you give me more details? [URL=http://www.directupload.net][/URL]
Alyosha
He/Him
Editor, Emulator Coder, Expert player (3823)
Joined: 11/30/2014
Posts: 2832
Location: US
Config -> Controllers -> Player 2 You should see this:
Joined: 11/18/2017
Posts: 3
Alyosha wrote:
Config -> Controllers -> Player 2 You should see this:
Thanks again. Yes, I see the settings for the Player 2 but how can I assign the hotkeys?
Alyosha
He/Him
Editor, Emulator Coder, Expert player (3823)
Joined: 11/30/2014
Posts: 2832
Location: US
Click on the empty white box next to "P2 Up" etc. It should turn light blue. Then press the key you want to assign.
Joined: 7/17/2012
Posts: 544
Location: Switzerland
Bizhawk 0.0.0.1914 I tried many games of each format, always the same problems. The only format that starts is the tape format, when we ignore the error message. But it's impossible to record a movie because the error prevents it. 1942 (Europe), Tape HawkFile bound E:\EMU\Commodore 64\Commodore - 64 (Tapes)\1942 (Europe)\1942 (Europe).tap ROM was not a multiple of 1024 bytes, and not a recognized header size: 281. Assume it's purely ROM data. Game was not in DB. CRC: A9F345F2 MD5: E488774C85D7A4B35214ED129FB14417 Core reported BoardID: "Tape Drive" Exception error: https://pastebin.com/X9RBb7Nn Batman - The Movie, CRT HawkFile bound E:\EMU\Commodore 64\Commodore C64 [TOSEC v2012-04-23]\Games\Commodore C64 - Games - [CRT] (TOSEC-v2012-04-14_CM)\Batman - The Movie (1989)(Ocean Software)\Batman - The Movie (1989)(Ocean Software).crt ROM was not a multiple of 1024 bytes, and not a recognized header size: 320. Assume it's purely ROM data. Game was not in DB. CRC: 390B7300 MD5: 64B76B532E8AF765A8107E1642ACEEE6 Drag Race Eliminator, d64 HawkFile bound E:\EMU\Commodore 64\Commodore C64 [TOSEC v2012-04-23]\Games\Commodore C64 - Games - [D64] (TOSEC-v2012-04-14_CM)\Drag Race Eliminator (1987)(Family Software)\Drag Race Eliminator (1987)(Family Software).d64 ROM was not a multiple of 1024 bytes, and not a recognized header size: 768. Assume it's purely ROM data. Game was not in DB. CRC: CB8422C0 MD5: 37EA36C8D79AF91D27665C37325330E4 Cauldron, g64 HawkFile bound E:\EMU\Commodore 64\Commodore C64 [TOSEC v2012-04-23]\Games\Commodore C64 - Games - [G64] (TOSEC-v2011-09-07_CM)\Cauldron (1985)(Palace Software)\Cauldron (1985)(Palace Software).g64 ROM was not a multiple of 1024 bytes, and not a recognized header size: 944. Assume it's purely ROM data. Game was not in DB. CRC: 87301F6D MD5: 4BC9A9637A06375B4B25D4EF8EC78585 Cosmic-Journey, PRG HawkFile bound E:\EMU\Commodore 64\Commodore C64 [TOSEC v2012-04-23]\Games\Commodore C64 - Games - [PRG] (TOSEC-v2012-04-14_CM)\Cosmic-Journey (19xx)(-).zip|Cosmic-Journey (19xx)(-).prg ROM was not a multiple of 1024 bytes, and not a recognized header size: 171. Assume it's purely ROM data. Game was not in DB. CRC: 8DA6219F MD5: DF670A2D3BCA11851924E7448E870F3F
My Citra 3DS rerecording movie files test repositery: https://cutt.ly/vdM0jzl Youtube playlist "Citra Tests": https://cutt.ly/AdM0wg9 http://www.youtube.com/user/phoenix1291
Alyosha
He/Him
Editor, Emulator Coder, Expert player (3823)
Joined: 11/30/2014
Posts: 2832
Location: US
I fixed a couple bugs in C64, including the exceptions above. I would encourage anyone interested in C64 to download the dev build and test things out and make sure there are no regressions.
Joined: 7/17/2012
Posts: 544
Location: Switzerland
Thanks Alyosha, I will test the latest release in the next days! EDIT: I've test some games (more or less the list I made in my previous post), it seems to be ok. (not related with C64 stuff, but will Tower Topler on A7800 be fixed one day or another? I saw that you have implemented a NTSC and Pal filter for Tower Topler and Jinks) Thanks for all your work Alyosha!
My Citra 3DS rerecording movie files test repositery: https://cutt.ly/vdM0jzl Youtube playlist "Citra Tests": https://cutt.ly/AdM0wg9 http://www.youtube.com/user/phoenix1291
Alyosha
He/Him
Editor, Emulator Coder, Expert player (3823)
Joined: 11/30/2014
Posts: 2832
Location: US
phoenix1291 wrote:
Thanks Alyosha, I will test the latest release in the next days! EDIT: I've test some games (more or less the list I made in my previous post), it seems to be ok. (not related with C64 stuff, but will Tower Topler on A7800 be fixed one day or another? I saw that you have implemented a NTSC and Pal filter for Tower Topler and Jinks) Thanks for all your work Alyosha!
I have code in there as a stub, it doesn't actually do anything. I didn't research what was needed since I wasn't that interested and wanted to move on to other things. So, if someone handed me what I needed to do to get those games to look right, I would implement it, but otherwise no.
Joined: 7/17/2012
Posts: 544
Location: Switzerland
Thanks for the answer Alyosha I also noticed that having the keys for player 1 and player 2 on the same buttons (I did it for simplicity, in case a game requires playing with the second player, for example) could cause some problems in some game (freeze, pause, etc). Moon Patrol (Moon Patrol (1983)(Atari).crt SHA1: B5F5F296D4E50BF514096508A8ECF5ADF4DFFCEB) directions and jump work well, but the P1 and P2 buttons do nothing. Would anyone have any advice on "the best" configuration in "sync settings"? VIC-type: "Pal", "Ntsc", "NtscOld", "Drean"? SID: "OldR2", "OldR3", "OldR4AR", "NewR5"? Tape Drive: "None", Commodore1530"? Disk Drive Type: "None", "Commodore1541", "Commodore1541II"? I personaly use Ntsc or Pal, OldR2, Commodore1530, Commodore1541II. but it's not the "best configuration" I think.
My Citra 3DS rerecording movie files test repositery: https://cutt.ly/vdM0jzl Youtube playlist "Citra Tests": https://cutt.ly/AdM0wg9 http://www.youtube.com/user/phoenix1291
Alyosha
He/Him
Editor, Emulator Coder, Expert player (3823)
Joined: 11/30/2014
Posts: 2832
Location: US
phoenix1291 wrote:
Moon Patrol (Moon Patrol (1983)(Atari).crt SHA1: B5F5F296D4E50BF514096508A8ECF5ADF4DFFCEB) directions and jump work well, but the P1 and P2 buttons do nothing.
Fixed moon patrol.
Joined: 7/17/2012
Posts: 544
Location: Switzerland
Alyosha wrote:
Fixed moon patrol.
Thanks, I will test when a build with this fix is released. In the next days, I will continue testing some games. Don't know if it's a bad dumps (I've tested 2 differents) or emulation bug, but R-Type, first time, the first boss don't appear, so I was stuck at the end of level one. Second time, the first boss appear and all was ok, but the second boss doesn't appear this time and I was stuck here.
My Citra 3DS rerecording movie files test repositery: https://cutt.ly/vdM0jzl Youtube playlist "Citra Tests": https://cutt.ly/AdM0wg9 http://www.youtube.com/user/phoenix1291
Emulator Coder
Joined: 6/8/2005
Posts: 236
Location: Madison, Wisconsin
phoenix1291 wrote:
Thanks for the answer Alyosha I also noticed that having the keys for player 1 and player 2 on the same buttons (I did it for simplicity, in case a game requires playing with the second player, for example) could cause some problems in some game (freeze, pause, etc). Moon Patrol (Moon Patrol (1983)(Atari).crt SHA1: B5F5F296D4E50BF514096508A8ECF5ADF4DFFCEB) directions and jump work well, but the P1 and P2 buttons do nothing. Would anyone have any advice on "the best" configuration in "sync settings"? VIC-type: "Pal", "Ntsc", "NtscOld", "Drean"? SID: "OldR2", "OldR3", "OldR4AR", "NewR5"? Tape Drive: "None", Commodore1530"? Disk Drive Type: "None", "Commodore1541", "Commodore1541II"? I personaly use Ntsc or Pal, OldR2, Commodore1530, Commodore1541II. but it's not the "best configuration" I think.
Having both tape and disk devices connected simultaneously shouldn't cause any issues. Of course you will want a tape drive enabled when running tape games and so on. NTSC vs NTSCOld: Between these two, avoid using the 'old' setting. There are some very, very old demos and software that will display visual weirdness with the new timing, but it's all pretty much written in 1982- the standard NTSC setting is the vast majority of NTSC systems and most interrupt tricks rely on there being 65x263 clocks per frame as opposed to 64x262 (old). In addition, the regular NTSC setting is also very slightly faster. Drean: A C64 system was manufactured for Argentina and actually has the fastest clock available, and also has 65x312 clocks per frame - essentially some kind of hybrid between NTSC and PAL timing to the video chip. This will mess with PAL/NTSC autodetection routines (most of them don't account for this kind of system) but it may be possible for some games to actually perform better on this kind of system. It's pretty rare to obtain one of these for real though. SID type doesn't matter, ideally there would be different filter settings for them all, but really the only difference it will make to the system is Old vs New (6581 vs 8580) because the way the envelopes work is very slightly different and, since envelopes can be read by the system, have the potential to affect any games that rely on reading that register. I suspect this is *really rare* but I recall stumbling across one game that used one of the SID oscillators to generate a wave form which was used to derive vertical sprite positions. Commodore 1541(II): These just change the kind of disk drive ROM to expect. Almost every fast loader works with the original 1541 ROM, but the 1541-II ROM fixes some bugs (and might as a result conflict with certain fast loaders). Try both with your game, but if you want something free of hassle, the safe bet is the plain 1541.
Joined: 7/17/2012
Posts: 544
Location: Switzerland
Thanks for the explanations SaxxonPike! Don't know if it's a bug or just because of a possible bad dump? Link to video
My Citra 3DS rerecording movie files test repositery: https://cutt.ly/vdM0jzl Youtube playlist "Citra Tests": https://cutt.ly/AdM0wg9 http://www.youtube.com/user/phoenix1291
Alyosha
He/Him
Editor, Emulator Coder, Expert player (3823)
Joined: 11/30/2014
Posts: 2832
Location: US
I have a .crt version of moon patrol with MD5: 88C7544BF0121C0042A9B7F5619E8191 As of the most recent commit, I do not see that glitch.
Joined: 7/17/2012
Posts: 544
Location: Switzerland
CRT too. BizHawk 0.0.0.1972 Moon Patrol (Moon Patrol (1983)(Atari).crt (MD5) 4BEF4F53888506F1F1176363E58DE3CD (Version previously used) Moon Patrol (USA, Europe).crt (MD5) 88C7544BF0121C0042A9B7F5619E8191 But with this version, it's the same for me. Tested with Ntsc, OldR2, Commodore1530, Commodore1541II and Pal, OldR2, Commodore1530, Commodore1541II settings. I've uploaded movie files, if it can help. Link to video
My Citra 3DS rerecording movie files test repositery: https://cutt.ly/vdM0jzl Youtube playlist "Citra Tests": https://cutt.ly/AdM0wg9 http://www.youtube.com/user/phoenix1291
Alyosha
He/Him
Editor, Emulator Coder, Expert player (3823)
Joined: 11/30/2014
Posts: 2832
Location: US
your movie file desync in 0.0.0.1978 http://tasvideos.org/userfiles/info/44400275527937644 here is a movie file that makes it up to that point without glitches, maybe see if you can recreate the glitchiness at this point.
Joined: 7/17/2012
Posts: 544
Location: Switzerland
Thanks Alyosha! No more bugs with BizHawk 0.0.0.1981 (in the classic two loops to beat the game).
My Citra 3DS rerecording movie files test repositery: https://cutt.ly/vdM0jzl Youtube playlist "Citra Tests": https://cutt.ly/AdM0wg9 http://www.youtube.com/user/phoenix1291
Joined: 7/17/2012
Posts: 544
Location: Switzerland
Probably a silly question, again, but how to use fastloaders?
My Citra 3DS rerecording movie files test repositery: https://cutt.ly/vdM0jzl Youtube playlist "Citra Tests": https://cutt.ly/AdM0wg9 http://www.youtube.com/user/phoenix1291
DrD2k9
He/Him
Editor, Judge, Expert player (2220)
Joined: 8/21/2016
Posts: 1090
Location: US
phoenix1291 wrote:
Probably a silly question, again, but how to use fastloaders?
I asked about fastloaders back in July. SaxxonPike tested a few with the core and said that some worked, but I don't believe specifics on how to use them were detailed. I had suggested it might be implementable as an optional part of the firmware setup (assuming this is possible from a coding perspective).
J
Joined: 9/8/2017
Posts: 6
Something that came up on IRC today, the TAStudio state sizes for C64 games seem unusually large for a machine which has 64kB RAM. I tested a few roms, they seem to use either 0.26MB, 1.04MB or 4.26MB: 0.26MB Action Biker (1985)(Mastertronic).tap [841kB] Attack of the Mutant Camels (1983)(Llamasoft).crt [8.07kB] Attack of the Mutant Camels (1983)(Llamasoft).tap [145kB] Batman - The Movie (1989)(Ocean Software).crt [129kB] Batman - The Movie (1989)(Ocean Software)(Side A).tap [1.55MB] Choplifter (1982)(Broderbund).crt [16.0kB] Close Encounters (1994)(Mr. Computer).crt [8.07kB] Decathlon (1983)(Activision).crt [16.0kB] Double Dragon (1989)(Melbourne House).crt [128kB] Double Dragon (1989)(Melbourne House).tap [1.33MB] Shadow of the Beast (1990)(Ocean Software).crt [256kB] Spy Hunter (1983)(U.S. Gold).crt [16.0kB] Spy Hunter (1983)(U.S. Gold).tap [246kB] Toki (1991)(Ocean Software).crt [128kB] Wonderboy (1987)(Activision).crt [64.1kB] 1.04MB Attack of the Mutant Camels (1983)(Llamasoft).d64 [170kB] * Attack of the Mutant Camels (1983)(Llamasoft).t64 [7.41kB] Double Dragon 1 (1989)(Melbourne House).d64 [170kB] Ghostbusters.crt [33kB] Leaderboard Golf (1986)(Access Software).crt [33kB] Space Taxi (1984)(Muse Software).d64 [170kB] Spy Hunter (1983)(U.S. Gold).d64 [170kB] 4.26MB Cabal_(NOS)_(Ocean_1989).crt [208kB] Jumpman_-_Space_Taxi.crt [658kB] From that relatively small sample size, seems like any floppy disk image will use 1.04MB, any (raw) tape image will use 0.26MB and most cartridges will use 0.26MB, but some use 1.04MB, few even 4.26MB. Any idea why or how? * There're two tape formats for C64, .tap (which is a raw tape file, shows up as a supported format in BizHawk's Open ROM dialog) and .t64 (which was originally designed for C64s, doesn't show up as supported but still works, it just loads as a floppy image) From the cartridge ROMs I tested, one didn't seem to work, it just booted into normal C64 startup. Tested on fresh Vice, worked fine: "Leaderboard Golf (1986)(Access Software).crt"
Joined: 7/17/2012
Posts: 544
Location: Switzerland
DrD2k9 wrote:
I had suggested it might be implementable as an optional part of the firmware setup (assuming this is possible from a coding perspective).
Yeah, that would be the easiest, actually.
My Citra 3DS rerecording movie files test repositery: https://cutt.ly/vdM0jzl Youtube playlist "Citra Tests": https://cutt.ly/AdM0wg9 http://www.youtube.com/user/phoenix1291
Alyosha
He/Him
Editor, Emulator Coder, Expert player (3823)
Joined: 11/30/2014
Posts: 2832
Location: US
J wrote:
Something that came up on IRC today, the TAStudio state sizes for C64 games seem unusually large for a machine which has 64kB RAM. I tested a few roms, they seem to use either 0.26MB, 1.04MB or 4.26MB: From the cartridge ROMs I tested, one didn't seem to work, it just booted into normal C64 startup. Tested on fresh Vice, worked fine: "Leaderboard Golf (1986)(Access Software).crt"
I have no idea about the various state sizes, 4MB seems way too much though. Leaderboard Golf was incorrectly identified by BizHawk's ROM Loader as having a 128 byte header. It then unhelpfully truncated the actual header before sending it to the core, where it couldn't be processed. Fixing that made the game boot but it crashed before reaching the title screen, haven't tracked down why yet. Fiendish Freddy's Big Top o' Fun + International Soccer + Flimbo's Quest + Klax (Europe) (C 64 Games System) is doing some stuff with the CIA ports that is not being handled correctly, but I don't know how to fix it yet. EDIT: Leaderboard is gettng icorrect NMI's from CIA2. Have to track down what the reason is. EDIT2: For some reason Leaderboard was using the serial port and the core was sending intrrupts related to it incorrectly. For now I just disabled them completely since the current implementation was wrong and I don't think any games use them that I know of (but as always there probably is one out there somewhere.) Anyway leaderboard works now.
Joined: 7/17/2012
Posts: 544
Location: Switzerland
I use this version of BizHawk Target: Renegade (Target Renegade (1988)(Imagine Software)[cr BB].d64 MD5: 917ED2B234157C3137560A8AF93526D4) has graphical glitches: Link to video Donkey Kong 2016 arcade remake by Oxyron (kong_arcade.prg MD5:5CC48D4804A70B05F02FB726370F0555) has graphical artifacts in the borders: Is it normal that in this version of Midnight Resistance 2-3 levels are missing? Besides, the end is wrong. Midnight Resistance (1990)(Ocean Software)[cr Crazy].d64 MD5: FE427C34ABCA8CCC387CECC78C1F48D0 Link to video In the same way as the Donkey Kong remake, Ghouls'n Ghosts (Ghouls 'n Ghosts (1989)(U.S. Gold)[cr 451][t +3 451].d64 MD5: 330CF1425EF831AF7F2208B4044F754C) also has graphic artifacts, but only under the weapon icon: Golden Axe: I tested several versions of the game including: Golden Axe (1990)(Virgin Games)[cr Dina-DNS].d64 MD5: 0CBF9F34CF23454C79F99A92F4BD567D Golden Axe (1990)(Virgin Games)[t 11M X-Ray].d64 MD5: 9406C2B77273B698959D83D5AA9FDD3A Golden Axe (Europe).zip (TAP) MD5: 6612ABA3DBCA1FB8423AF41A6A190541 Golden Axe (1990)(Virgin Games)(Side A).tap MD5: CBA859BC5CA7C29C6F0FC6B88CF9117A and Golden Axe (1990)(Virgin Games)(Side B).tap MD5: B43469CDD221747111787F727188B438 And I still have the same problem: the player's sprite is not displayed correctly, only the top appears.
My Citra 3DS rerecording movie files test repositery: https://cutt.ly/vdM0jzl Youtube playlist "Citra Tests": https://cutt.ly/AdM0wg9 http://www.youtube.com/user/phoenix1291