mirror of
https://github.com/TomHarte/CLK.git
synced 2024-12-24 12:30:17 +00:00
Gives up on C-BIOS for a while, to get to an acceptable merge point.
This commit is contained in:
parent
afcdd64d5e
commit
4daea1121b
@ -197,17 +197,13 @@ class ConcreteMachine:
|
||||
auto roms = roms_with_names(
|
||||
"MSX",
|
||||
{
|
||||
"basic.rom",
|
||||
"main_msx1.rom"
|
||||
"msx.rom"
|
||||
});
|
||||
|
||||
if(!roms[0] || !roms[1]) return false;
|
||||
if(!roms[0]) return false;
|
||||
|
||||
basic_ = std::move(*roms[0]);
|
||||
basic_.resize(16384);
|
||||
|
||||
main_ = std::move(*roms[1]);
|
||||
main_.resize(32768);
|
||||
rom_ = std::move(*roms[0]);
|
||||
rom_.resize(32768);
|
||||
|
||||
for(size_t c = 0; c < 4; ++c) {
|
||||
for(size_t slot = 0; slot < 3; ++slot) {
|
||||
@ -219,8 +215,8 @@ class ConcreteMachine:
|
||||
memory_slots_[3].write_pointers[c] = &ram_[c * 16384];
|
||||
}
|
||||
|
||||
memory_slots_[0].read_pointers[0] = main_.data();
|
||||
memory_slots_[0].read_pointers[1] = &main_[16384];
|
||||
memory_slots_[0].read_pointers[0] = rom_.data();
|
||||
memory_slots_[0].read_pointers[1] = &rom_[16384];
|
||||
|
||||
for(size_t c = 0; c < 4; ++c) {
|
||||
read_pointers_[c] = memory_slots_[0].read_pointers[c];
|
||||
@ -302,7 +298,7 @@ class ConcreteMachine:
|
||||
uint8_t ram_[65536];
|
||||
uint8_t scratch_[16384];
|
||||
uint8_t unpopulated_[16384];
|
||||
std::vector<uint8_t> basic_, main_;
|
||||
std::vector<uint8_t> rom_;
|
||||
std::vector<uint8_t> cartridge_;
|
||||
|
||||
HalfCycles time_since_vdp_update_;
|
||||
|
Binary file not shown.
@ -1,225 +0,0 @@
|
||||
C-BIOS 0.28
|
||||
===========
|
||||
|
||||
This software is a substitute BIOS which is can be used for running MSX
|
||||
emulators. It currently supports only execution of cartridge image ("ROMs").
|
||||
Before you use it, you should read and accept the license (see below).
|
||||
|
||||
On the C-BIOS web site, you can download newer versions, download the source
|
||||
code, and report bugs.
|
||||
|
||||
http://cbios.sourceforge.net/
|
||||
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
Copyright (c) 2002-2005 BouKiCHi. All rights reserved.
|
||||
Copyright (c) 2003 Reikan. All rights reserved.
|
||||
Copyright (c) 2004-2006,2008-2010 Maarten ter Huurne. All rights reserved.
|
||||
Copyright (c) 2004-2006,2008-2011 Albert Beevendorp. All rights reserved.
|
||||
Copyright (c) 2004-2005 Patrick van Arkel. All rights reserved.
|
||||
Copyright (c) 2004,2010-2011 Manuel Bilderbeek. All rights reserved.
|
||||
Copyright (c) 2004-2006 Joost Yervante Damad. All rights reserved.
|
||||
Copyright (c) 2004-2006 Jussi Pitkänen. All rights reserved.
|
||||
Copyright (c) 2004-2007 Eric Boon. 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.
|
||||
|
||||
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.
|
||||
|
||||
|
||||
History
|
||||
-------
|
||||
|
||||
ver 0.01 Initial
|
||||
ver 0.02 2002-08-15(JST)
|
||||
* Added original font and drawing screen.
|
||||
* Added dump-mode.
|
||||
* Changed recognition method of cartridges
|
||||
to recognize cartridges taking priority.
|
||||
ver 0.03 2002-08-19(JST)
|
||||
* Based on a suggestion from Ms.Okei,
|
||||
wrote 20h of BIOS(compare HL and DE).
|
||||
In the result, shooting game of a certain company became runnable
|
||||
more correctly.
|
||||
Thank Ms.Okei!!
|
||||
ver 0.04 2002-08-20(JST)
|
||||
* Added initialize of FCC2h-FCC4h.
|
||||
* Added function of GTSTCK and GTTRIG temporarily.
|
||||
* Divided msxb.bin to halfs.
|
||||
doing combining/copying with setb.bat now.
|
||||
ver 0.05 2002-08-27(JST)
|
||||
* Added INITGRP(only screen2), CHGMOD(graphic mode change routine),
|
||||
a routine calls H.STKE.
|
||||
* Rewrite memory recognition routine.
|
||||
* Some bug fixes.
|
||||
* Added sound test function.
|
||||
ver 0.06 2002-09-01(JST)
|
||||
* Fixed around of color.
|
||||
ver 0.07 2002-09-09(JST)
|
||||
* Added some sorts of keyboard routines.
|
||||
* Added joystich function to GTSTCK and GTTRIG.
|
||||
ver 0.08 2002-09-12(JST)
|
||||
* Restructured memory initialize routine.
|
||||
* Added error display routine.
|
||||
* Fixed routine of finding kinds of cartridges.
|
||||
* Fixed using method of EXPTBL.
|
||||
* Added initialize of from RG8SAV to RG23SA.
|
||||
* Now return within disabled interrupt from ENASLT routine.
|
||||
ver 0.09 2002-09-19(JST)
|
||||
* Made the rest half of font.
|
||||
* Improved key input routine.
|
||||
* Added CHPUT. With it, rewrote display routine.
|
||||
* Fixed init_grp.
|
||||
* Changed filenames to CBIOS.ROM, CBIOS_SUB.ROM.
|
||||
ver 0.10 2002-09-20(JST)
|
||||
* Fixed indent.
|
||||
* and so on...
|
||||
ver 0.10a 2002-09-22(JST)
|
||||
* Fixed license.
|
||||
* Added support of ROMs in page3.
|
||||
ver 0.11 2002-09-22(JST)
|
||||
* Small fix in init_sc5.
|
||||
ver 0.12beta
|
||||
2002-09-25(JST)
|
||||
* Added test routine for disk access. need DISK.ROM.
|
||||
* Added init_sc7.
|
||||
* Improved ENASLT. now finding cartridge uses ENASLT.
|
||||
* Improved RAM detection.
|
||||
ver 0.12 2002-09-27(JST)
|
||||
* Changed finding cartridge again.
|
||||
* Changed screen mode of cartridge running time.
|
||||
* Fixed keyboard routine.
|
||||
* Fixed stick routine against to interrupt.
|
||||
ver 0.13 2002-10-02(JST)
|
||||
* Based on info from Mr.Maarten (a member of openMSX developers),
|
||||
fixed around of SCREEN 5.
|
||||
For detail, switching line numbers,
|
||||
temporary treatment for a bug of reading from VDP status register,
|
||||
and so on.
|
||||
ver 0.14 2002-10-10(JST)
|
||||
* Rewrote comments in source within Japanese.
|
||||
ver 0.15 2003-02-26(JST)
|
||||
* Rewrote some of comments back to English again.
|
||||
* Fixed non-assemblable condition becauseof lack of font file.
|
||||
* Changed filename, some of label name, strings and so on.
|
||||
ver 0.16 2003-04-16(JST)
|
||||
* Separated sound test from source. (Disabled)
|
||||
ver 0.16a 2003-06-01(JST)
|
||||
* CHGMOD: When screen0/1, now load font to VRAM.
|
||||
* CHPUT: Now support also screen1 not only screen0.
|
||||
ver 0.16b 2003-08-10(JST)
|
||||
* Added entry: INITXT, INIT32.
|
||||
These were exist only as internal routine of CHGMOD.
|
||||
* INITXT, INIT32: Fixed screen clear failure.
|
||||
* CHPUT: Fixed scroll failure.
|
||||
ver 0.17 2003-08-10(JST)
|
||||
* Changed LICENSE.
|
||||
New LICENSE will be suitable in various situations.
|
||||
e.g. use as a firmware for hand-made hardware.
|
||||
ver 0.18 2004-12-18(CET)
|
||||
* First release since moving to SourceForge.
|
||||
* Much improved support for MSX2 games.
|
||||
* Graphical boot logo.
|
||||
* Included machine config files for several MSX emulators.
|
||||
* Various bug fixes.
|
||||
ver 0.19 2004-12-24(CET)
|
||||
* Added support for SCREEN4 and SCREEN8.
|
||||
* Added support for clock chip.
|
||||
* Added support for palette. This fixes a lot of wrong colours.
|
||||
* Stubbed many calls: non-implemented calls print their name on the
|
||||
openMSX debugdevice (if present).
|
||||
* Various bug fixes.
|
||||
ver 0.20 2005-02-09(CET)
|
||||
* Added an MSX2+ configuration, which includes V9958 and MSX MUSIC.
|
||||
* Separate main ROMs for MSX1/MSX2/MSX2+.
|
||||
* Implemented several MSX2 specific routines, including BLT*.
|
||||
* Display is disabled when switching to a different screen mode.
|
||||
* Improved CHPUT a lot; implemented control and escape codes.
|
||||
* Rewrote key buffering; fixes bug of keys being repeated.
|
||||
* New boot logo, even cooler than the previous one.
|
||||
* New font, placed at a fixed address so all games can find it.
|
||||
* Started work on a disk ROM, but it is not functional yet, so it
|
||||
is not enabled in the configurations.
|
||||
* Stubbed all non-implemented calls.
|
||||
* Various bug fixes.
|
||||
ver 0.21 2005-06-07(CET)
|
||||
* Fixed RuMSX configuration files, thanks to Rudolf Lechleitner.
|
||||
* Rewrote ROM search code; now all ROMs are recognized.
|
||||
Also a clear error message is printed for BASIC ROMs.
|
||||
* New boot logo for MSX2 and MSX2+.
|
||||
* Changed boot sequence:
|
||||
Show logo, switch to SCREEN 1 and search for ROMs.
|
||||
* Improved video code; fixes several games.
|
||||
* Various bug fixes.
|
||||
ver 0.22 2008-12-27(CET)
|
||||
* Use separate logo ROM to save space in the main ROM.
|
||||
* Set lower bits of PSG reg 15 before reading joystick trigger status.
|
||||
* Improved RAM search.
|
||||
* Many new routines implemented and existing implementations made
|
||||
more complete, especially character I/O and bitmap graphics.
|
||||
* Added lots of documentation to system variables.
|
||||
* Added support for GNU assembler.
|
||||
* Various bug fixes.
|
||||
ver 0.23 2009-01-04(CET)
|
||||
* Updated blueMSX configuration files, thanks to Benoît Delvaux.
|
||||
* Fixed version reported by MSX1 logo ROM.
|
||||
* Fixed several video routines so they work on MSX1 VDPs (TMS99xx).
|
||||
* A couple of other bug fixes.
|
||||
ver 0.24 2010-05-24(CET)
|
||||
* VRAM size is now properly checked, fixing R-Type's V9938 detection.
|
||||
* C-BIOS doesn't lie anymore about the interrupt frequency.
|
||||
* Don't di; halt when no ROM is found, the warning in openMSX may be
|
||||
confusing
|
||||
* A few minor bug fixes and tweaks.
|
||||
ver 0.25 2011-02-01(CET)
|
||||
* C-BIOS now offers localized versions in the flavours INT (default),
|
||||
JP and BR.
|
||||
* Bug fixes for compatibility with Mirai, Family Billiards.
|
||||
* A couple of other bug fixes.
|
||||
* This version only compiles with Pasmo 0.5.3, due to lack of
|
||||
standards in assembler directives...
|
||||
ver 0.26 2014-11-02(CET)
|
||||
* Restored support to compile with tniASM (v1.0 Beta 17 or higher)
|
||||
* Moved to git, which means a.o.: archived changelog.txt, use git log
|
||||
from now on
|
||||
* Fixed VDP VRAM access timing for MSX1 VDP's
|
||||
* Update openMSX configurations to the new structure
|
||||
* Fixed bug blueMSX configurations
|
||||
* Fixed build on Mac OS X and add support for "make dist"
|
||||
ver 0.27 2014-11-05(CET)
|
||||
* Fixed bug (regression) in filvrm on non-MSX1-VDP's
|
||||
* Fixed some small bugs in openMSX configs
|
||||
* Fixed line endings of this file
|
||||
ver 0.28 2017-07-30(CEST)
|
||||
* Fixed bug that prevented brackets and a few other keys from
|
||||
generating characters when pressed
|
||||
|
||||
Special Thanks
|
||||
--------------
|
||||
|
||||
People uploading MSX information to the internet.
|
||||
People developing any kind of emulators.
|
||||
All users.
|
||||
|
||||
Font edit tool:
|
||||
Gameboy Tile Designer version 2.2
|
||||
Copyright H. Mulder 1999
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -1,7 +1,7 @@
|
||||
ROMs for the MSX go here. Those included here are BouKiCHi’s C-BIOS open source reimplementation — see cbios.txt for authorship and licence information. ROMs for a specific MSX may be supplied instead if the user desires.
|
||||
ROMs for the MSX go here; the copyright status of these is uncertain so they have not been included in this repository.
|
||||
|
||||
Expected files:
|
||||
|
||||
basic.rom
|
||||
disk.rom
|
||||
main_msx1.rom
|
||||
msx.rom
|
||||
|
||||
These names match those offered for download at http://fms.komkon.org/fMSX/ (albeit in lowercase), and the emulator has been tested against those images.
|
Loading…
Reference in New Issue
Block a user