ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/src/uae_cpu/newcpu.h
(Generate patch)

Comparing BasiliskII/src/uae_cpu/newcpu.h (file contents):
Revision 1.11 by gbeauche, 2002-10-01T09:39:55Z vs.
Revision 1.17 by asvitkine, 2012-03-30T01:25:46Z

# Line 1 | Line 1
1 < /*
2 <  * UAE - The Un*x Amiga Emulator
3 <  *
4 <  * MC68000 emulation
5 <  *
6 <  * Copyright 1995 Bernd Schmidt
7 <  */
1 > /*
2 > * UAE - The Un*x Amiga Emulator
3 > *
4 > * MC68000 emulation
5 > *
6 > * Copyright 1995 Bernd Schmidt
7 > *
8 > * This program is free software; you can redistribute it and/or modify
9 > * it under the terms of the GNU General Public License as published by
10 > * the Free Software Foundation; either version 2 of the License, or
11 > * (at your option) any later version.
12 > *
13 > * This program is distributed in the hope that it will be useful,
14 > * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 > * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 > * GNU General Public License for more details.
17 > *
18 > * You should have received a copy of the GNU General Public License
19 > * along with this program; if not, write to the Free Software
20 > * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
21 > */
22  
23   #ifndef NEWCPU_H
24   #define NEWCPU_H
# Line 26 | Line 40 | extern int movem_next[256];
40  
41   extern int broken_in;
42  
29 /* Control flow information */
30 #define CFLOW_NORMAL            0
31 #define CFLOW_BRANCH            1
32 #define CFLOW_JUMP                      2
33 #define CFLOW_RETURN            3
34 #define CFLOW_TRAP                      4
35 #define CFLOW_SPCFLAGS          32      /* some spcflags are set */
36 #define CFLOW_EXEC_RETURN       64      /* must exit from the execution loop */
37
38 #define cpuop_rettype           void
39 #define cpuop_return(v)         do { (v); return; } while (0)
40
43   #ifdef X86_ASSEMBLY
44   /* This hack seems to force all register saves (pushl %reg) to be moved to the
45     begining of the function, thus making it possible to cpuopti to remove them
# Line 49 | Line 51 | extern int broken_in;
51   #endif
52  
53   #define cpuop_begin()           do { cpuop_tag("begin"); } while (0)
54 < #define cpuop_end(cflow)        do { cpuop_tag("end"); cpuop_return(cflow); } while (0)
54 > #define cpuop_end()                     do { cpuop_tag("end"); } while (0)
55  
56 < typedef cpuop_rettype REGPARAM2 cpuop_func (uae_u32) REGPARAM;
56 > typedef void REGPARAM2 cpuop_func (uae_u32) REGPARAM;
57  
58   struct cputbl {
59      cpuop_func *handler;
# Line 71 | Line 73 | struct comptbl {
73   };
74   #endif
75  
76 < extern cpuop_rettype REGPARAM2 op_illg (uae_u32) REGPARAM;
76 > extern void REGPARAM2 op_illg (uae_u32) REGPARAM;
77  
78   typedef char flagtype;
79  
# Line 294 | Line 296 | extern struct cputbl op_smalltbl_3_ff[];
296   extern struct cputbl op_smalltbl_4_ff[];
297  
298   #if FLIGHT_RECORDER
299 < extern void m68k_record_step(uaecptr);
299 > extern void m68k_record_step(uaecptr) REGPARAM;
300   #endif
301   extern void m68k_do_execute(void);
302   extern void m68k_execute(void);
303   #if USE_JIT
302 #ifdef X86_ASSEMBLY
303 /* This is generated code */
304 extern void (*m68k_compile_execute)(void);
305 #else
306 extern void m68k_do_compile_execute(void);
304   extern void m68k_compile_execute(void);
305   #endif
306 + #ifdef USE_CPU_EMUL_SERVICES
307 + extern int32 emulated_ticks;
308 + extern void cpu_do_check_ticks(void);
309 +
310 + static inline void cpu_check_ticks(void)
311 + {
312 +        if (--emulated_ticks <= 0)
313 +                cpu_do_check_ticks();
314 + }
315 + #else
316 + #define cpu_check_ticks()
317 + #define cpu_do_check_ticks()
318   #endif
319  
320   #endif /* NEWCPU_H */

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines