Thomas Harte
185cd3c123
Expands and documents MSX::MemoryMap and MSX::ROMSlotHandler.
...
Hopefully to cover all intended use cases.
2018-01-06 15:51:29 -05:00
Thomas Harte
ed564cb810
Implements the main four cartridge banking schemes.
...
Slightly proof of concept for now.
2018-01-04 22:18:18 -05:00
Thomas Harte
b78ece1f1e
Adds an attempt to catch LD (xx), A / [CALL/JP] pairs.
...
Also corrects use of std::stable_sort. Results are still largely incorrect though.
2018-01-02 22:18:10 -05:00
Thomas Harte
c8367a017f
Cleans up test and makes attempt to factor in cartridge type popularity.
2018-01-01 21:21:05 -05:00
Thomas Harte
344a12566b
Tweaks a couple of expected cartridge types.
2018-01-01 20:14:56 -05:00
Thomas Harte
c07113ea95
Ensures no illegal accesses while testing MSX ROM type detection.
...
Specifically: the static analyser doesn't even correctly identify everything that is an MSX ROM yet, let alone then properly determine type.
2018-01-01 17:38:26 -05:00
Thomas Harte
bc2879c412
Corrects the MSX ROM unit test.
...
I.e. the test is correct now, for those SHAs I could find. The static analyser is still wrong just slightly less than half the time.
2018-01-01 17:35:13 -05:00
Thomas Harte
1d47b55729
Ensures the selected cartridge start address is recorded in the cartridge.
2018-01-01 16:38:49 -05:00
Thomas Harte
db25b4554b
Introduces failing tests of the MSX static analyser.
2018-01-01 16:38:26 -05:00
Thomas Harte
05b95ea2e0
Corrects Xcode tests.
2018-01-01 16:04:13 -05:00
Thomas Harte
250f7bf6b0
Makes attempt to support 48kb ROMs.
2018-01-01 11:25:27 -05:00
Thomas Harte
34db35b500
Merge pull request #327 from TomHarte/Z80Disassembler
...
Introduces a Z80 disassembler.
2017-12-31 18:39:01 -08:00
Thomas Harte
f75590253d
Introduces necessary header for std::sort.
2017-12-31 21:36:24 -05:00
Thomas Harte
4f6abc9059
Introduces missing header.
2017-12-31 21:34:35 -05:00
Thomas Harte
c70dbc6a49
Introduces the most basic attempt to guess MSX cartridge type.
2017-12-31 21:23:30 -05:00
Thomas Harte
1c255b9e7d
Generalises some of the disassembler, and provides Z80 logic to create a [first attempt at a] Z80 disassembler.
2017-12-31 18:49:35 -05:00
Thomas Harte
188bfa9c18
Merge pull request #326 from TomHarte/TyperTermination
...
Ensures typers terminate.
2017-12-30 10:49:53 -08:00
Thomas Harte
c7f8f37822
Ensures typers terminate.
2017-12-30 13:46:30 -05:00
Thomas Harte
4a19dbb8cb
Merge pull request #325 from TomHarte/ContentTypes
...
Adds document type UTIs.
2017-12-30 10:41:14 -08:00
Thomas Harte
bf0601123b
Adds some document type UTIs.
...
Will need to survey all the other Mac emulators to get a complete list, I guess.
2017-12-30 13:36:29 -05:00
Thomas Harte
9339f3413f
Liberalises the end-of-file test for MSX ASCII.
...
From: must be back padded with 0x1a to merely must contain 0x1a.
2017-12-29 20:54:10 -05:00
Thomas Harte
c18517be4b
Ensures that the fast loading option successfully flows from the Mac interface.
2017-12-29 19:07:22 -05:00
Thomas Harte
eef34adcbd
Merge pull request #324 from TomHarte/MSXAnalysis
...
Introduces basic tape analysis for the MSX
2017-12-29 15:45:21 -08:00
Thomas Harte
769d9dfbb9
Adds missing header.
2017-12-29 18:41:26 -05:00
Thomas Harte
6a0bb83716
Corrects typos in the SDL main.
2017-12-29 18:40:32 -05:00
Thomas Harte
6da8a3e24b
Causes the MSX to respond to the appropriate standard configuration options.
2017-12-29 18:36:42 -05:00
Thomas Harte
e349161a53
Rejigs the typing relationship so that use of a typer is not strongly implied by the interface.
...
Simultaneously implements typing on the MSX by direct insertion into the key buffer.
2017-12-29 18:30:46 -05:00
Thomas Harte
d5b1a9d918
Moves the typer functionality behind a functionality-based naming scheme, eliminates its C-style memory management.
2017-12-29 15:26:03 -05:00
Thomas Harte
76af0228dd
Corrects longstanding survival of camel case in the analyser's loadingCommand
.
2017-12-29 15:15:29 -05:00
Thomas Harte
2cc1a2684a
Introduces [over-]analysis of cassette contents prior to starting the MSX, and simplifies ROM checking.
...
So a proper loading command is now known.
2017-12-29 15:11:10 -05:00
Thomas Harte
98a9d57c0b
Imputes the alignment requirement for CAS headers.
...
Also stops adding a spurious 0xff as the final byte on the tape.
2017-12-29 10:42:18 -05:00
Thomas Harte
c481293aca
Liberalises CAS interpretation.
...
It seems to be an even weirder file format than I thought; it can contain only ROM-formatted data but seemingly often contains blobs that the ROM cannot write.
2017-12-29 09:56:58 -05:00
Thomas Harte
5fd0a2b9ea
Attempts to pull reimplementations of TAPION and TAPIN better into line with originals.
...
Also improves whole flow of the fast tape hack that uses them.
2017-12-28 22:48:04 -05:00
Thomas Harte
11b73a9c0b
Adds preliminary, non-error-checking wiring in of MSX parser alternatives to TAPION and TAPIN.
...
As both a prototype of the pending fast tape loading, and to provide for exact behaviour comparison.
2017-12-26 22:31:34 -05:00
Thomas Harte
c4950574ea
Introduces an attempted reimplementation of the MSX BIOS's two main tape reading entry points.
2017-12-26 22:19:37 -05:00
Thomas Harte
0b297f2972
Adds some appropriate costs to the tape players.
2017-12-26 22:13:28 -05:00
Thomas Harte
f9f870ad2d
Merge pull request #323 from TomHarte/MSXCAS
...
Adds support for the MSX .CAS file format.
2017-12-23 17:00:02 -08:00
Thomas Harte
cbba6a5595
Ensures final few bytes of a CAS file aren't dropped.
2017-12-23 19:54:42 -05:00
Thomas Harte
0a079b0f94
Attempts to fix failure to distinguish end-of-file.
2017-12-23 19:32:24 -05:00
Thomas Harte
9a7e974579
Corrects skipping of every other file, and transition from bytes back into header.
2017-12-23 19:20:04 -05:00
Thomas Harte
f4d414d6e4
Removes stray line break.
2017-12-23 18:42:04 -05:00
Thomas Harte
b4bfcd4279
Switches to an attempt to break the .CAS into files ahead of time.
...
Hopefully the better to insert appropriate lengths of header and gap.
2017-12-23 18:41:50 -05:00
Thomas Harte
e8ddff0ee0
Makes a first, messy, attempt at serialising CAS files into audio.
2017-12-21 22:34:03 -05:00
Thomas Harte
b61fab9df7
Merge pull request #322 from TomHarte/MSXTapes
...
Introduces TSX support for the MSX.
2017-12-20 18:43:54 -08:00
Thomas Harte
28fb1ce2ae
Removes unnecessary logging.
2017-12-20 21:39:17 -05:00
Thomas Harte
b9b107ee85
Switches KeyGrave and KeyQuote, correcting a disarrangement.
2017-12-20 21:16:54 -05:00
Thomas Harte
f17758e7f9
Attempts better to deal with large numbers.
2017-12-20 21:03:24 -05:00
Thomas Harte
0bb24075b6
Immediate fixes: TSX is seemingly TZX 1.21; the tape motor control works the other way around.
...
Input is not yet being recognised.
2017-12-19 22:17:42 -05:00
Thomas Harte
db6d9b59d0
Attempts to implement TSX support for the MSX.
2017-12-19 21:53:04 -05:00
Thomas Harte
51e82c10c5
Merge pull request #321 from TomHarte/MSXKeyTaps
...
Introduces the MSX keyboard toggle sample source.
2017-12-19 18:19:42 -08:00