Rev 1067 | Rev 1073 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1067 | Rev 1071 | ||
---|---|---|---|
Line 54... | Line 54... | ||
54 | ;; |
54 | ;; |
55 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
55 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 56... | Line 56... | ||
56 | 56 | ||
Line 57... | Line 57... | ||
57 | include 'macros.inc' |
57 | include 'macros.inc' |
Line 58... | Line 58... | ||
58 | 58 | ||
Line 59... | Line 59... | ||
59 | $Revision: 1067 $ |
59 | $Revision: 1071 $ |
Line 2252... | Line 2252... | ||
2252 | .yes_floppy_save: |
2252 | .yes_floppy_save: |
2253 | ret |
2253 | ret |
Line 2254... | Line 2254... | ||
2254 | 2254 | ||
2255 | uglobal |
2255 | uglobal |
2256 | ; bgrchanged dd 0x0 |
2256 | ; bgrchanged dd 0x0 |
2257 | bgrlock db 0 |
2257 | align 4 |
- | 2258 | bgrlockpid dd 0 |
|
2258 | bgrlockpid dd 0 |
2259 | bgrlock db 0 |
Line 2259... | Line 2260... | ||
2259 | endg |
2260 | endg |
Line 2260... | Line 2261... | ||
2260 | 2261 | ||
Line 2265... | Line 2266... | ||
2265 | cmp ecx,0 |
2266 | cmp ecx,0 |
2266 | je sbgrr |
2267 | je sbgrr |
2267 | cmp edx,0 |
2268 | cmp edx,0 |
2268 | je sbgrr |
2269 | je sbgrr |
2269 | @@: |
2270 | @@: |
2270 | mov al, 1 |
2271 | ;;Maxis use atomic bts for mutexes 4.4.2009 |
2271 | xchg [bgrlock], al |
2272 | bts dword [bgrlock], 0 |
2272 | test al, al |
- | |
2273 | jz @f |
2273 | jnc @f |
2274 | call change_task |
2274 | call change_task |
2275 | jmp @b |
2275 | jmp @b |
2276 | @@: |
2276 | @@: |
2277 | mov [BgrDataWidth],ecx |
2277 | mov [BgrDataWidth],ecx |
2278 | mov [BgrDataHeight],edx |
2278 | mov [BgrDataHeight],edx |
Line 2366... | Line 2366... | ||
2366 | ret |
2366 | ret |
2367 | nosb5: |
2367 | nosb5: |
Line 2368... | Line 2368... | ||
2368 | 2368 | ||
2369 | cmp ebx, 6 |
2369 | cmp ebx, 6 |
- | 2370 | jnz nosb6 |
|
2370 | jnz nosb6 |
2371 | ;;Maxis use atomic bts for mutex 4.4.2009 |
2371 | @@: |
- | |
2372 | mov al, 1 |
2372 | @@: |
2373 | xchg [bgrlock], al |
- | |
2374 | test al, al |
2373 | bts [bgrlock], 0 |
2375 | jz @f |
2374 | jnc @f |
2376 | call change_task |
2375 | call change_task |
2377 | jmp @b |
2376 | jmp @b |
2378 | @@: |
2377 | @@: |
2379 | mov eax, [CURRENT_TASK] |
2378 | mov eax, [CURRENT_TASK] |