Commit graph

39 commits

Author SHA1 Message Date
JetSetIlly
1d53447317 removed lint errors 2021-04-16 07:57:44 +01:00
JetSetIlly
35b4b8f862 moviecart: frame-by-frame stepping when playback is paused
moviecart: fixed audio stream clicking problem

moviecart: end of stream detected correctly
2021-04-02 20:41:45 +01:00
JetSetIlly
aa86b2e42d cartridgeloader streaming 2021-04-02 20:41:45 +01:00
JetSetIlly
d42120f12d added OSD and controls to Movie Cart 2021-04-02 13:00:07 +01:00
JetSetIlly
914167b288 url protocol check failed with windows drive letters 2021-04-01 23:56:54 +01:00
JetSetIlly
f406736e80 implemented Movie Cart
added SLO (0x1b) opcode
2021-04-01 01:12:28 +01:00
JetSetIlly
611a7212f5 added Superbank cartridge mapping scheme (128k and 256k) 2021-03-10 15:06:40 +00:00
JetSetIlly
24fe0484d9 unique filename generation placed in paths module
generated filenames for playback recording, regression script writing
and terminal outuput saving, remain the same as before
2021-03-06 07:17:52 +00:00
JetSetIlly
16ab693277 corrected supercharger WAV loading of unsigned data
soundfile (WAV or MP3) will stop when cartridge stops looking for tape
data and will rewind when it reaches the end of the file.

tape position slider in debugger
2021-02-15 19:08:38 +00:00
JetSetIlly
2c5cf7f79a CDF format. support for all versions except CDFJ+
DPC+ updated to support changes to ARM package

PlusROM host/path detection size limited
2020-12-30 20:45:07 +00:00
JetSetIlly
3b86234d0f cartridgeloader no longer fails if files on local system do not parse with url.Parse()
boundary checks for fingerprinting of very small files

normalised error generation in cartridge mapper implementations
2020-10-25 13:28:29 +00:00
JetSetIlly
9e159b97d8 added more linters to golangci-lint config
godot --fix has been run to make sure all comments end in a full-stop

specified nolint directive to apply to specific linter
2020-10-16 16:31:07 +01:00
JetSetIlly
b41c6d0301 removed unnecessary whitespace (golangci-lint -E whitespace --fix)
update Makefile lint target
2020-10-16 10:29:09 +01:00
JetSetIlly
7fc48dcd65 renamed errors package to 'curated'
to differentiate with the now existing errors package in the standard
library.
2020-09-28 22:16:59 +01:00
JetSetIlly
2d5cae17f5 reworking of errors package
removed all messages from errors package. the strings are now hard coded
in place. the original reason for extracting the error strings like that
was (a) for redundancy and (b) for localisation possibilities. However,
in reality there is not much redundancy and since the project started
the scope of localisation is much larger (particularly due to the
addition of a GUI)

this is the first step. the next step is to remove the errors package
altogether. recent additions to Go mean that the functionality of the
errors package is no longer required. moreover, the original idea for
the errors package functions turns out not to have been as useful as
first appeared (the Error() functionality which makes sure no repeating
sub-strings occur is probably better achieved with static tooling).

one idea that comes from this which is quite interesting is the idea of
a curated error. that is, any error that has been "wrapped" as some
'generic' type. the IsAny() function in the errors package effectively
serves this purpose. we use that in one place in the input loop of the
debugger. not strictly necessary but nice to have so it would ideal
if we could remove the errors package but keep that idea.
2020-09-28 22:16:59 +01:00
JetSetIlly
cc57b5d9dd load ROMs over HTTPS as well as HTTP (& more reliable reading over network)
fixed panic when opening Chip Registers window (orphaned imgui.PopItemWidth())

