Alle Klassen und Schnittstellen

Klasse
Beschreibung
File-based driver to create an AAC file.
File-based driver to create an AAC file.
Driver to write into an AAC output stream.
Note: The caller is responsible for closing the output stream
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
This cartridge has a special A000 RAM mode, enabled by setting the Action Replay control byte to 0x22 (ignoring the bank select lines).
Audio output.
 
Audio configuration (frame rate, channels, etc.)
 
 
 
Audio driver to be used in the JavaScript and web assembly version builds.
Audio generating thread which communicates with SIDWrite source over a BlockingQueue.
Audio output operations for exSID_audio_op()
 
 
 
 
 
 
 
 
 
 
File-based driver to create an AVI file.
File-based driver to create an AVI file.
 
 
 
 
Additional binding utilities.
An implementation of the Backwards Non-deterministic Dawg (Directed acyclic word graph) Matching algorithm by Gonzalo Navarro and Mathieu Raffinot.
An implementation of the BNDM algorithm with wildcards ("don't care" symbols).
 
C1541 instance which manages the Floppy CPU and the two VIAs.

Good German documentation on the 1541 floppy can be found at
DieFloppy1541-v4.pdf
or
vc1541_de
Good English ROM listings can be found at
1541dis.html
or
aay1541.txt
 
Connection between the C64 and the floppy disk drive.
 
 
 
 
Commodore 64 emulation core.
 
 
 
 
 
Cartridge base class.
CCS64 cartridge type map
Pseudo directory to display cartridge contents.
Well-known cartridges that can be installed.
 
 
 
 
 
The CharIntMap is a collection to save char to int mappings in.
 
 
SID chip model
Chip selection values for exSID_chipselect()
 
Container for client-specific data.
Clock selection values for exSID_clockselect()
Sound driver to compare emulation with MP3 recording (listen to emulation and MP3 recording in parallel).
 
 
 
Available commands to clients
 
 
 
Service of the configuration database.
Configuration types offered by JSIDPlay2
Configuration of the UI version of JSIDPlay2.
 
Default configuration to be included and used in the JavaScript and web assembly version builds.
 
 
 
 
 
Main class of the console based JSIDPlay2.
Unused configuration just for API conformity
 
 
 
 
 
Automation for the Player.
 
 
 
 
Ensure a maximum number of requests in parallel (server overload protection).
 
 
 
 
 
 
Implementation of a C1530 Datasette.
Controls of the datasette.
 
Return value of method fetchGap.
 
 
 
 
 
 
 
 
 
 
Scans a deploy directory on server startup for *.deploy marker files.
 
 
 
 
 
Real directory of a floppy disk.
 
Classify SidDump table cells for CSS styling.
 
Local directory name.
 
 
 
 
 
When nobody is supplying real chips for IO1/IO2, the reads read stale bus data from VIC's previous memory interaction.
This class represents a disconnected parallel port.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Support of disk images.
 
CBM DOS 2.6 Input Processor Error Codes.
 
 
DownloadManager downloads a large file from a server.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
A 15-bit counter is used to implement the envelope rates, in effect dividing the clock to the envelope counter by the currently selected rate period.
A 15-bit counter is used to implement the envelope rates, in effect dividing the clock to the envelope counter by the currently selected rate period.
The envelope state machine's distinct states.
The envelope state machine's distinct states.
 
 
 
Event scheduler (based on alarm from Vice).
 
C64 system runs actions at system clock high and low states.
Change the usage message to represent a map for web worker event name in the JSON schema.
Fast EventScheduler, which maintains a linked list of Events.
Change the usage message to represent a JSON schema to validate parameters of the web worker events.
 
