Path: chuka.playstation.co.uk!news From: "grim" Newsgroups: scee.yaroze.programming.2d_graphics Subject: Re: GsIMAGE pmode 8 (LARGE) Date: 6 Apr 1997 16:26:02 GMT Organization: froth kid Lines: 102 Message-ID: <01bc29a2$9bf69300$c793989e@fourny.demon.co.uk> References: <01bc289b$f6314fc0$c793989e@fourny.demon.co.uk> <33422052.4C18@interactive.sony.com> <01bc28b3$29e10100$c793989e@fourny.demon.co.uk> <33450DEC.7AE5@interactive.sony.com> NNTP-Posting-Host: fourny.demon.co.uk X-Newsreader: Microsoft Internet News 4.70.1155 Lewis wrote: > Firstly: code generated should be independent of the difference > between siocons and CodeWarrior, so that people using either > can run it easily. Hence, ALL CodeWarrior-specific functions > should go in special procedures, only to be called > (eg) ifdef CODEWARRIOR. Failure to make a clean separation > will prevent people without Codewarrior from using your > code. Is the PC-side of MWbload not supported in SIOCONS, only in PSCOMUTIL? I kind of assumed it was in both. MWbload is useful. I was going to use it a lot because then I wouldn't have to manually keep a map of where everything is going in memory which kind of makes me gag. > but my real suspicion is the combination of > memory loading only just before its use, > and dubious casting for GetTimInfo; the memory loading > MAY be implemented as non-blocking process, > in which case the loading won't finish until > DrawSync(0), with clearly disaatrous consequences. I tried putting in a DrawSync(0) after MWbload but it didnt affect anything. I also changed the casting to make location a pointer to unsigned long (so the GetTimInfo offet becomes 1). Made no difference > Remedy: do loading into main memory way before anything else > and make certain in finishes before using anything; The main memory loading and texture page creation both have to get done in the initialisation, so I can use the texture page. I think you are on to something with the loading images not finishing. When I accidentally deleted the TIM file (so the load failed), LoadImage did not crash. > and for debugging, it is usually Much quicker to use > printf to find the values of all things (and the > point at which crash occurs) than it is to use the debugger. > Print out all things and you're usually bound to find it; > stepping through the debugger, it's very easy to not check > all variables. IS the printf buffer to the PC flushed after every printf? I've had bad experiences with this sort of thing before. I was actually using the codewarrior debugger which has a rather nice watch window with all the current variables in it. However, I have inserted some printfs. for information, the values printed are; bytes=576 x=640 y=256 w=8 (=32/4) h=32 I'm going to go to Metrowerks support with the problem. I've extracted all the lines that did anything in the C++ and turned them into a C file (since I dont think they even bothered compiling any C++ files before releasing the compiler). Could you look over the file and TIM and make sure the problems not with Sony? (like the TIM file not being the correct format, although in TIMutil its OK) Graeme begin 600 Small.tim M$ ````@````L````M@#@`1 ``0````!\X /@?Q0`%'ST`_1_'P`??/\#_W\` M``````````P"``" `@`!" `@```````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M`* *``````"@JJJJ``````"@J@````"JJJJJJJH`````H*H*``"JJJJJJJJJ M"@```*"JJ@"JJJJJJJH*H*H```"@JJJ@JJJJJJJJ"J"J````H*JJJJJJJJJJ MJJJJJ@```*"JJJJJJJJJJJJJJJH```"@JJJJJJJJJJH*JJJJ````H*JJ"JJJ MJJJJJJ"J"@```*"JJ@"@JJJJJJH*``````"@J@H``*"JJJJJJJH`````H*H` M`````*JJJJH````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` D```````````````````````````````````````````````` ` end begin 600 Main.c M(VEN8VQU9&4@/&QI8G!S+F@^( TC:6YC;'5D92 \%)E8W0[#0EU;G-I9VYE9"!S:&]R="!T4&%G93L-"75N71EPT)"7!R:6YT9B@B;6%L M;&]C(&9A:6QE9%QN(BD[#0E]#0EB>71E%)E8W0N>2D[#7UT ` end