Peter De Wachter
7e5ae7b69c
Fix screenshot
2016-04-19 23:06:53 +02:00
Peter De Wachter
4c8150e1ff
Add a ready-to-use disk image. Update README.
2016-04-19 23:01:26 +02:00
Peter De Wachter
0a6a7aac52
Missing semicolon in Display.Mod
2016-04-19 00:51:55 +02:00
Peter De Wachter
e30fdd84c3
Oberon source cleanup
...
- Don't use CR line endings. That's the Oberon standard, but it breaks
almost everything else.
- Include a patched version of Input.Mod.
2016-04-19 00:47:10 +02:00
D. E. Evans
11e48788ad
Add OS X support.
...
Assumes SDL2 framework install (libsdl.org) for OS X, as instructed.
2016-02-10 00:15:34 +01:00
Peter De Wachter
70dbab69ef
Emulate illegal DIVs
...
The RISC5 architecture requires divisors to be positive. This commit
emulates what happens if you try to divide by zero or by a negative
integer.
2015-10-02 00:21:50 +02:00
Peter De Wachter
85ee2e5282
Emulate DIV with u-bit set
...
If the u-bit is set on a DIV instruction, the dividend will be be
interpreted as an unsigned number. This was introduced in the
2015-09-26 RISC5 update.
2015-10-02 00:19:33 +02:00
Peter De Wachter
ec23a381e5
FDV: More accurate rounding
...
The 2015-09-26 update modified FPDivider.v to use more accurate
rounding. The least significant bit of the result might differ from
the previous version.
2015-10-01 23:51:45 +02:00
Peter De Wachter
e9af0e1b1a
Update fp-test for the latest Verilog code
...
The latest Verilog code uses 48-bit and 64-bit registers, so fp-test
needs to switch to 64-bit integers in the generated code.
2015-10-01 23:40:00 +02:00
Peter De Wachter
10b82d8b40
ob2unix, asciidecoder: some Rust experiments
2015-07-05 11:59:07 +02:00
Peter De Wachter
bc3b1b5438
Tweak the CPU emulation a bit.
...
Based on suggestions from Robert Ransom.
2015-01-24 16:08:04 +01:00
Peter De Wachter
15f56d339b
Don't reuse magic numbers.
...
Also adapt the patched Display.Mod so it can work with either system.
2014-06-20 18:26:53 +02:00
Peter De Wachter
27fc63778d
Fix sign extend undefined behavior
...
Using a left shift to push a 1 into the sign bit of a signed integer results in
undefined behavior. *sigh*
Use an obscure trick instead.
2014-06-19 20:36:29 +02:00
Peter De Wachter
c1d7717c3e
New (& incompatible) screen size hack
...
This is based on a patch by Charles Perkins:
cf23cea018
It's not compatible with the previous hack, so if you were using that
you'll have to update Display.Mod. A small change to Input.Mod is also
need if you want to increase the size of the display.
The normal, unmodified Oberon software still works correctly, of
course.
2014-06-18 22:35:08 +02:00
Peter De Wachter
eef73f30fb
Give the emulated CPU a 32-bit address space
...
This deviates a bit from the FPGA hardware implementation (which
uses 20-bit addressing) but remains fully compatible with the
Oberon software.
2014-06-16 23:49:14 +02:00
Peter De Wachter
fe431cbf33
Windows seems to have a tiny stack limit...
2014-05-05 21:09:24 +02:00
Peter De Wachter
0d4cbf6a33
Disable raw-serial on Windows
...
This module was intended to make the emulated RS232 device communicate with a
pair of user-specified file descriptors. But I don't think you can pass file
descriptors around between programs in Windows. So this code is completely
pointless there. Closes #7 .
2014-05-05 21:04:04 +02:00
Peter De Wachter
f8a66a68b5
Reassign clipboard port numbers (conflict with schierlm's emulator)
2014-05-05 20:27:55 +02:00
Peter De Wachter
e884562f86
Quick update to the readme
2014-05-04 00:09:49 +02:00
Peter De Wachter
a635262f75
Proper command line parsing
2014-05-03 23:09:17 +02:00
Peter De Wachter
8b94f07a53
Generalize SPI interface a bit
...
In case anybody feels like emulating the wireless network...
2014-05-03 23:08:25 +02:00
Peter De Wachter
281ed7566b
Michael Schierl's screen size patch
2014-05-03 23:07:47 +02:00
Peter De Wachter
56f36a32ea
Fix off-by-one error
2014-05-01 20:02:36 +02:00
Peter De Wachter
a5458c470a
Move all C code to a subdirectory.
2014-05-01 19:27:09 +02:00
Peter De Wachter
c85b81caf0
Appease clang's scan-build
...
Another false positive.
2014-05-01 19:24:04 +02:00
Peter De Wachter
50ebae0218
Missing "extern" keyword
2014-05-01 19:16:22 +02:00
Peter De Wachter
ded29873d6
Host clipboard integration
2014-05-01 19:15:26 +02:00
Peter De Wachter
b4dc62f422
Support for smaller screen sizes.
...
To use this you need to patch Display.Mod.
2014-05-01 19:09:57 +02:00
Peter De Wachter
f702a425d2
Simplify display damage tracking
2014-04-30 22:22:06 +02:00
Peter De Wachter
dbe22cc15d
Simplify overflow flag calculation
2014-04-30 21:02:46 +02:00
Peter De Wachter
a369b6c0a7
Restructure a bit. Add fd-based serial driver.
2014-04-30 20:59:24 +02:00
Peter De Wachter
f1e45b4f9a
Deal with false positives from clang's static analyzer
...
Clang's static analyzer complains about possible unitialized
variables, because it doesn't realize these two switches cover all
possible cases (LLVM bug 13027).
Closes #5 .
2014-04-14 21:38:34 +02:00
Peter De Wachter
3e4799730d
Simplify scaling code a bit
2014-04-13 11:58:52 +02:00
Peter De Wachter
d4d8d34e40
Alt-F4: quit the emulator.
...
When SDL is running without windowing system, there's nothing that
will generate a SDL_QUIT event. So we need to provide a way to stop
the emulator. Fixes #4 .
2014-04-13 11:46:52 +02:00
Peter De Wachter
1b29586f3d
Missing break statement in switch.
...
I hate C sometimes.
2014-04-12 22:55:38 +02:00
pdewacht
8d3c16f8f8
Merge pull request #3 from ilovb/master
...
build fix for MinGW
2014-04-03 22:38:14 +02:00
Boris Ilov
7ba29acf52
The S_IRGRP, S_IWGRP, S_IROTH, and S_IWOTH macros are not defined on MinGW
2014-04-03 19:53:54 +04:00
Peter De Wachter
47c1a8c721
Fix break scancode of some "grey" keys
...
Fixes #1 , reported by ilovb
2014-04-02 22:21:44 +02:00
Peter De Wachter
26b42c60b8
Make it easy to override default sdl2-config
2014-04-02 22:21:00 +02:00
Peter De Wachter
86eba42f00
Add PCLink shell scripts
2014-03-31 21:24:50 +02:00
pdewacht
86c915c3fb
Warn about old disk images
2014-03-31 21:15:51 +02:00
Peter De Wachter
45c1c56c40
Support filesystem-only images.
...
Patch from Paul Reed.
2014-03-31 21:11:15 +02:00
Peter De Wachter
1a08bc9298
Add gitignore file and clean up a bit
2014-03-27 22:48:42 +01:00
Peter De Wachter
c8b2d2c620
Move SCREEN_WIDTH/HEIGHT to risc.h file
...
Since it's a property of the RISC machine.
2014-03-27 21:44:39 +01:00
Peter De Wachter
bb84e50862
Fix some bugs in the floating-point adder.
...
To test the floating point code, I hacked together a simple translator
from the official Verilog implementation to C, and compared the output
of that with the emulator's implementation.
2014-03-27 21:37:43 +01:00
Peter De Wachter
effe483e9c
Implement Cmd-Shift-F for Mac users. I hope this works.
2014-03-23 20:02:23 +01:00
Peter De Wachter
d2908c8fee
typo
2014-03-23 15:18:15 +01:00
Peter De Wachter
8ca50db45d
copyright
2014-03-23 15:15:45 +01:00
Peter De Wachter
e0ba485cce
Use alt key to emulate middle button click (Paul Reed)
2014-03-23 15:12:32 +01:00
Peter De Wachter
66dfeb2ada
Full-screen display
...
Use --fullscreen command line option or press F11 to toggle.
2014-03-23 15:05:39 +01:00