Change the usage message to represent web worker events.
We emulate this cartridge in the ON mode.
The ExportedApi class provides the external API that allows interaction with the C64 SID chip emulator and audio playback.
Provides a set of utility functions that can be accessed from JavaScript or WebAssembly builds generated by TeaVM.
Exported events to control the emulator (JavaScript calls WebWorker functions)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
FakeStereo mode uses two chips using the same base address.
 
 
Strategies to extend disk image to 40 tracks.
The audio output stage in a Commodore 64 consists of two STC networks, a low-pass filter with 3-dB frequency 16kHz followed by a high-pass filter with 3-dB frequency 16Hz (the latter provided an audio equipment input impedance of 1kOhm).
The audio output stage in a Commodore 64 consists of two STC networks, a low-pass filter with 3-dB frequency 16kHz followed by a high-pass filter with 3-dB frequency 16Hz (the latter provided an audio equipment input impedance of 1kOhm).
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Local file (filePath) or an Assemble64 file (filePath, itemId, categoryId).
 
 
 
 
 
 
 
SID filter base class
The SID filter is modeled with a two-integrator-loop biquadratic filter, which has been confirmed by Bob Yannes to be the actual circuit used in the SID chip.
 
Filter based on Dag Lem's 6581 filter from reSID 1.0 prerelease.
 
Filter for 8580 chip based on a simple linear approximation of the FC control.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
This cartridge has a freeze button.
This cartridge has a freeze button.
 
Created by hsyec_000 on 2015/6/11.
 
Working principle:
 
This currently unused class makes it possible to create/fill the fingerprinting database on a remote machine running JSIDPlay2Server.
This data source is the interface to the fingerprinting database.
Send WAV to a server to identify a tune by WhatsSID.
 
File-based driver to create a FLAC file.
Driver to write into an FLAC output stream.
Note: The caller is responsible for closing the output stream
flash040core.c - (AM)29F0[14]0(B) Flash emulation.
 
 
 
 
Specific floppy type.
 
Allows FLV file write and as an alternative creating a real-time video stream via RTMP protocol e.g.
File-based driver to create a FLV file.
Driver to upload real-time video stream via RTMP protocol to a web server.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Group Coded Recording.
 
 
 
 
 
 
"GMod2" Cartridge (GMod2)
Thanks to Wilfred for his excellent explanation:
Support of HARDSID USB devices like HardSID Uno, HardSID UPlay, and HardSID4U.
 
FakeStereo mode uses two chips using the same base address.
 
 
 
The HardwareEnsemble contains a C64 computer and additional peripherals.
It is meant as a complete hardware setup (C64, tape/disk drive, printer, and more).
Hardware model return values for exSID_hwmodel()
 
Created by hsyecheng on 2015/6/12.
 
 
 
 
Fake HEAD request to return unknown content-length.
 
 
 
 
 
 
 
 
 
Some system properties to fine-tune JSIDPlay2 without touching the configuration.
 
 
 
 
 
 
 
IEC Bus Implementation.
 
Used by auto-detection algorithms to override several emulation settings
Exports to JavaScript.
Exports to JavaScript.
Call-back how to deal with 40 tracks images.
 
 
 
 
 
 
Imports from JavaScript
 
 
 
ImageQueue implements a queue like a data structure.
 
 
 
TeaVM JavaScript Interop (JSO)-based implementation of IImportedApi.
SharedArrayBuffer (SAB)-based implementation of ImportedApi.
Control buffer contents: One Integer per buffer: sampleBuffer + frameBuffer + MAX_OSCILLOSCOPE_SIDS * gaugeBuffer + whatssidBuffer
 
WAV file implementation of IImportedApi.
Imported events for I/O capabilities (WebWorker calls JavaScript functions)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Created by hsyecheng on 2015/6/12.
 
Audio section of the INI file.
C1541 section of the INI file.
Configuration of the console version of JSIDPlay2.
 
Pre-generated INI configuration to be included and used in the JavaScript and web assembly version builds.
Console section of the INI file.
Provide constants for all settings read from the internal INI file.
Provide constants for all settings read from internal memory.
 
Emulation section of the INI file.
 
INI configuration file support responsible to load and save all emulator settings.
 
 
Audio section of the INI file.
SIDPlay2 section of the INI file.
 
C1541 section of the INI file.
This class can read properties files in Microsoft .ini file style and provides an interface to read string, integer, and boolean values.
 
