Commit graph

121 commits

Author SHA1 Message Date
Andrea Odetti
a310d50da4 applen: partially better way to locate resources if application is launched from different folder.
When loading snapshot, chdir so relative paths can be found.
Ensure endwin() is called.
Use an "int" to exit the process rather than a exit().

Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2020-07-12 10:24:27 +01:00
Andrea Odetti
9c442468f5 Compile AW's Speaker.cpp and remove custom implementation.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2020-07-08 16:52:00 +01:00
Andrea Odetti
40d3e822e9 Make resource interface based on "char *" as it is easier to detect a nullptr.
Can't change the return type to std::string.

Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2020-07-07 20:13:26 +01:00
Andrea Odetti
ad1b6774ae Fix Mockingboard in applen.
(not playing, but not crashing)

Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2020-07-05 19:10:24 +01:00
Andrea Odetti
36e774ab6e Merge branch 'master' into mockingboard 2020-07-05 14:43:42 +01:00
Andrea Odetti
74cab50cee Remove dependency on std::filesystem and fix a compilation error. 2020-07-05 13:20:03 +01:00
Andrea Odetti
5dee29fbf9 Make Mockingboard voice actually play.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2020-07-02 11:02:57 +01:00
Andrea Odetti
5536050b71 Use c++ sleep_for rather than usleep.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2020-06-30 14:02:39 +01:00
Andrea Odetti
f3bff96968 First draft of the SDL2 port.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2020-02-08 10:21:13 +00:00
Andrea Odetti
0191652565 First part of merge of new CardManager code.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2019-12-31 18:19:45 +00:00
Andrea Odetti
24e0b17135 Works on Raspbian.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2019-12-14 21:18:00 +00:00
Andrea Odetti
874f4be666 Single keyboard handler.
Seems to work...

Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2019-12-07 11:20:37 +00:00
Andrea Odetti
e8022bf6a0 Cleanup CMakeLists.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2019-12-01 15:22:17 +00:00
Andrea Odetti
9ca7485f52 Update VideoBenchmark code to differentiate screen image generation vs blitting.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2019-11-25 21:08:01 +00:00
Andrea Odetti
35a81f8009 applen: add --log, --ntsc, and log time till first $C000 access. 2019-11-23 20:34:24 +00:00
Andrea Odetti
7529f5c659 Reworked the entire wondows.h replacement.
wincompat.h is a stripped down version coming from linapple-pie with the bare minimum common types.
Each group of functions in its own file.

Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2019-11-23 18:17:44 +00:00
Andrea Odetti
d18269fb2d First (succesful) attempt at using NTSC code in Linux.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2019-11-20 21:23:27 +00:00
Andrea Odetti
7c65e0f972 Add option to run without screen update in ncurses.
Useful to profile core.

Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2019-11-03 16:22:28 +00:00
Andrea Odetti
92c257d1e5 Improve error handling in applen and ability to build outside the source tree.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2019-11-03 10:21:02 +00:00
Andrea Odetti
d44bc6c019 Improve cmake detection of required libraries.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2019-11-03 09:36:16 +00:00
Andrea Odetti
0a6de645e0 Incorporate chat * -> std::string conversion.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2019-09-21 09:58:29 +01:00
Andrea Odetti
4d2febfb42 Linux changes for current version of AppleWin.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2019-08-10 16:16:44 +01:00
Andrea Odetti
020fb5c0cb Remove a deprecated function.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2019-04-20 21:01:25 +01:00
Andrea Odetti
a51118cf35 Fix all disk related function due to Disk class introduction.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2019-04-20 16:43:52 +01:00
Andrea Odetti
14c5c820c1 Adapt to upstream changes.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2018-08-25 21:17:55 +01:00
Andrea Odetti
6b649bee1a Follow AppleWin and rename nCyclesLeft to uExecutedCycles.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2018-04-14 18:46:00 +01:00
Andrea Odetti
ba8221d3ee Free resources on exit.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2018-02-13 08:39:17 +00:00
Andrea Odetti
04f7492e6b For some reason the ncurses ALT-arrow key codes do not work any longer.
Has anything changed in ncurses?


Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2018-02-10 17:52:35 +00:00
Andrea Odetti
1b70ca4979 Fix PkgConfig for ncursesw and add libevdev.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2018-02-06 17:08:50 +00:00
Andrea Odetti
6985ef40e2 Use CMake / PkgConfig to find ncurses locations and flags.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2018-02-06 16:58:10 +00:00
Andrea Odetti
7a6ad9f363 Ensure the MouseCard is properly reset when the emulator restarts.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2018-02-06 16:21:35 +00:00
Andrea Odetti
21156bb606 Merge remote-tracking branch 'upstream/master'
# Conflicts:
#	source/Disk.cpp
#	source/DiskImageHelper.h
#	source/Memory.cpp

Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2018-02-03 20:35:04 +00:00
Andrea Odetti
ae4be77382 Move MessageBox() to the interface to display it properly in Qt.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-15 18:58:23 +01:00
Andrea Odetti
3733da1af7 Remove configuration from libappleii and delegate it to the frontends.
In qapple we use QSettings.


Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
03de883889 Modularise CMakeLists.txt
qapple does not run at the moment: can find configuration file.


Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
348ba1ecd9 Use QGamepad in QApple.
This requires an interface as napple uses libevdev.


Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
1a75e9f0de And share the joystick with QApple.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
10339131fd Decouple Input from ncurses frontend to reuse it in QApple (Fedora does not package QGamepad yet).
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
ede695bcd6 Move VideoBenchmark to libapple to be reused.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
9c21b59827 typedef has been removed upstream.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
0c37816c28 Move FindResource to the interface as in QT it will be handled differently.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
ce124e0aa0 It is too easy to set the wrong CPU and then nothing works.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
91678645a7 Add option to save configuration on exit.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
c9a6d7688e Add option to create missing floppy disks.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
eba2cea5ca Display moving average of speed.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
e68748a158 Allow to control of high resolution graphics.
Horizontal resolution: x1 x2 x3 4 x5 x6 x7.
Vertical: x1 x2 x4.

Use Alt-arrows to change.


Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
a43cf5cf8a More uniform allocation of pixels in the 4th column to each sides with half the weight.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
df53415d98 Add option to benchmark emulator.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
863a9d3671 Write a little measure about current execution speed.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00
Andrea Odetti
b63f232ebe Use evdev to handle a joystick.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2017-10-14 19:18:44 +01:00