Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

MPLAYER update (Win32, tests needed) (Announce)

posted by Rugxulo Homepage, Usono, 22.12.2009, 10:19

> - Illegal instruction exception on old Pentium 1 CPU's
> http://pastebin.com/m31384347

Just for clarity (although I'm not that experienced, honestly):


lea  esi,[esi]       ; Crappy code !!!


Most likely a NOP equivalent for speed reasons / alignment.


add  edx,1           ; Crappy code !!!


INC/DEC are slow on Pentium 4 on up, and forbidden completely in 64-bit mode. GCC actually generates this a lot when using -mtune=generic or similar.


nop                  ; Crappy code !!!
lea  esi,[esi]       ; Crappy code !!!


While I agree that blindly putting NOPs everywhere is pointless and annoying, they are faster than ever (esp. on Core 2), e.g. less than one clock nowadays. Even using them on an original Pentium can allegedly increase performance, if used correctly.


mov  esp,[ebp-$14]   ; &
lea  esp,[ebp-$0C]   ; & Crappy code :-D


Okay, seems redundant here.


adc  esi,0           ; !!!
neg  esi


Could be useful (although I can't tell from looking what it intends to do here). I know Darek Mihocka's No Execute blog whines about some VC compilers using SBB, which doesn't avoid partial register stalls.

Long story short: it's extremely complicated trying to optimize for anything!!

(EDIT: That reminds me, I just found out [a year late, heh] that Darek open-sourced the DOS version of PC Xformer 3.80, but it's hidden inside the GEMCE900.ZIP sources under \atari8\ folder, apparently needs MASM and VC6 or better. It's not as compatible as the Atari800 emulator (which isn't full speed even on my P166), but XFORMER.EXE is fast even on a 486 [Hover Bovver]!)

 

Complete thread:

Back to the forum
Board view  Mix view
22632 Postings in 2109 Threads, 402 registered users, 305 users online (0 registered, 305 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum