Annotation of uae/src/md-i386-watcom/maccess.h, revision 1.1.1.1

1.1       root        1:  /* 
                      2:   * UAE - The Un*x Amiga Emulator
                      3:   * 
                      4:   * Memory access functions
                      5:   *
                      6:   * Copyright 1997 Bernd Schmidt
                      7:   */
                      8: 
                      9: extern uae_u32 do_get_mem_long(uae_u32 *a);
                     10: #pragma aux do_get_mem_long = \
                     11:  "mov edx,[eax]" \
                     12:  "bswap edx" \
                     13:  parm [eax] \
                     14:  value [edx];
                     15: 
                     16: extern uae_u32 do_get_mem_word(uae_u16 *a);
                     17: #pragma aux do_get_mem_word = \
                     18:  "xor edx,edx" \
                     19:  "mov dx,[eax]" \
                     20:  "rol dx,8" \
                     21:  parm [eax] \
                     22:  value [edx];
                     23: 
                     24: static __inline__ uae_u32 do_get_mem_byte(uae_u8 *a)
                     25: {
                     26:     return *a;
                     27: }
                     28: 
                     29: extern void do_put_mem_long(uae_u32 *a, uae_u32 v);
                     30: #pragma aux do_put_mem_long = \
                     31:  "bswap edx" \
                     32:  "mov [eax],edx" \
                     33:  parm [eax] [edx] \
                     34:  modify [edx];
                     35: 
                     36: extern void do_put_mem_word(uae_u16 *a, uae_u16 v);
                     37: #pragma aux do_put_mem_word = \
                     38:  "rol dx,8" \
                     39:  "mov [eax],dx" \
                     40:  parm [eax] [dx] \
                     41:  modify [edx];
                     42: 
                     43: static __inline__ void do_put_mem_byte(uae_u8 *a, uae_u8 v)
                     44: {
                     45:     *a = v;
                     46: }
                     47: 
                     48: #define call_mem_get_func(func,addr) ((*func)(addr))
                     49: #define call_mem_put_func(func,addr,v) ((*func)(addr,v))
                     50: 
                     51: #undef NO_INLINE_MEMORY_ACCESS
                     52: #undef MD_HAVE_MEM_1_FUNCS

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.