home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #3 / NN_1993_3.iso / spool / comp / sys / amiga / games / 18318 < prev    next >
Encoding:
Text File  |  1993-01-21  |  3.8 KB  |  85 lines

  1. Newsgroups: comp.sys.amiga.games
  2. Path: sparky!uunet!gatech!concert!sas!mozart.unx.sas.com!jamie
  3. From: jamie@cdevil.unx.sas.com (James Cooper)
  4. Subject: Re: Gaming on 68030+ and KS2.0+ machines.
  5. Originator: jamie@cdevil.unx.sas.com
  6. Sender: news@unx.sas.com (Noter of Newsworthy Events)
  7. Message-ID: <C17oBM.Lpv@unx.sas.com>
  8. Date: Thu, 21 Jan 1993 15:57:21 GMT
  9. References:  <bchiu.727616548@crash.cts.com>
  10. Nntp-Posting-Host: cdevil.unx.sas.com
  11. Organization: SAS Institute Inc.
  12. Lines: 71
  13.  
  14.  
  15. In article <bchiu.727616548@crash.cts.com>, bchiu@crash.cts.com (Bill Chiu) writes:
  16. >So many games broke as a consequence of my new machine, Amiga 3000/25.
  17. >
  18. >This must have something to do with the 68030 and it's caches and privileged
  19. >instructions.  (BTW, tell me how caches/privileged instr. break games)
  20. >Games that wasn't designed with KS2.0+ in mind ranked high in the dead game
  21. >list.
  22.  
  23. This one's easy.
  24.  
  25. CACHES
  26.  
  27. A lot of games have the executable encoded, with a small decoder at the
  28. beginning.  If the cache is big enough to contain the first bit of code that the
  29. decoding routines try to jump to, you'll see the problem.  See, the stuff will
  30. be decoded in RAM, but the encoded image is still in the cache, and when the
  31. jump is done, the CPU know that code is already in the cache, so it essentially
  32. jumps to garbage -- GURU!  All they needed to do was force the cache to clear
  33. before jumping to the just-decoded stuff, and all would be fine.  Of course,
  34. since they only had 68000's when they did the code (it doesn't matter that the
  35. higher processors were available and well documented), they didn't do this.
  36.  
  37. Also, simple self-modifying code has the same problem.  If the cache was cleared
  38. after the mod was made, but before you tried to use it, everything would be fine
  39. with these programs.
  40.  
  41. Of course, clearing the cache does take a few precious cycles...
  42.  
  43. PRIVILEDGED INSTRUCTIONS
  44.  
  45. There was an instruction on the 68000, "MOVE  <ea>,SR", which was a regular user
  46. instruction on the 68000, but became a Priviliged instruction as of the release
  47. of the 68010.  SR is the machine Status Register (the place where the Zero,
  48. Carry, etc. flags are stored, and a couple of others).  Unfortunately, a lot of
  49. the Game programmers decided they needed to directly poke these flags for
  50. various reason, mainly because it was faster than using system calls like SetCC.
  51. This causes machine level privilege violations if you are not in Supervisor mode
  52. when this instruction is executed.
  53.  
  54. >Would you people share me with your experience of games that will work with
  55. >A3000, or a list of games that won't.  I use Christ Hames' Degrader quite
  56. >often "to get stupid programs working", and I'll include any games that can
  57. >be revived this method as working.
  58.  
  59. Most newer games work with the A3000, and even a fair number of old ones.  It
  60. all depends on what "tricks," copy-protection methods, etc. were used when the
  61. game was written.  In fact, the copy-protection is the main place most of the
  62. older programs fail.
  63.  
  64. As for a list, someone was posting one for a while, and I think there's one
  65. floating around some of the FTP sites, but I can't remember the name of the file
  66. you need to get.  Something like "compat.lha" or "3kcompat.lha" or something
  67. else with the letters "compat" in it.
  68.  
  69. >One last thing.  Are there other programs that can specialize in one or
  70. >more abilities of degrader that performs better then degrader?  One thing
  71. >odd about degrader I found is that when I select "SelectReset" to boot off
  72. >a Amiga DOS volumn in PAL mode, it never want to open the inital shell
  73. >window.  This can cause problems in some diskettes.
  74.  
  75. Sure there are others, but are you using the latest degrader?  The current
  76. version is 1.30...
  77.  
  78. -- 
  79. ---------------
  80. Jim Cooper
  81. (jamie@unx.sas.com)                             bix: jcooper
  82.  
  83. Any opinions expressed herein are mine (Mine, all mine!  Ha, ha, ha!),
  84. and not necessarily those of my employer.
  85.