1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
|
diff -Nuar hatari-2.1.0-orig/cmake/FindCapsImage.cmake hatari-2.1.0/cmake/FindCapsImage.cmake
--- hatari-2.1.0-orig/cmake/FindCapsImage.cmake 2018-07-28 20:32:59.164780571 +0300
+++ hatari-2.1.0/cmake/FindCapsImage.cmake 2018-07-28 20:33:16.130781607 +0300
@@ -1,22 +1,18 @@
-
IF (CAPSIMAGE_INCLUDE_DIR)
- # Already in cache, be silent
- SET(CAPSIMAGE_FIND_QUIETLY TRUE)
+ # Already in cache, be silent
+ SET(CAPSIMAGE_FIND_QUIETLY TRUE)
ENDIF (CAPSIMAGE_INCLUDE_DIR)
-
-# Choose the library version to use : 4 or 5
-SET(CAPSIMAGE_VERSION 5)
-
-
-if(CAPSIMAGE_VERSION STREQUAL 4)
- SET(CAPSIMAGE_DIR caps)
- FIND_PATH(CAPSIMAGE_INCLUDE_DIR ${CAPSIMAGE_DIR}/capsimage.h)
+if(ENABLE_CAPSIMAGE5)
+ SET(CAPSIMAGE_VERSION 5)
+ FIND_PATH(CAPSIMAGE_INCLUDE_DIR NAMES CapsAPI.h PATH_SUFFIXES caps5)
else()
- SET(CAPSIMAGE_DIR caps5)
- FIND_PATH(CAPSIMAGE_INCLUDE_DIR ${CAPSIMAGE_DIR}/CapsAPI.h)
+ SET(CAPSIMAGE_VERSION 4)
+ FIND_PATH(CAPSIMAGE_INCLUDE_DIR NAMES capsimage.h PATH_SUFFIXES caps)
endif()
+message(${CAPSIMAGE_INCLUDE_DIR})
+
if(WIN32)
FIND_LIBRARY(CAPSIMAGE_LIBRARY NAMES capsimg PATH_SUFFIXES ${CAPSIMAGE_DIR} )
else()
diff -Nuar hatari-2.1.0-orig/src/CMakeLists.txt hatari-2.1.0/src/CMakeLists.txt
--- hatari-2.1.0-orig/src/CMakeLists.txt 2018-07-28 20:32:59.152780571 +0300
+++ hatari-2.1.0/src/CMakeLists.txt 2018-07-28 20:33:16.131781607 +0300
@@ -55,6 +55,10 @@
include_directories(${PNG_INCLUDE_DIR})
endif(PNG_FOUND)
+if(CAPSIMAGE_FOUND)
+ include_directories(${CAPSIMAGE_INCLUDE_DIR})
+endif(CAPSIMAGE_FOUND)
+
if(X11_FOUND)
include_directories(${X11_INCLUDE_DIR})
endif(X11_FOUND)
diff -Nuar hatari-2.1.0-orig/src/floppy_ipf.c hatari-2.1.0/src/floppy_ipf.c
--- hatari-2.1.0-orig/src/floppy_ipf.c 2018-07-28 20:32:59.152780571 +0300
+++ hatari-2.1.0/src/floppy_ipf.c 2018-07-28 20:34:32.782786288 +0300
@@ -30,9 +30,9 @@
#ifdef HAVE_CAPSIMAGE
#if CAPSIMAGE_VERSION == 5
-#include <caps5/CapsLibAll.h>
+#include <CapsLibAll.h>
#else
-#include <caps/fdc.h>
+#include <fdc.h>
#define CAPS_LIB_RELEASE 4
#define CAPS_LIB_REVISION 2
#endif
@@ -61,8 +61,8 @@
struct CapsFdc Fdc; /* Fdc state */
struct CapsDrive Drive[ MAX_FLOPPYDRIVES ]; /* Physical drives */
- CapsLong CapsImage[ MAX_FLOPPYDRIVES ]; /* Image Id or -1 if drive empty */
- CapsLong CapsImageType[ MAX_FLOPPYDRIVES ]; /* ImageType or -1 if not known */
+ Sint32 CapsImage[ MAX_FLOPPYDRIVES ]; /* Image Id or -1 if drive empty */
+ Sint32 CapsImageType[ MAX_FLOPPYDRIVES ]; /* ImageType or -1 if not known */
int Rev_Track[ MAX_FLOPPYDRIVES ]; /* Needed to handle CAPSSetRevolution for type II/III commands */
int Rev_Side[ MAX_FLOPPYDRIVES ];
@@ -83,9 +83,9 @@
static char *IPF_FilenameFindTrackSide (char *FileName);
static bool IPF_Insert_RawStreamImage ( int Drive );
-static void IPF_CallBack_Trk ( struct CapsFdc *pc , CapsULong State );
-static void IPF_CallBack_Irq ( struct CapsFdc *pc , CapsULong State );
-static void IPF_CallBack_Drq ( struct CapsFdc *pc , CapsULong State );
+static void IPF_CallBack_Trk ( struct CapsFdc *pc , Uint32 State );
+static void IPF_CallBack_Irq ( struct CapsFdc *pc , Uint32 State );
+static void IPF_CallBack_Drq ( struct CapsFdc *pc , Uint32 State );
static void IPF_Drive_Update_Enable_Side ( void );
static void IPF_FDC_LogCommand ( Uint8 Command );
#endif
@@ -419,8 +419,8 @@
return false;
#else
- CapsLong ImageId;
- CapsLong ImageType;
+ Sint32 ImageId;
+ Sint32 ImageType;
ImageId = CAPSAddImage();
if ( ImageId < 0 )
@@ -470,7 +470,7 @@
ImageType = -1;
#endif
- if ( CAPSLockImageMemory ( ImageId , pImageBuffer , (CapsULong)ImageSize , DI_LOCK_MEMREF ) == imgeOk )
+ if ( CAPSLockImageMemory ( ImageId , pImageBuffer , (Uint32)ImageSize , DI_LOCK_MEMREF ) == imgeOk )
{
struct CapsImageInfo cii;
int i;
@@ -703,7 +703,7 @@
* We need to update the track data by calling CAPSLockTrack
*/
#ifdef HAVE_CAPSIMAGE
-static void IPF_CallBack_Trk ( struct CapsFdc *pc , CapsULong State )
+static void IPF_CallBack_Trk ( struct CapsFdc *pc , Uint32 State )
{
int Drive = State; /* State is the drive number in that case */
struct CapsDrive *pd = pc->drive+Drive; /* Current drive where the track change occurred */
@@ -732,7 +732,7 @@
* Callback function used when the FDC change the IRQ signal
*/
#ifdef HAVE_CAPSIMAGE
-static void IPF_CallBack_Irq ( struct CapsFdc *pc , CapsULong State )
+static void IPF_CallBack_Irq ( struct CapsFdc *pc , Uint32 State )
{
LOG_TRACE(TRACE_FDC, "fdc ipf callback irq state=0x%x VBL=%d HBL=%d\n" , (int)State , nVBLs , nHBL );
@@ -751,7 +751,7 @@
* -> copy the byte to/from the DMA's FIFO if it's a read or a write to the disk
*/
#ifdef HAVE_CAPSIMAGE
-static void IPF_CallBack_Drq ( struct CapsFdc *pc , CapsULong State )
+static void IPF_CallBack_Drq ( struct CapsFdc *pc , Uint32 State )
{
Uint8 Byte;
diff -Nuar hatari-2.1.0-orig/src/uae-cpu/newcpu.c hatari-2.1.0/src/uae-cpu/newcpu.c
--- hatari-2.1.0-orig/src/uae-cpu/newcpu.c 2018-07-28 20:32:59.158780571 +0300
+++ hatari-2.1.0/src/uae-cpu/newcpu.c 2018-07-28 20:33:16.132781607 +0300
@@ -167,7 +167,7 @@
#ifdef HAVE_CAPSIMAGE
#if CAPSIMAGE_VERSION == 5
-#include <caps5/CapsLibAll.h>
+#include <CapsLibAll.h>
#endif
#endif
|