Commit Graph

168 Commits

Author SHA1 Message Date
jn
c739f8ecb3 Refactor physical memory address resolution code
The physical memory layout is the same whether we use the MMU or not, so
let's implement it only once.
2023-02-01 23:51:15 +01:00
Ry
ee4b96db4f
Merge pull request #9 from neuschaefer/dev
docs: Document how the peripherals work
2023-02-01 13:44:15 -08:00
jn
4467185339 docs: Document how the peripherals work 2023-02-01 20:16:40 +01:00
Ry
7719755a52 Cleanly exit if attempting to open non-existent disk
Fixes issue #7.
2023-01-30 14:09:00 -08:00
Ry
157841311d
Merge pull request #8 from neuschaefer/dev
GitHub CI: Bump actions/checkout to v3
2023-01-29 17:00:41 -08:00
jn
8f0f6c9afd GitHub CI: Bump actions/checkout to v3
v2 is deprecated and causes a warning on the Actions page.
2023-01-29 23:28:18 +01:00
Ry
15cf497b89
Merge pull request #6 from neuschaefer/dev
Miscellanea
2023-01-27 15:11:37 -08:00
jn
4758c45171 Fix skipping of CMP instructions 2023-01-27 17:37:10 +01:00
jn
6ddf60fba6 Handle division by zero instead of crashing 2023-01-27 11:33:26 +01:00
jn
1d9de64e5f Print IP and SP in debug mode 2023-01-27 11:33:26 +01:00
Ry
c492194360
Merge pull request #5 from neuschaefer/headless
Headless Mode
2023-01-26 17:08:36 -08:00
jn
17f452bacf Add headless mode 2023-01-26 22:24:16 +01:00
jn
c1652c34b0 Initialize VM state and scan arguments before initializing SDL 2023-01-26 22:21:41 +01:00
Ry
d9f03fe1aa
Merge pull request #4 from neuschaefer/help
fox32: Add --help option
2023-01-20 15:09:44 -08:00
jn
43bc7e661e fox32: Add --help option
It's easier to type --help than to remember the options or look at the
source code.
2023-01-20 16:36:37 +01:00
Ry
4a4d05332b docs: Fix typo 2023-01-13 14:32:38 -08:00
Ry
85c1a87e09 docs: Add iflt and ifgteq to the condition codes list 2023-01-13 14:30:39 -08:00
Ry
6fb4fd884f
Merge pull request #3 from neuschaefer/lowercase
docs: Spell fox32 in lowercase
2022-12-31 18:42:47 -08:00
jn
efdf7815e1 docs: Spell fox32 in lowercase
As requested by @ry755: https://github.com/fox32-arch/fox32/pull/2#issuecomment-1368289018
2023-01-01 03:29:39 +01:00
Ry
a1d1e34e59
Merge pull request #2 from neuschaefer/doc
fox32 architecture documentation
2022-12-31 14:40:54 -08:00
jn
571729dafa docs: Add more documents (but they're unfinished) 2022-12-31 12:56:19 +01:00
jn
c27f3405cd docs: Start a comprehensive CPU architecture document
With docs/cpu.md, I aim to describe the CPU architecture as fully as
necessary to allow understanding it without having to look into emulator
source code anymore.

This currently leaves encoding.md a bit stranded, because I didn't quire
know how to integrate it into this new document.
2022-12-31 12:53:57 +01:00
jn
bf38917ee0 Fix number of operands for OP_FLP in instruction info table
FLP takes a source operand.
2022-12-31 12:17:29 +01:00
Ry
9b6ac30abf Add new logo to the README 2022-12-28 21:24:04 -08:00
Ry
14dc43710f Add support for dropping files onto the window to mount them as a disk 2022-12-26 18:22:21 -08:00
Ry
8b5472519e Update comment 2022-12-26 18:02:25 -08:00
Ry
30f76602a7 Add support for cross-compiling for Windows 2022-12-26 17:22:48 -08:00
Ry
3246859ff2 Revert previous commit 2022-12-25 23:38:26 -08:00
Ry
acbfa82a18 If halted, report that the entire tick was completed 2022-12-25 23:24:03 -08:00
Ry
82668e10d3 Fix errors in the RTC implementation of month and year 2022-12-25 22:58:18 -08:00
Ry
ea53fb151c Implement the rest of the RTC 2022-12-25 21:45:31 -08:00
Ry
eae21dd08b Fix an issue with the mouse held state 2022-12-25 15:34:36 -08:00
Ry
4bb07c3c52 Change SDL include path 2022-11-08 17:14:49 -08:00
Ry
565685776a Add power control port 2022-10-27 22:45:58 -07:00
Ry
3d1dff8495 BRK exceptions should resume *after* the BRK instruction 2022-10-27 19:03:34 -07:00
Ry
a0fa0361ae Add disk write support 2022-10-27 16:02:17 -07:00
Ry
9396931592 Better keyboard handling 2022-10-27 16:01:51 -07:00
Ry
4952a4b504 Show CPU core error messages if debug output is enabled 2022-10-27 15:33:38 -07:00
Ry
5b00bcef56 Better argument parsing 2022-10-27 15:30:50 -07:00
Ry
e402e96cfa Build Linux binaries of each commit 2022-10-26 18:49:26 -07:00
Ry
1a01891a32 Update README 2022-10-26 18:21:15 -07:00
Ry
fab9f197b0 Update license 2022-10-26 18:20:55 -07:00
Ry
8fcf8fb03d Generate fox32rom.h dynamically 2022-10-26 18:11:59 -07:00
Ry
e80d4cdb3b Update gitignore 2022-10-26 18:05:04 -07:00
Ry
e0b75bb04c Remove GitHub workflows for now 2022-10-26 18:04:53 -07:00
Ry
3608796e88 Fix a few formatting things 2022-10-26 18:03:00 -07:00
Ry
23478340d2 Use absolute mouse position instead of grabbing the cursor 2022-10-26 18:03:00 -07:00
hyenasky
072cb452e1 make writes to readonly pages cause a page fault correctly 2022-10-26 18:03:00 -07:00
hyenasky
7d383cff3c add int instruction, make cross-page accesses work 2022-10-26 18:03:00 -07:00
Ry
b06f6de79c Implement a somewhat hacky MMU 2022-10-26 18:03:00 -07:00