Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > CSDb Discussions > C64 Emulator Bugs
2007-06-24 03:16
chatGPZ

Registered: Dec 2001
Posts: 11386
C64 Emulator Bugs

after stumbling about a bunch of VICE bugs myself in the last couple of days i have decided to compile a list with issues current emulators have. the goals for this are

- make people aware that emulators are by far not perfect (yet?)
- make it easier for emulator authors to improve the emulators, by showing problematic programs and possibly provide simple testcases
- allow c64 coders to implement emulator detection if desired

so well, check this: http://hitmen.c02.at/files/docs/c64/c64_emulator_bugs.txt

help welcomed :)
 
... 240 posts hidden. Click here to view all posts....
 
2007-10-10 12:03
assiduous
Account closed

Registered: Jun 2007
Posts: 343
Quote:
TRC+TBI Intro 10 doesn't seem to work on any emulator.

Hoxs64 displays it correctly now, the intro works in v1.0.5.0+.
2007-10-10 12:35
Rubi
Account closed

Registered: Apr 2002
Posts: 48
Quote: @rubi: ahh yeah ok, nice to know. How is a DMA VICII presented when it's executed in the middle of an RMW-opcode?

See this example (rasterline 59 pixel 5 in my testprog with maincpu clock 8868578 on the first instruction):
.08C1 059 005    8868578  EE 21 D0   INC $D021 A=$08 X=$11 Y=$01 SP=$E6
*** DMA VICII    8868584  43
.08C4 059 054    8868627  EE 21 D0   INC $D021 A=$08 X=$11 Y=$01 SP=$E6

The first inc instructions is executed completely, then the DMA stops the CPU for three cycles (next opcode inc starts with reading bus access) plus 40 DMA cycles so the DMA takes 43 cycles from the CPU.

Now see another example (rasterline 67):
.08C4 067 001    8869078  EE 21 D0   INC $D021 A=$08 X=$1C Y=$01 SP=$E6
.08C7 067 007    8869084  EE 21 D0   INC $D021 A=$08 X=$1C Y=$01 SP=$E6
*** DMA VICII    8869088  41
.08CA 067 054    8869131  EE 21 D0   INC $D021 A=$08 X=$1C Y=$01 SP=$E6
.08CD 067 060    8869137  EE 21 D0   INC $D021 A=$08 X=$1C Y=$01 SP=$E6


Here the INC writes to the bus when the DMA starts pulling BA on low, so the DMA stops the CPU after this instruction and the DMA takes 41 cycles from the CPU.
As you can see there's no easy way to see if an instruction is completely executed before the DMA or not.