close response body after reading plusrom network data
2020-09-21 18:11:20 +01:00
JetSetIlly
7b1325e4ce added 3e cartridge mapper
altered 3e+ fingerprinting method
2020-09-21 12:20:03 +01:00
JetSetIlly
5b55b6b485 extended the list of file extensions recognised by the ROM selector 2020-09-20 18:34:18 +01:00
JetSetIlly
a5ce27962e Show change nick prompt on first use of a PlusROM cartridge
only works for sdlimgui interfaces. does not apply to the plain/color
terminal interfaces
2020-09-19 11:19:20 +01:00
JetSetIlly
18c3aa1c26 more plusrom. better networking
correctly sends PlusStore-ID header with gopher2600 as a fixed nick

fingerprinting of PlusROM

removed -plusrom commandline argument
2020-09-17 21:09:29 +01:00
JetSetIlly
96e765525c sketched in PlusROM support
very rough currently. race conditions in network access, requires
restructuring.

no logging from network access. again, requires some engineering in the
log package to avoid race errors
2020-09-16 18:28:49 +01:00
JetSetIlly
4091b6076c DF (128k) bank switching 2020-08-24 18:51:05 +01:00
JetSetIlly
5e06068bf4 sketched in cartridge mapper type EF 2020-08-24 18:21:45 +01:00
JetSetIlly
5ad55fa433 handle end of tape read event for soundfiles
hook function will be called when $fa1a is read to tidy up emulation
before continuing with the newly loaded ROM (eg. TV reset, dissassembly
of loaded data)
2020-08-24 13:21:30 +01:00
JetSetIlly
f30542dc2b supercharger tape loading from MP3 2020-08-24 13:19:57 +01:00
JetSetIlly
44bee68d16 supercharger loading from WAV file
cartridgeloader package allows WAV file extensions

supercharger tape window added to debugger

not completed: known problems include cartridge not being
re-disassembled after tape loading.
2020-08-23 22:45:16 +01:00
JetSetIlly
a140711321 windows cross-compilation support
static build runs under minimal wine installation and passes regression tests
2020-08-04 10:53:15 +01:00
JetSetIlly
babd416bbd cartridge loader was not setting the Hash value of the loaded cart properly
this broke the setup database system
2020-07-28 19:40:44 +01:00
JetSetIlly
298a5d343f updated copyright notice in all files
the note about historical versions also being covered wasn't strictly
needed and was ugly. the LICENCE being in the root file from the very
first commit is sufficient.
2020-07-26 20:18:56 +01:00
JetSetIlly
4cfd4e3428 reworked cartridgeloader package
clarified error messages from cartridge mapper implementations,
particularly in regard to wrong file sizes
2020-07-22 18:50:37 +01:00
JetSetIlly
520c4f3013 added StaticArea interface to cartridges
static data window in debugger

reworked menu system to allow cartridge specific window menus

cleaned up how cartridge RAM information is specified and retrieved

renamed cartridge.Format() to ID() and reference to "cartridge format"
to "cartridge mapping". format is an overloaded word already and it was
confusing.
2020-05-09 09:27:56 +01:00
Robin Eklind
24cb28843f gopher2600: use fully qualified import path as module path
Fixes #4.
2020-03-21 23:39:56 +01:00
steve
16ccdf7830 added copyright messages to some new files 2020-01-18 17:41:24 +00:00
steve
5e254b24b1 doc/comment tidy 2020-01-07 19:26:02 +00:00
steve
d0b023bea2 documentation updates 2020-01-06 10:11:21 +00:00
steve
16b15fad95 o added licence headers to all files 2020-01-05 18:58:43 +00:00
steve
9e71a20847 o hardware/memory
- commentary and documentation
2020-01-05 18:58:41 +00:00
steve
aba69ec69a o added overview documentation for every package
o recorder
    - fixed recorder after recent changes made to digest/video
    - fdf3f2765c59de4097a01b7fdf736ae38e4398b4
2020-01-05 18:58:41 +00:00
steve
28d7352b52 o cartridgeloader
- moved from memory package
2020-01-05 18:58:39 +00:00