SIDPlay2 section of the INI file.
WhatsSID section of the INI file.
 
 
 
 
 
 
 
 
 
Java port of the reSID 1.0 filter VCR+opamp+capacitor element (integrator) by Dag Lem.
 
 
 
 
This class provides general IO utility functions.
 
 
 
 
 
 
Parallel cable is a custom modification between C64 and C1541, connecting the two via C64's user port and extra wiring attached to the one of the VIA chips.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Some system properties to fine-tune JSIDPlay2 without touching the configuration.
 
Some system properties to fine-tune JSIDPlay2 without touching the configuration.
 
Support of ExSID mini USB devices.
 
Support of HARDSID USB devices like HardSID Uno, HardSID UPlay, and HardSID4U.
 
FakeStereo mode uses two chips using the same base address.
 
Abstract base class to output an MP3 encoded tune to an output stream.
File-based driver to create a MP3 file.
Driver to write into an MP3 encoded output stream.
Note: The caller is responsible for closing the output stream
 
Implementation of a Joystick.
 
 
 
 
 
 
Support of SIDBlaster mini USB devices.
 
INI configuration file support responsible to load and save all emulator settings.
ReSid device names are sorted by filter strength and SID model
 
Main class of the UI version of JSIDPlay2.
 
Use this class to start JSIDPlay2 in server mode!
 
 
 
 
The main entry point for the TeaVM-based implementation of JSIDPlay2, designed to generate JavaScript and WebAssembly (WASM) code.
The main entry point for the TeaVM-based implementation of JSIDPlay2, designed to generate C code.
Utility entry point for the TeaVM-based implementation of JSIDPlay2, designed to generate standalone JavaScript code for auxiliary functions.
Support of USBSID mini USB devices.
 
Abstract base class to output a WAV to an output stream.
File-based driver to create a WAV file.
Driver to write into an WAV output stream.
Note: The caller is responsible for closing the output stream
 
 
 
 
 
 
 
 
 
 
 
 
Data structure for an entry on the key table of the C64 keyboard
 
 
A simple knob skin for slider.
 
Lazy-initialized list.
 
 
 
 
 
 
Exception to be thrown when a bound value isn't supported by the logarithmic axis
LOG requests with filter options.
 
 
Pre-generated lookup table to prevent floating point division in audio production's hot code path to be included and used in the JavaScript and web assembly version builds.
 
 
"Magic Desk" Cartridge - this cart comes in 3 sizes, 32Kb, 64Kb and 128Kb
MainArgs processes the command line arguments and implements simple, configurable logging.
 
Helper class to support maven build and create all the optional downloadable content of our web-server during deployment.
 
 
 
 
 
 
 
MD5 checksum calculation method - used for SLDB (SongLengthDataBase)
 
Created by hsyecheng on 2015/6/19.
Structure to describe a memory block in the C64's memory map.
 
 
 
Subclasses of MismatchSearch allow for searching with a fixed number of possible errors.
Interface for SID mixer controls.
 
 
Cycle-exact 6502/6510 emulation core.
 
MOS6510 debug implementation to trace the CPU state each time a command gets fetched and each time interrupt routine gets started or ends.
Alpha: Feature to compare VICE and JSIDPlay2 implementation by running both and communicating via socket connection after each instruction.
This has been added to find differences and improve emulation quality.
This class is heavily based on the ciacore/ciatimer source code from VICE.
NTSC specialization of the VIC
PAL specialization of the VIC
Abstract base class to output an MP3 encoded tune to an output stream.
File-based driver to create a MP3 file.
Driver to write into an MP3 encoded output stream.
Note: The caller is responsible for closing the output stream
Special MP3 tune implementation.
 
 
 
File-based driver to create a MP4 file.
Note: Normally this printer is connected as a serial device, this emulation uses a connection via user port as well
General Specifications A.
 
 
Cartridge is producing Music
Common view base for HVSC and CGSC collections.
 
 
 
 
 
 
 
 
 
 
Converts a string to a negated boolean.
 
 
 
 
FakeStereo mode uses two chips using the same base address.
Support of network-enabled SID devices using the network SID protocol.
 
 
 
