dirkwhoffmann / virtualc64 Goto Github PK
View Code? Open in Web Editor NEWVirtualC64 is a cycle-accurate C64 emulator for macOS
Home Page: https://dirkwhoffmann.github.io/virtualc64
License: GNU General Public License v2.0
VirtualC64 is a cycle-accurate C64 emulator for macOS
Home Page: https://dirkwhoffmann.github.io/virtualc64
License: GNU General Public License v2.0
Some games manually trigger a lightpen interrupt. Implementation is missing yet
Original issue reported on code.google.com by [email protected]
on 12 Dec 2008 at 6:59
Some UI elements do not appear in the expected order.
When hitting TAB, the focus should switch to the next visible UI element
Original issue reported on code.google.com by [email protected]
on 3 Sep 2008 at 1:35
Encountered an issue with text fields that are controlled by a formatter. The
text field keeps the
focus until a *valid* string is entered. Better: Invalid strings should be
discarded.
Original issue reported on code.google.com by [email protected]
on 18 Jan 2009 at 10:48
To do: Check all illegal opcodes against their addressing modes (read,
read-modify-write or write)
Original issue reported on code.google.com by [email protected]
on 7 Jan 2009 at 11:09
build V64 from command line. (coding with a external editor vim, emacs)
Original issue reported on code.google.com by [email protected]
on 30 Apr 2008 at 7:38
Attachments:
Handling of user settings needs to be cleaned up.
Custom colors are not displayed correctly or unsafed
PAL/NTSC value is inconsistent during startup
Original issue reported on code.google.com by [email protected]
on 21 Apr 2008 at 11:28
Code that synchronizes the C64 thread is brittle
Idee: New API functions in VirtualComponent
setSpeedinMhz(float mhz); // negative value for "run as fast as possible"
float getSpeedinMhz;
synchronizeSpeed();
Original issue reported on code.google.com by [email protected]
on 13 Mar 2008 at 8:02
When overtaking another robot, the digital structure always looks the same.
Original issue reported on code.google.com by [email protected]
on 12 Dec 2008 at 12:04
Image is captured in a wrong way (worked in Tiger, changes in Leopard?)
Original issue reported on code.google.com by [email protected]
on 14 Apr 2008 at 10:19
Warpmode is somehow intransparent, because both the user and the virtual
machine can activate it.
Suggestion:
Two internal variables: warpLoad, userWarp
warpMode = 1 iff (loading && warpLoad) || userWarp
Preference panel only affects warpLoad variable
Speed button only affects userWarp variable
Original issue reported on code.google.com by [email protected]
on 27 Apr 2008 at 12:32
Freezes while peeking CIA register dd00
Original issue reported on code.google.com by [email protected]
on 12 Dec 2008 at 1:22
When resizing the window, it can gets much smaller (something is wrong in the
code that tries to
maintain the aspect ration when resizing)
Original issue reported on code.google.com by [email protected]
on 8 Aug 2008 at 7:01
Step into, step over, etc. should only be pushable when the simulator is halted
Original issue reported on code.google.com by [email protected]
on 24 Apr 2008 at 12:45
screen geometry is broken
Original issue reported on code.google.com by [email protected]
on 12 Dec 2008 at 1:30
Problem: The current VC1541 simulation cannot simulate real disk changes.
In a real C64, the disk drive recognizes an ejected disk by continously polling
the write protection LED. To simulate this behaviour, we need to toggle the
protection
LED for a certain amount of time (e.g., half a second).
Original issue reported on code.google.com by [email protected]
on 2 Mar 2008 at 9:50
Game freezes with a black screen
Original issue reported on code.google.com by [email protected]
on 12 Dec 2008 at 1:24
border is drawn too late.
24/25 row mode is probably checked in the wrong cycle
Original issue reported on code.google.com by [email protected]
on 12 Dec 2008 at 6:57
What steps will reproduce the problem?
1.
2.
3.
What is the expected output? What do you see instead?
Please use labels and text to provide additional information.
Original issue reported on code.google.com by [email protected]
on 12 Dec 2008 at 1:23
Fast resets should be more robust:
Idea:
fastReset()
- Check, if reset image is available
- If not, perform a hardReset and create reset image automatically.
- Otherwise quickload reset image
Original issue reported on code.google.com by [email protected]
on 21 Apr 2008 at 11:30
Listener callbacks should be moved to a seperate Objective-C file
Original issue reported on code.google.com by [email protected]
on 13 Mar 2008 at 8:03
Some games (e.g., Fort Apocalypse or QBert) exhibit bitmap errors in the upper
screen area
Original issue reported on code.google.com by [email protected]
on 2 Mar 2008 at 9:45
The PC should be user editable when the emulator is paused
Original issue reported on code.google.com by [email protected]
on 18 Jan 2009 at 10:50
There is a warpLoad variable in both the C64 class and the CPU class
One needs to be eliminated
Original issue reported on code.google.com by [email protected]
on 24 Apr 2008 at 12:57
Goal: Implement the GUI completely in Objective-C
Original issue reported on code.google.com by [email protected]
on 27 Apr 2008 at 6:33
Directory list should fill the entire window
Original issue reported on code.google.com by [email protected]
on 20 Dec 2008 at 3:21
The progress indicator should only be animated when disk data is transfered.
Original issue reported on code.google.com by [email protected]
on 29 Aug 2008 at 4:02
Fullscreen mode needs to be implemented
Original issue reported on code.google.com by [email protected]
on 21 Apr 2008 at 11:19
Joystick icon contains white non-transparant pixels.
Original issue reported on code.google.com by [email protected]
on 1 Sep 2008 at 2:05
On a real C64, a disk can be formatted via
OPEN 1,8,15,"N:TEST,00"
Original issue reported on code.google.com by [email protected]
on 4 May 2008 at 2:53
To reproduce:
Enable warp mode -> Diasable warp mode
Symptom:
It takes more than a second until the C64 runs at its native speed again.
Original issue reported on code.google.com by [email protected]
on 28 Apr 2008 at 4:07
Tasks:
1. Create toolbar in interface builder
2. Cleanup toolbar code
Original issue reported on code.google.com by [email protected]
on 29 Apr 2008 at 8:34
GUI does not update values when changing the CIA chip in pause mode.
Original issue reported on code.google.com by [email protected]
on 22 Dec 2008 at 8:43
Credits.rtf Links to http://www.dirkwhoffmann.de/VirtualC64 which doesn't exist.
Change Link to http://www.dirkwhoffmann.de/software.html or configure webserver
accordingly?
Original issue reported on code.google.com by [email protected]
on 30 Apr 2008 at 4:38
only a white screen is displayed. game seems to run (sound is playing etc.)
Original issue reported on code.google.com by [email protected]
on 10 Dec 2008 at 12:49
Static disturbing noise occures cyclical in sound output.
What steps will reproduce the problem?
-> Play any game (e.g. PACMAN) and listen attentive.
Tested with iMac (Alu, Mid 2007) and MacBook Air under Leopard. The older
version from early
2007 compiled for Tiger didn't have this issue.
The cyclic appearance of the noise may be an indication for some kind of
overflow in the circular
buffer storing the audio samples. Compiling for Tiger an testing again could
exclude a (unlikely)
Leopard-Issue
Original issue reported on code.google.com by [email protected]
on 6 Mar 2008 at 9:17
Loading a tape archive into the emulator allows the user to mount the archive
(as opposed to
flashing it). Unfortunately, mounting a tape archive most certainly causes a
failed assertion along
the way. The attached patch does four things:
* It prevents the emulator from crashing if the user attempts to mount a tape
archive
* It removes the user's ability to mount a tape archive in the first place.
* Alert the user if the archive could not be mounted.
* Fix a minor typo in a comment.
Original issue reported on code.google.com by [email protected]
on 26 Mar 2008 at 8:09
Attachments:
Some callback functions cause an "autoreleased with no pool in place" error.
The functions need to create an own autorelease pool due to multithreading.
Original issue reported on code.google.com by [email protected]
on 2 Mar 2008 at 9:43
The runStop restore combination does not work yet.
NMI is already initiated, but it sill does not work.
I guess, the key combination needs to be held down for some microseconds (use
NSTimer?)
Original issue reported on code.google.com by [email protected]
on 21 Apr 2008 at 11:32
Problem:
reset() changes some internal values without notfifying the listener
Solution:
- Register the listener inside the C64 constructor
- Send messages during reset()
Original issue reported on code.google.com by [email protected]
on 21 Apr 2008 at 11:25
marble madness requires exact cia timing to run.
Original issue reported on code.google.com by [email protected]
on 10 Dec 2008 at 12:48
Broken.
Probably a timing issue or a bug in the VIC implementation
Original issue reported on code.google.com by [email protected]
on 18 Jan 2009 at 10:45
On a real C64, the BA line can is used by the VIC to freeze the CPU.
Will replace the current hack with "dead cycles"
Original issue reported on code.google.com by [email protected]
on 3 Sep 2008 at 4:35
A new background image is created for each virtual machine.
Make it a static variable and create it only once.
Original issue reported on code.google.com by [email protected]
on 27 Apr 2008 at 12:11
Debug messages are currently displayed in a tableview with a somehow
complicated update
mechanism. Needs cleanup and should be handled by a standard textview
Original issue reported on code.google.com by [email protected]
on 21 Apr 2008 at 11:18
code seems buggy. needs cleanup
Original issue reported on code.google.com by [email protected]
on 14 Dec 2008 at 12:33
Class SID uses API functions that are deprecated in Leopard.
Original issue reported on code.google.com by [email protected]
on 11 Mar 2008 at 6:48
Right now, joystick actions are polled whenever the correspondig CIA memory
location is peeked.
This causes a slowdown in some games.
Polling needs to be replaced by a message based implementation.
Original issue reported on code.google.com by [email protected]
on 21 Apr 2008 at 11:23
Need to delete the info string when launching the emulator
Original issue reported on code.google.com by [email protected]
on 18 Jan 2009 at 10:49
In International karate, each fighter is assembled via three sprites.
There is a blank line between the sprites, most probably caused by a VIC.
Might be a simple bug in the Y-stretching of sprites.
Original issue reported on code.google.com by [email protected]
on 1 May 2008 at 7:24
The sanity check inT64Archive::getSizeOfItem() is always true. What's worse is
that the assignment
affects the method's return value, making it wrong in almost all cases. See
attached patch for a fix.
This is probably just a typo but I don't feel comfortable enough to commit this.
Original issue reported on code.google.com by [email protected]
on 26 Mar 2008 at 7:24
Attachments:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.