Ry
|
56e41e3915
|
Ensure the MMU gets re-enabled if we fail to read an interrupt vector
|
2022-09-18 18:22:40 -07:00 |
|
Ry
|
eba264db70
|
Add rfp register, remove debug message about intruction pointer == None
|
2022-09-18 16:30:52 -07:00 |
|
Ry
|
f7b2320138
|
No longer use setjmp/longjmp to ensure things are atomic
|
2022-09-18 16:21:35 -07:00 |
|
Ry
|
3aaebeaf3e
|
Always allow exceptions to occur, regardless of interrupt flag state
|
2022-09-17 14:51:18 -07:00 |
|
Ry
|
bf48300f2f
|
Open disks as read-write
|
2022-09-17 00:15:39 -07:00 |
|
Ry
|
9059889d3d
|
Ensure register pointers read the requested size, not always 32 bit
|
2022-09-16 23:29:16 -07:00 |
|
Ry
|
1211d4fdcc
|
Use a more reliable method for detecting key presses
|
2022-09-16 18:34:16 -07:00 |
|
Ry
|
4a18af8f81
|
Allow switching the stack pointer automatically on interrupts/exceptions
|
2022-09-16 17:29:58 -07:00 |
|
Ry
|
3ce3af511e
|
Hack memory writes to use longjmp if a page fault occurs
|
2022-09-16 00:27:23 -07:00 |
|
Ry
|
8259e5787e
|
Fix an issue where write faults sometimes return the *physical* address
|
2022-09-15 23:59:46 -07:00 |
|
Ry
|
d30dad4797
|
Potentially fix a double page fault issue under certain conditions
|
2022-09-15 23:41:46 -07:00 |
|
Ry
|
02f3d04f4f
|
Make page faults on page boundaries return the correct address
|
2022-09-15 18:35:17 -07:00 |
|
Ry
|
b55d7deb36
|
Page fault on writes to unmapped physical memory
|
2022-09-15 17:28:56 -07:00 |
|
Ry
|
8be5c65c73
|
Fix many issues relating to paging, split page fault into 2 vectors
|
2022-09-15 17:17:29 -07:00 |
|
Ry
|
3df3a98f3c
|
Rework the paging system a little bit, add FLP instr., bump ver to 0.5.0
|
2022-09-13 17:34:37 -07:00 |
|
Ry
|
9970a04cc9
|
Implement an RTC, bump version to 0.4.0
|
2022-09-09 16:16:09 -07:00 |
|
Ry
|
38f81ce4e3
|
Move fox32.rom into the src folder
|
2022-08-18 23:18:27 -07:00 |
|
Ry
|
e630e15661
|
Don't fail to build if building outside of a git repo
|
2022-08-18 23:16:26 -07:00 |
|
Ry
|
7fd8d36281
|
Actually implement paging properly, bump version to 0.3.1
I was mixing up the virtual and physical addresses, oops
|
2022-08-15 19:43:28 -07:00 |
|
Ry
|
82edb1d8da
|
Implement paging, bump version to 0.3.0
This works in a similar way to x86's paging, by using page directories
which point to page tables, which point to physical addresses.
|
2022-08-15 17:40:04 -07:00 |
|
Ry
|
17b14dd72f
|
Remove the unused f32 file type, bump version to 0.2.1
|
2022-08-09 23:33:00 -07:00 |
|
Ry
|
4b506f3e65
|
Add int instruction, bump version to 0.2.0
|
2022-08-09 02:04:46 -07:00 |
|
Ry
|
ad6f402179
|
Add 3 additional audio channels for a total of 4
|
2022-08-09 01:37:21 -07:00 |
|
Ry
|
881b9c1620
|
Embed fox32rom into the main fox32 executable, prepare for 1st release
|
2022-07-31 17:15:27 -07:00 |
|
Ry
|
2d6730bb0b
|
Allow adjusting the audio sample rate
|
2022-07-27 18:29:32 -07:00 |
|
Ry
|
8e4f2bc114
|
First audio buffer refill interrupt should play from buffer 0
|
2022-07-27 14:24:05 -07:00 |
|
Ry
|
d2d05f2d76
|
Hack to ensure the CPU thread exits when the window is closed
|
2022-07-27 14:09:54 -07:00 |
|
Ry
|
537b774667
|
Move the audio buffer locations into consts
No more magic values!!!
|
2022-07-26 15:54:44 -07:00 |
|
Ry
|
dfadccd68c
|
Use a const for the framebuffer address
|
2022-07-24 17:08:45 -07:00 |
|
Ry
|
953b2cfffe
|
Don't print the scancode on every key press
|
2022-07-24 16:57:28 -07:00 |
|
Ry
|
bd7eba3ddb
|
Remove fox32core support
This works around the issue with building on Windows.
|
2022-07-23 17:56:09 -07:00 |
|
Ry
|
940023f47b
|
Allow passing multiple arguments to mount multiple disks
|
2022-06-21 19:37:56 -07:00 |
|
Ry
|
c07eec2761
|
Fix application icon file
|
2022-06-21 00:31:11 -07:00 |
|
Ry
|
79517de317
|
fox32: Allow reading back the playing state from the audio IO port
|
2022-06-20 17:13:18 -07:00 |
|
Ry
|
e8960c569f
|
fox32+fox32asm: Remove pow instruction
|
2022-05-30 00:48:19 -07:00 |
|
Ry
|
5deb4fd8f8
|
fox32: Add support for audio playback
|
2022-05-25 16:15:39 -07:00 |
|
Ry
|
a8d92c69b2
|
fox32+fox32core: Rework the interrupt system a little bit
|
2022-05-16 23:52:07 -07:00 |
|
Lua MacDougall
|
81ccead64c
|
fox32: revert changes to release profile, switched back to step
|
2022-05-12 15:08:36 -07:00 |
|
Lua MacDougall
|
e6b74a3ae0
|
fox32: use resume with high count for core runtime, update release
|
2022-05-12 14:44:03 -07:00 |
|
Lua MacDougall
|
cb95b2b112
|
fox32: add FOX32_DEBUG environment variable
|
2022-05-12 14:11:11 -07:00 |
|
Lua MacDougall
|
fd3b83a15b
|
fox32: added fox32core support :3
|
2022-05-12 01:37:55 -07:00 |
|
Ry
|
83a5d14775
|
fox32: Allow disks to be removed
|
2022-04-17 14:28:41 -07:00 |
|
Ry
|
7f796dd989
|
fox32: Dump RAM if bad opcode
|
2022-04-17 13:29:17 -07:00 |
|
Lua MacDougall
|
a8ff66c3a0
|
fox32: fix stack overflow when initializing memory
|
2022-04-16 23:30:54 -07:00 |
|
Ry
|
fb3d681f55
|
fox32+fox32rom: Add EVENT_TYPE_MOUSE_RELEASE
|
2022-04-16 15:15:03 -07:00 |
|
Ry
|
e7f81afa50
|
fox32: Reading/writing unmapped memory is now an error
|
2022-03-23 11:54:32 -07:00 |
|
Ry
|
1f89b59f83
|
fox32: Start implementing keyboard input support
|
2022-03-18 21:36:44 -07:00 |
|
Ry
|
22c7b26317
|
fox32: Use logo as window icon :3
|
2022-03-12 17:11:54 -08:00 |
|
Ry
|
93d331bb07
|
fox32+fox32rom: Use DMA for the disk controller
Instead of accessing one byte at a time, use a DMA-like system to
read/write a whole sector at a time directly to/from memory.
|
2022-03-12 13:12:10 -08:00 |
|
Ry
|
998646cb80
|
fox32+fox32asm: Add proper support for greater than and less than
This adds IFGT, IFGTEQ, IFLT, and IFLTEQ, which makes it easier to
check for these conditions.
|
2022-03-12 12:15:27 -08:00 |
|