Documentation of the protocol is contained here: netsiddev.ad
New file (filePath).
 
 
 
 
 
 
 
Lazy initialized observable list.
"Ocean Type 1" Cartridge - 32KiB, 128KiB, 256KiB or 512KiB sizes (4, 16, 32 or 64 banks of 8KiB) - ROM is always mapped in at $8000-$9FFF
Classic octree color quantization algorithm.
 
 
 
 
 
 
 
 
This class solves the opamp equation when loaded by different sets of resistors.
 
 
 
 
 
File format from PC64.
 
 
 
RGBA (MSB to LSB) pixel data big endian.
Generates PAL VIC colors from first principles.
Simulate VIC chip colors and some common distortions to the colors.
 
Pre-generated PAL emulation color data to be included and used in the JavaScript and web assembly version builds.
Parse mm:ss.SSS (parse time in minutes and seconds and store as seconds)
 
 
 
 
 
 
 
The C64 MMU chip.
IO region handler. 4k region, 16 chips, 256b banks.
SID chip memory bank maps reads and writes to the assigned SID chip
 
The player adds some music player capabilities to the HardwareEnsemble.
 
 
PlayList is a track list of songs to play.
Potentiometer representation.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Proxy driver to use two different sound or video drivers at the same time.
 
 
 
 
 
 
 