Reading the debug will be even harder with sprite DMA (there's no clock output for sprite DMA right now) with some sprites disabled leaving cycles for the CPU but not enough for a complete instruction. See this example:

.08CD 105 051   79868994  EE 21 D0   INC $D021 A=$08 X=$50 Y=$01 SP=$E6
SDMA 1
SDMA 3
SDMA 5
SDMA 7
*** DMA VICII   79868999  16
.08D0 106 010   79869016  EE 21 D0   INC $D021 A=$08 X=$50 Y=$01 SP=$E6


2007-10-14 15:21
Ed

Registered: May 2004
Posts: 173
I've noticed a small but quite disturbing bug that comes with the Vice 1.22 and the Viceplus emulator.
When adjusting the volume (to for instance a low-setting) and entering full-screen mode and then re-entering the windows-mode, the volume-setting is set back to full.

I have not tested whether or not this depends on the main volume setting on windows, nevertheless it is disturbing.

Other than that, an ok feature which every emulator should have incorporated!
2007-11-02 05:51
Pouso-G
Account closed

Registered: Aug 2005
Posts: 5
I have this volume problem also. And there is still the prob with the True Drive Emulation when loading PRGs...
2007-11-05 07:43
Rubi
Account closed

Registered: Apr 2002
Posts: 48
Quote: I have this volume problem also. And there is still the prob with the True Drive Emulation when loading PRGs...

The volume problem will be fixed next release.
What exactly do you mean by "prob with the True Drive Emulation when loading PRGs"?
2007-11-05 11:12
MagerValp

Registered: Dec 2001
Posts: 1078
Quote: The volume problem will be fixed next release.
What exactly do you mean by "prob with the True Drive Emulation when loading PRGs"?


x64 -truedrive -autostart foo.prg launches with true drive emu disabled. It's disabled to load the prg "fast", but it doesn't re-enable like it does if you autostart a d64.
2007-11-09 12:52
Rubi
Account closed

Registered: Apr 2002
Posts: 48
Quote: x64 -truedrive -autostart foo.prg launches with true drive emu disabled. It's disabled to load the prg "fast", but it doesn't re-enable like it does if you autostart a d64.


Well, VICE handles a prg file as a single file on a disk that is represented by the directory of your host system (see "peripheral settings").

LOAD"$",8
LIST

shows the content of the host directory you are attached to. There is no "true drive emulation" for a disk represented by a directory. And how shall VICE know that you need TDE after you have loaded a prg from the directory. Is is more likely that you want to access another prg in the same directory, so VICE stays on the directory. So I really wouldn't call this a bug.
2007-11-09 15:11
Pouso-G
Account closed

Registered: Aug 2005
Posts: 5
Quote: Also that friggin' annoying bug that un-toggles True Drive Emulation everytime I load a .prg really pisses me off too.

Not a real emulation issue but it's out of my system now :)


I think it would be easier to link that option in the "open file" window as a check box. so you don't have to start a program twice, cause of switching off itself... just an idea i got...
2007-11-15 20:41
iAN CooG

Registered: May 2002
Posts: 3195
[vice] Charlatan/Beyond Force
Charlatan

1st part doesn't work well in Vice 1.22, works in hoxs 1.0.5.x and ccs 2.0/3.4
2007-11-16 11:04
chatGPZ

Registered: Dec 2001
Posts: 11386
Quote: Well, VICE handles a prg file as a single file on a disk that is represented by the directory of your host system (see "peripheral settings").

LOAD"$",8
LIST

shows the content of the host directory you are attached to. There is no "true drive emulation" for a disk represented by a directory. And how shall VICE know that you need TDE after you have loaded a prg from the directory. Is is more likely that you want to access another prg in the same directory, so VICE stays on the directory. So I really wouldn't call this a bug.


i would, if i tell vice to use truedrive emu on commandline, i expect it to use it. end of story. the current behaviour might be acceptable when you DONT explicitly state that truedrive emu should be used, but if you do it isnt.

the same is true for d64 files. whatever nonsense makes vice toggle truedrive emu off/on - it should be possible to disable this.

oh and last not least. when i attach a d81, i want to use 1581 emulation, not 1541 =D
Previous - 1 | ... | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
iAN CooG/HVSC
Mike
Peacemaker/CENSOR/Hi..
MWR/Visdom
psych
t0m3000/hf^boom!^ibx
Acidchild/Padua
E$G/HF ⭐ 7
Guests online: 131
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Coma Light 13  (9.6)
5 Edge of Disgrace  (9.6)
6 What Is The Matrix 2  (9.6)
7 The Demo Coder  (9.6)
8 Uncensored  (9.6)
9 Comaland 100%  (9.6)
10 Wonderland XIV  (9.6)
Top onefile Demos
1 No Listen  (9.6)
2 Layers  (9.6)
3 Cubic Dream  (9.6)
4 Party Elk 2  (9.6)
5 Copper Booze  (9.6)
6 Dawnfall V1.1  (9.5)
7 Rainbow Connection  (9.5)
8 Onscreen 5k  (9.5)
9 Morph  (9.5)
10 Libertongo  (9.5)
Top Groups
1 Performers  (9.3)
2 Booze Design  (9.3)
3 Oxyron  (9.3)
4 Censor Design  (9.3)
5 Triad  (9.3)
Top Original Suppliers
1 Derbyshire Ram  (9.7)
2 Fungus  (9.3)
3 Black Beard  (9.2)
4 Baracuda  (9.2)
5 hedning  (9.1)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.053 sec.