Peter Evans
bf529d6c9b
Finish map, mapper handling for keyboard events
...
We still need to revise the test code we currently have for handling
keyboard functions; I imagine some code will need to be removed.
2018-01-17 01:07:31 -06:00
Peter Evans
2b688c7815
Add last key, strobe fields
2018-01-16 23:49:34 -06:00
Peter Evans
2c39120098
Rename video_mode -> display_mode
...
This also changes the _kind_ of field from an incrementally enumerated
one to a collection of bit flags.
2018-01-16 16:13:50 -06:00
Peter Evans
a0a5132099
Add pc file for peripheral card ROM
2018-01-15 23:50:33 -06:00
Peter Evans
c953616a71
Finish refactor to separate bank_switch and memory_mode
...
There is one failing test, which I expect to fail at this point; that's
because we need to write a read/write map function for the stack and
zero page so that they use aux memory when BANK_ALTZP is on, and main
memory when not.
2018-01-12 21:04:21 -06:00
Peter Evans
ceccacfbc8
Rework bank switch and memory mode into their own fields.
...
This is to better define and respect the various modes that you can have
in Apple II memory access. This is a work in progress at the moment.
2018-01-12 16:21:49 -06:00
Peter Evans
578e0b291c
Allow us to switch main/aux; write bank switch mappers
2018-01-11 19:52:13 -06:00
Peter Evans
9d2f9b6f60
Refactor to remove ram2
...
Both main and auxiliary memory need to keep an extra 4k of memory that
is bank-switchable, so we have changed to store that memory literally
within the main and aux segments.
2018-01-11 13:19:17 -06:00
Peter Evans
8d9b48912e
Add memory injection to 6502; main memory in apple2
...
Note that memory _is_ now managed in apple2, and _not_ in mos6502.
2018-01-10 21:28:05 -06:00
Peter Evans
04854d903c
Add aux memory field
2018-01-10 20:36:44 -06:00
Peter Evans
3db536a83d
Change memory_mode -> bank_switch
...
This also changes the concept of the field; bank_switch is a collection
of bit flags now.
2018-01-10 19:59:33 -06:00
Peter Evans
538b5ddaa0
Add address for reset vector, applesoft, powerup
2018-01-10 16:47:45 -06:00
Peter Evans
8ad1311536
Add set_memory function
2018-01-06 21:37:15 -06:00
Peter Evans
610068cb8b
Add missing decl for apple2_reset()
2018-01-05 16:20:13 -06:00
Peter Evans
6963883a60
Define the size of the bitmap font for apple2
2018-01-03 20:48:16 -06:00
Peter Evans
e7a404508e
Add init functions for disk2, sys rom
...
Also move the defines for bank offset, rom size, etc. into apple2.mem.h
which makes a little more sense.
2018-01-03 15:07:19 -06:00
Peter Evans
834959c10a
Add rom, ram2 bank memory; modify read/write sig
...
The signature for read/write map functions now accepts a void pointer so
that we can pass in the machine that those functions may need to know
about. This is a bit hairy, but allows us to avoid the need for a
yet-uglier global variable.
2018-01-02 16:24:51 -06:00
Peter Evans
5fbd921d83
Reorganize
2017-12-26 16:39:32 -06:00
Peter Evans
f50d599545
Beginnings of lo-res graphics
2017-12-24 15:07:24 -06:00
Peter Evans
979ca65f43
Add bitmap font to apple2, remove rectangle draw
2017-12-21 23:33:04 -06:00
Peter Evans
adac6346e8
Add color mode, text video modes
2017-12-21 11:52:56 -06:00
Peter Evans
23e113e72a
Add video mode switcher to handle logical sizes
2017-12-20 21:52:28 -06:00
Peter Evans
f55b608bee
Move screen run logic into apple run_loop and create
2017-12-20 20:45:26 -06:00
Peter Evans
294fab76aa
Add boot function; modify main to use apple2 boot
2017-12-15 22:22:40 -06:00
Peter Evans
98f70e0a9a
Add functions for pressing/releasing keys
2017-12-06 15:21:39 -06:00
Peter Evans
0e02fb8a1a
Add struct, initial create function for apple2
2017-12-06 14:36:14 -06:00