Header has been extended for 'RSID' format
 
 
--------> z..zx.....x normal (zz !
 
 
 
 
 
 
 
 
 
 
 
 
 
 
WhatsSID?
 
 
 
Log request and response.
URLs sent as a servlet request parameter are converted here.

Support of better usage messages for servlets.
Binary large object as a request body.
Abstraction of a resampling process.
Dag Lem's resid 1.0 beta
FakeStereo mode uses two chips using the same base address.
 
Support of software emulated SIDs.
Antti S.
FakeStereo mode uses two chips using the same base address.
 
 
Responses generated by server.
16 MB RAM Expansion Unit emulation.
 
 
 
Deny the existence of resource robots.txt.
 
Emulator ROMS to be included and used in the JavaScript and web assembly version builds.
Disk rotation.
Ensure a maximum number of RTMP video creations in parallel (server overload protection).
 
Sound sample consumer consuming sample data while a SID is being clock'ed.
Extends SampleMixer with a linear fade-in/fade-out feature to smoothly increase/decrease volume.
LOG fade table: x∈[0..1], volume = max * 10^(-60(1−x)/20).
Extends SampleMixer with a logarithmic fade-in/fade-out feature to smoothly increase/decrease volume.
 
 
 
 
This reverb module is called a Schroeder reverb because the organization of parallel comb filters and series connected allpass filters was suggested by M.
 
 
 
 
 
 
 
 
 
 
Common Search thread
TODO W.I.P. seems to break compatibility with most loaders
 
 
Provides parameter default values and localization of ConvertServlet as well as parameter checks to spot development errors.
 
 
 
 
Parse servlet parameters using JCommander based on annotated parameter objects.
Servlet parameters documentation.
Change the usage message to represent an ASCIIDOC text description for the servlets of the RESTful services.
Change the usage message to represent a servlet call usage.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Lazy initialized shadowed property.
 
MOS6581/MOS8580 emulation.
 
 
 
FakeStereo mode uses two chips using the same base address.
 
 
 
 
Interface for the SID chip re-implementation.
Utility class to determine song length for tunes based on HVSC file "DOCUMENTS/Songlengths.txt".
 
 
 
 
 
Classify SidDump table cells for CSS styling.
 
 
 
 
File-based driver to create a SID dump file.
Driver to write into an SID dump stream.
Note: The caller is responsible for closing the output stream
 
 
 
Base class for hardware or software-based SID emulation.
 
 
 
 
Pre-generated Player ID Infos to be included and used in the JavaScript and web assembly version builds.
Pre-generated Player IDs to be included and used in the JavaScript and web assembly version builds.
Scan tune files to find out the player ID.
This is a single pattern to match a player.
Player section of the SID-ID configuration file.
 
Mixer to mix SIDs sample data into the audio buffer.
 
 
 
 
 
 
 
File-based driver to create a SID reg file.
Driver to write into an SID reg stream.
Note: The caller is responsible for closing the output stream
 
 
 
Possible clock speeds of a SidTune.
SID types the SidTune may be compatible with.
Possible models the SidTunes were meant to play on.
 
 
An instance of this structure is used to transport values to and from SidTune objects.
 
 
 
This is the theoretically correct (and computationally intensive) audio sample generation.
 
 
 
 
 
Created by hsyecheng on 2015/6/11.
 
 
 
Sprite class to handle all data for sprites.
 
SID player state.
 
 
 
 
AutoPlay sessions, for example, are flagged as: IDevent_timeevent_typejiffydossession_iddisk_idevent_kindkey_table_entry 50STARTtrue731830e00f8777d8e13eced45522f167731830e00f8777d8e13eced45522f167DISKnull 550KEY_TYPEDtrue731830e00f8777d8e13eced45522f167nullKEYSPACE 6100CHANGEtrue731830e00f8777d8e13eced45522f167731830e00f8777d8e13eced45522f168DISKnull 5150KEY_TYPEDtrue731830e00f8777d8e13eced45522f167nullKEYSPACE 7200CHANGEtrue731830e00f8777d8e13eced45522f167731830e00f8777d8e13eced45522f169DISKnull 8300STOPtrue731830e00f8777d8e13eced45522f167nullENDnull This describes a typical demo using three disks where session id is always the first disk's MD5 and disk_id is the first, second, or third disk's MD5.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
The base class for String searching implementations.
Area backed by RAM
 
 
Pseudo directory to display tape contents.
TAP filetype implementation.
 
 
Tape image implementation.
 
 
 
 
 
No sound output at all, but sleeps regularly to slow down audio/video production.
Ensure a maximum number of requests per minute (server overload protection).
Convert time in minutes and seconds (mm:ss[.SSS])
Ensure a minimum time between requests (a kind of DDOS protection).
The timer contains the start and end time of a currently played song.
Convert time in minutes and seconds (mm:ss.SSS) to number (seconds)
 
 
Configurable log filter usable for certain appenders configured in logconfig.properties.
 
 
 
 
 
 
 
Pseudo directory to display tune contents.
 
 
 
 
 
 
 
 
 
Compose a more efficient SINC from chaining two other SINCs.
 
 
This is the JavaFX glue to propagate the player model to all UI parts.
 
 
Makes use of the Ultimate64 (FPGA-C64) debug interface to use JSIDPlay2 and Ultimate64 simultaneously.
 
 
 
 
 
 
 
 
URL.
 
 
FakeStereo mode uses two chips using the same base address.
 
 
 
 
 
 
 
 
 
 
 
 
 
Handling of the Bus Controller.
Handling of the Disk Controller.
Current mode read or write.
24jan97 a.fachat new interrupt handling, hopefully according to the specs now.
Implements the functionality of the C64's VIC II chip
Chip models supported by MOS656X.
 
 
 
Example presets that ship with the ffmpeg.
 
 
Video stream identified by UUID.
 
 
 
 
Representation of SID voice block.
 
 
 
 
Abstract base class to output a WAV to an output stream.
File-based driver to create a WAV file.
Driver to write into an WAV output stream.
Note: The caller is responsible for closing the output stream Note: WAV header is missing using the XuggleAudioDriver, therefore kind of useless
Combined waveform calculator for WaveformGenerator.
Combined waveform calculator for WaveformGenerator.
 
 
A 24-bit accumulator is the basis for waveform generation.
A 24-bit accumulator is the basis for waveform generation.
 
 
WAV header format.
 
WebJar resource.
 
 
 
Web resource.
 
 
 
WhatsSID?
Recognize currently played tune regularly and in parallel.
 
 
 
 
 
 
 
WhatsSID?
Created by hsyecheng on 2015/6/11.
 
 
 
 
 
Create video.
 
 
 
 
 
 
Return the sample with linear interpolation.