cadaver / siddump Goto Github PK
View Code? Open in Web Editor NEWC64 music debug output utility
C64 music debug output utility
SIDDump V1.08 by Lasse Oorni ([email protected]) and Stein Pedersen Version history: V1.0 - Original V1.01 - Fixed BIT instruction V1.02 - Added incomplete illegal opcode support, enough for John Player V1.03 - Some CPU bugs fixed V1.04 - Improved command line handling, added illegal NOP instructions, fixed illegal LAX to work again V1.05 - Partial support for multispeed tunes V1.06 - Added CPU cycle profiling functionality by Stein Pedersen V1.07 - Support rudimentary line counting for SID detection routines V1.08 - CPU bugfixes Copyright (C) 2005-2020 by the authors. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Hi there!
Been trying to compile SIDdump for my Raspberry Pi4B box (=ARM64/aarch64) that is running on 64bit Ubuntu 20.04.1LTS. It's been my attempt to create a nice little cross-development platform for an old friend of mine who's hopelessly stuck in the C64 era. :-)
Previously I've managed to get i.e. siddasm
to compile and work just fine, but for some reason compiling siddump
brings this kind of error:
$ make
gcc -O3 -Wall -c -o siddump.o siddump.c
siddump.c: In function ‘main’:
siddump.c:245:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
245 | fread(&mem[loadaddress], loadsize, 1, in);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
siddump.c: In function ‘readbyte’:
siddump.c:504:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
504 | fread(&res, 1, 1, f);
| ^~~~~~~~~~~~~~~~~~~~
siddump.c: In function ‘readword’:
siddump.c:512:3: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result]
512 | fread(&res, 2, 1, f);
| ^~~~~~~~~~~~~~~~~~~~
gcc -O3 -Wall -c -o cpu.o cpu.c
gcc -o siddump.exe siddump.o cpu.o
/usr/bin/ld: siddump.o: in function `main':
siddump.c:(.text.startup+0x19c): undefined reference to `pow'
collect2: error: ld returned 1 exit status
make: *** [Makefile:7: siddump.exe] Error 1
Any ideas on where I should start with the bug hunt?
Hi! I'm making a conversion of the 6502 emulator to Java and found a small bug. See https://wiki.nesdev.com/w/index.php/Status_flags
(Also: please say so if there is an issue with converting it to Java, since there is a copyright on this. It's not going to be used commercially anyway.)
Hi! Found another: TXS is different from the other T opcodes in that it does not affect the flags.
I found an undocumented opcode (0xeb) unsupported by siddump in a file named Boing.sid. I looked up the source code of tinysid. This opcode is same as 0xe9 (SBC #imm).
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.