1
0
mirror of https://github.com/pevans/erc-c.git synced 2024-11-24 14:32:08 +00:00
Commit Graph

131 Commits

Author SHA1 Message Date
Peter Evans
af7dae6924 Advance PC by # of bytes consumed 2018-01-05 15:52:20 -06:00
Peter Evans
7ceee608b3 Stop delaying by 2 seconds 2018-01-05 15:52:04 -06:00
Peter Evans
c7aa9e9fc3 Resolver may be NULL; don't call if so
This change also registers a default value for operand (0).
2018-01-05 14:57:38 -06:00
Peter Evans
d5b6205713 Actually execute some opcodes 2018-01-05 14:55:33 -06:00
Peter Evans
fd8f36b34e We need to use the mach cpu 2018-01-05 14:19:13 -06:00
Peter Evans
1de1e7788a Rename status flags to MOS_ 2018-01-05 14:18:39 -06:00
Peter Evans
2da613f7aa Provisional state upon reboot 2018-01-04 20:09:53 -06:00
Peter Evans
3f0a091520 Use const pointers; fix function name typo 2018-01-04 19:59:04 -06:00
Peter Evans
700bc31465 Copy system rom into $C800..$CFFF; document.
Things are getting a little hairy...at least, as to my own
comprehension. Documentation is a must.
2018-01-04 19:53:12 -06:00
Peter Evans
e184304ec5 A little more documentation post-rwops changes 2018-01-04 14:21:05 -06:00
Peter Evans
171ff62551 Change create to use objstore vm_8bit data 2018-01-03 21:50:30 -06:00
Peter Evans
565dd1b34b Make sure the object store got built 2018-01-03 21:50:01 -06:00
Peter Evans
06d37d24d7 Allow us to call objstore_init more than once.
This also separates some code into objstore_ready().
2018-01-03 21:49:26 -06:00
Peter Evans
7182608473 Copy vm_8bit buffer into rom/memory directly 2018-01-03 21:10:46 -06:00
Peter Evans
90d6c637c5 Add function to copy a buffer into a segment 2018-01-03 21:10:25 -06:00
Peter Evans
4d07bd7640 Add objstore code, tests 2018-01-03 20:51:20 -06:00
Peter Evans
b1c2a2109e Just use stdout if we never opened a log file 2018-01-03 20:47:41 -06:00
Peter Evans
484a11e976 Pass in zero for an offset 2018-01-03 15:21:00 -06:00
Peter Evans
fac6b4f574 Initialize system and disk2 rom 2018-01-03 15:20:48 -06:00
Peter Evans
86dad129b6 Let us fread into a segment offset 2018-01-03 15:16:30 -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
5b2c376abc Prevent writes to the ROM bank 2018-01-03 14:27:55 -06:00
Peter Evans
9a1e51fec3 We need to pass the machine, not memory 2018-01-02 23:49:29 -06:00
Peter Evans
cb9a7d0fce Let the segment vm know about the machine 2018-01-02 21:12:21 -06:00
Peter Evans
ee7b5f66b0 Add support for a map machine pointer
To be sent to the read/write functions that are implemented by said
machine.
2018-01-02 21:11:43 -06:00
Peter Evans
3fe7a4e0bb Use explicit memory size of MOS6502 2018-01-02 20:48:42 -06:00
Peter Evans
73f7d8f63a Actually map memory when we create an apple2 2018-01-02 16:30:21 -06:00
Peter Evans
33c8f0de9d Add memory map functions 2018-01-02 16:26:51 -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
49d475d534 Documentation 2018-01-01 17:41:15 -06:00
Peter Evans
d53b6df7a4 Add documentation; plus set sector/track pos to 0 on eject 2018-01-01 17:26:29 -06:00
Peter Evans
2aeef09f97 Remove unused msb variable 2018-01-01 17:12:41 -06:00
Peter Evans
8f04deb642 Comment out unused cycles variable 2018-01-01 17:12:25 -06:00
Peter Evans
78aab1bd13 Fix potential memory leaks in create() 2018-01-01 17:11:03 -06:00
Peter Evans
a2b4fe1466 Write an fread function for segments; use in apple2.dd 2017-12-31 20:28:11 -06:00
Peter Evans
e14e22a596 Uh, so we forgot to read data into the disk 2017-12-31 15:54:30 -06:00
Peter Evans
f70f21789b Add flash memory, disassemble options 2017-12-31 15:50:59 -06:00
Peter Evans
ead5f28e79 Refactor to use cpu, not literal segments 2017-12-30 23:02:30 -06:00
Peter Evans
b42d5370aa Small bug in the jump label code for IND
This also required a rethink on some core functions which now needed to
know about the memory segment; and further changes in the unit-testing
code on the disassembly suite was also necessary.
2017-12-30 22:50:23 -06:00
Peter Evans
7e142e2736 Properly handle indirect addresses 2017-12-30 21:48:16 -06:00
Peter Evans
26529f77ab Implement jump table, labels in code 2017-12-29 17:08:25 -06:00
Peter Evans
927d03ebbe Add scan function (rename original scan -> opcode); test 2017-12-29 15:31:05 -06:00
Peter Evans
f98e2f65ee Add disassembly scan function, tests 2017-12-28 23:47:36 -06:00
Peter Evans
491b3c0c38 Add scan function for disassembly 2017-12-28 21:47:35 -06:00
Peter Evans
d95572bd4a Move instruction strings to mos6502.dis.c 2017-12-27 21:21:33 -06:00
Peter Evans
32d08fbbc5 Add new file for opcode disassembly 2017-12-27 21:21:11 -06:00
Peter Evans
6a230341e1 Make vm_area_set be an inline function.
Gets most of the benefits of being a macro, but also gains type safety
(which macros do not have).
2017-12-27 17:10:51 -06:00
Peter Evans
30223e0bca Remove screen area field; document area fields 2017-12-27 16:59:56 -06:00
Peter Evans
27f91ec00f Use vm_area with bitfont_offset
This should further standardize on vm_area.
2017-12-27 16:47:26 -06:00
Peter Evans
efb8f04555 Use vm_area for draw_rect.
This simplifies and to some degree normalizes the way we reference areas
in the vm subsystem.
2017-12-27 16:42:30 -06:00