MemoryAlloc gone except for disk video
Disk video is the only thing that uses MemoryAlloc anymore. The rest of the code is either using statics, globals, or malloc'ed memory. -- "The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download <http://www.xmission.com/~legalize/book/download/index.html> Legalize Adulthood! <http://blogs.xmission.com/legalize/>
Rich,
Disk video is the only thing that uses MemoryAlloc anymore. The rest of the code is either using statics, globals, or malloc'ed memory.
Are you forcing the use of the disk drive? Or, are you letting the memory routines use physical memory if it's available? The status screen shows that the disk drive is being used, which shouldn't be the case for lower resolution images. Jonathan
In article <1171978680.3893.2.camel@linux.site>, Jonathan Osuch <osuchj@avalon.net> writes:
Disk video is the only thing that uses MemoryAlloc anymore. The rest of the code is either using statics, globals, or malloc'ed memory.
Are you forcing the use of the disk drive?
The MEMORY path is still in MemoryAlloc for diskvid.c to use; I don't recall changing anything in its logic where it decides to use disk or memory. You can look at the CVS history on diskvid.c to check. The number of modifications I've made to the source is not small, so they don't stick out as individual items in my mind. -- "The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download <http://www.xmission.com/~legalize/book/download/index.html> Legalize Adulthood! <http://blogs.xmission.com/legalize/>
Rich,
The MEMORY path is still in MemoryAlloc for diskvid.c to use; I don't recall changing anything in its logic where it decides to use disk or memory. You can look at the CVS history on diskvid.c to check. The number of modifications I've made to the source is not small, so they don't stick out as individual items in my mind.
The problem is in the check_for_mem() routine. maxmem = (long)USHRT_MAX; /* limit EXTRA and FARMEM to 64K */ USHRT_MAX = FFFF = 65535 320 x 200 = 64000, so when we add 8194 to it, we are over the max allowed for the MEMORY type, the way it is presently coded. That is why all we are seeing is the DISK type used for disk video modes. Pick some suitably big number and use it instead of USHRT_MAX. Jonathan
In article <1172189685.3918.8.camel@linux.site>, Jonathan Osuch <osuchj@avalon.net> writes:
Pick some suitably big number and use it instead of USHRT_MAX.
Thanks; I'll add that change in before beta 6, which will probably be released this weekend. -- "The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download <http://www.xmission.com/~legalize/book/download/index.html> Legalize Adulthood! <http://blogs.xmission.com/legalize/>
In article <1172273483.3889.1.camel@linux.site>, Jonathan Osuch <osuchj@avalon.net> writes:
Pick some suitably big number and use it instead of USHRT_MAX.
Thanks; I'll add that change in before beta 6, which will probably be released this weekend.
The MEMORY type routines probably need to be debugged.
Are there known issues with them? -- "The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download <http://www.xmission.com/~legalize/book/download/index.html> Legalize Adulthood! <http://blogs.xmission.com/legalize/>
Rich,
The MEMORY type routines probably need to be debugged.
Are there known issues with them?
I suspect there are. The history routines didn't work until you allocated memory for them locally. They wouldn't need as much memory as a disk video mode, so the MEMORY allocation was probably working. That would indicate some other problem may exist with the MEMORY type and we should verify that the disk video mode works okay when using it. Jonathan
In article <1172288934.3906.5.camel@linux.site>, Jonathan Osuch <osuchj@avalon.net> writes:
Rich,
The MEMORY type routines probably need to be debugged.
Are there known issues with them?
I suspect there are. The history routines didn't work until you allocated memory for them locally.
Actually I just tested with beta 3 and they do seem to work properly. I also reviewed all my changes to memory.c and they all have to do with cleanup and removing the other memory types that no longer relate to a flat memory model. -- "The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download <http://www.xmission.com/~legalize/book/download/index.html> Legalize Adulthood! <http://blogs.xmission.com/legalize/>
participants (2)
-
Jonathan Osuch -
Richard