Latest upload by: Xavi92
9th August 2017
PSXDEV logo
Chat with Members on EFnet!
IRC Channel Log: #PSXDEV

Latest from the #psxdev IRC Channel on EFnet

NOTE: This page will automatically refresh every 240 seconds (4 minutes) and only display 100 lines at once.
The latest line will always be at the top of the page.

Revision 4 (11/DEC/2017).

What is and how do I join the PSXDEV IRC channel?


[2018-09-21 11:39:20] <tokomak> or rather, the love it deserved
[2018-09-21 11:39:03] <tokomak> vita is a fuckin' great handheld that didn't get the games it deserved
[2018-09-21 11:38:49] <tokomak> ps vita > ps1 classic
[2018-09-21 02:41:08] <smf--> I want a cheap one, I've spent too much money on ps4/switch/ps1 classic this year
[2018-09-21 02:40:37] <smf--> I never had a vita, I kinda wish I had a 3.65 vita
[2018-09-21 02:36:44] <itoikenza> oh how i never knew thee!
[2018-09-21 02:36:09] <itoikenza> poor vita.
[2018-09-21 02:36:01] <itoikenza> PS Vita Production Ends in 2019 https://www.pcmag.me/a/2533131 via @PCMag
[2018-09-21 02:35:53] <itoikenza> PSone.
[2018-09-21 02:35:47] <itoikenza> MoockyLoc: no
[2018-09-20 23:36:30] <MoockyLoc> PS1
[2018-09-20 23:35:49] <itoikenza> revival of the psone! baby!
[2018-09-20 23:35:29] <itoikenza> https://kotaku.com/sony-just-announced-the-99-playstation-classic-console-1829159574
[2018-09-20 23:18:56] <tokomak> well I'm pretty much stuck with what the launch playstation will do anyhow
[2018-09-20 18:08:05] <smf-> if run on a gpu that doesn't support it
[2018-09-20 18:07:38] <smf-> it probably translates it into a textured quad
[2018-09-20 18:07:11] <smf-> ah, actually it's supported in the extended graphics library, which is the slow one
[2018-09-20 18:00:02] <smf-> or at least they don't document it
[2018-09-20 17:58:51] <smf-> there is an x flip & y flip available, but because the launch ps1 don't support that then the library doesn't allow it
[2018-09-20 17:58:29] <smf-> I'm not sure what games actually use it either, not many do.... the hardware can do things that the libraries don't allow... like textured rectangle flipping
[2018-09-20 17:57:40] <smf-> I'm not sure how you then tell it not to draw over that, I can tell you from hardware but not libgpu
[2018-09-20 17:54:57] <smf-> in theory this is a thing, but I haven't read enough of the psyq manual to figure out how to do it yet. <-- the mask rendering can be done in two ways, you either put it in the texture or you can make all pixels have it or use SetDrawStp so that non transparent pixels (i.e != 0) have it
[2018-09-20 09:00:29] <krom> smf-: nice of you to keep looking after he has gone =D
[2018-09-20 08:59:00] <krom> smf-: lol classic!
[2018-09-20 08:45:22] <smf-> hmm, looking at it.. he's uploading the two tim to the same coordinates
[2018-09-20 08:30:29] <smf-> it's cool you're using real hardware. I haven't got any of my hardware setup
[2018-09-20 08:27:20] <ycelik> Thanks for the tips, I am off to sleep. Tomorrow evening will be another day, another attempt :P
[2018-09-20 08:22:28] <smf-> it makes your exe bigger, but it's easier to test
[2018-09-20 08:22:07] <smf-> to convert the tim into an array, all you do then is #include the file that creates and use the array name instead of the address
[2018-09-20 08:21:15] <smf-> I can't remember if psyq comes with something that will do it, but essentially you can use something like this : https://github.com/gwilymk/bin2c
[2018-09-20 08:20:29] <smf-> I personally would do the later
[2018-09-20 08:20:22] <smf-> But I would not be able to replicate my current process, since, I assume, no$psx will work with an exe that loads tims off cd-rom? <-- yeah you would probably want to either load them from cd, or use something like bin2c to embedd the tim in the exe
[2018-09-20 08:19:19] <smf-> playing games in the vram viewer is funky
[2018-09-20 08:18:52] <smf-> alot of the arcade games have double the vram of the console, so the vram viewer is 1024 x 1024
[2018-09-20 08:17:41] <smf-> which is why it's not particularly user friendly
[2018-09-20 08:17:25] <smf-> it's mostly been for debugging mame rendering
[2018-09-20 08:16:41] <krom> cool!
[2018-09-20 08:16:21] <smf-> I think no$ has that
[2018-09-20 08:16:17] <smf-> I'd like to do something more complex where you can click on a pixel and it tells you what drew it
[2018-09-20 08:16:15] <krom> yep, sounds great for debugging stuff
[2018-09-20 08:15:49] <smf-> so when something isn't drawn properly you just press the button until it disappears
[2018-09-20 08:15:31] <krom> wow nice, very useful stuff!
[2018-09-20 08:15:28] <smf-> etc
[2018-09-20 08:15:21] <smf-> press it again and instead it will skip the textured triangles
[2018-09-20 08:15:07] <smf-> so you press a button and it skips all the flat shaded triangles
[2018-09-20 08:14:50] <smf-> you can skip drawing them by primitive code
[2018-09-20 08:14:34] <smf-> I added a crude method for figuring out what primatives are used to draw a scene as well
[2018-09-20 08:13:51] <krom> smf-: very useful!
[2018-09-20 08:13:41] <smf-> you can switch to a mesh view as well
[2018-09-20 08:13:36] <ycelik> But I would not be able to replicate my current process, since, I assume, no$psx will work with an exe that loads tims off cd-rom?
[2018-09-20 08:13:31] <krom> smf-: wow thanks for trying, I'd love that
[2018-09-20 08:13:13] <smf-> yeah, I've been meaning to try to get it good enough for a while
[2018-09-20 08:12:58] <krom> would be lovely to have that in anyway ;)
[2018-09-20 08:12:49] <smf-> because it's a bit of a hack
[2018-09-20 08:12:34] <krom> why is it not standard?
[2018-09-20 08:12:25] <krom> smf-: oh wow!!
[2018-09-20 08:12:06] <smf-> ycelik: you should use no$sns emu, it has a VRAM viewer, so you can tell if your texture is uploaded to VRAM <-- mame has one as well but you currently have to enable it at compile time
[2018-09-20 08:10:52] <smf-> or LoadImage in this case
[2018-09-20 08:10:43] <smf-> LoadImage(&tRect, tTim.pixel); // Load TIM-DATA into VideoRam
[2018-09-20 08:10:41] <smf-> GsGetTimInfo(tMemAddress, &tTim); // SAVE TIM-Info in TIM
[2018-09-20 08:10:41] <smf-> tRect.x = tTim.px;
[2018-09-20 08:10:41] <smf-> tRect.y = tTim.py;
[2018-09-20 08:10:41] <smf-> tRect.w = tTim.pw;
[2018-09-20 08:10:41] <smf-> tRect.h = tTim.ph;
[2018-09-20 08:10:40] <smf-> ycelik, yeah, which they would then pass to LoadTexture
[2018-09-20 08:09:37] <ycelik> The examples that I have seen use pqbload to load the tim file, and then afterwards use GsGetTimInfo in order to get the pixel data for loading the right TPage
[2018-09-20 08:09:09] <krom> https://problemkaputt.de/psx.htm
[2018-09-20 08:08:34] <krom> *no$psx
[2018-09-20 08:08:28] <krom> ycelik: you should use no$sns emu, it has a VRAM viewer, so you can tell if your texture is uploaded to VRAM
[2018-09-20 08:07:01] <smf-> smf any suggestions on how to do that? I am currently using pqbload to put the textures in the vram <-- doesn't that put it in cpu ram?
[2018-09-20 08:06:53] <ycelik> smf, in case you might be interesting in looking at the code, here it is: https://pastebin.com/gKmvQUGr
[2018-09-20 08:06:19] <krom> yep =D
[2018-09-20 08:06:09] <smf-> you can probably vary the amount based on how close to the camera the object is
[2018-09-20 08:05:24] <krom> yeah, I'll experiment, thanks for all the tips
[2018-09-20 08:05:08] <smf-> you probably don't have to tesselate that much
[2018-09-20 08:05:07] <krom> o.k yep, all 2D commands
[2018-09-20 08:04:25] <smf-> it's just the gpu doesn't know anything about 3d
[2018-09-20 08:04:19] <krom> yep
[2018-09-20 08:04:11] <smf-> so the corners of your polygons are correct
[2018-09-20 08:04:03] <krom> nice =D
[2018-09-20 08:03:52] <smf-> I think it's just tesselation, gte does perspective
[2018-09-20 08:03:20] <krom> is that using tesselation, or moving UV coords depending on the view of the texture?
[2018-09-20 08:03:10] <smf-> create more anchor points for the renderer
[2018-09-20 08:02:27] <smf-> essentially you need to do the perspective correction in software
[2018-09-20 08:01:54] <krom> thanks for the help on this =D
[2018-09-20 08:01:45] <krom> yep!
[2018-09-20 08:01:38] <smf-> alot of systems don't do perspective correction on every pixel anyway
[2018-09-20 08:01:34] <krom> o.k great!
[2018-09-20 08:01:24] <smf-> pretty much, the ps1 doesn't do perspective correction & the larger the texture the worse it becomes
[2018-09-20 08:01:18] <krom> I did notice my cube textures looks less warped the further is is away lol
[2018-09-20 08:00:53] <krom> ah is that all!
[2018-09-20 08:00:44] <smf-> krom, tesselation
[2018-09-20 08:00:33] <krom> smf-: I have a question, you know the GPU "warping" textures, I have seen videos and examples where people have fixed that on PSX, is there atrick to fixing warped textures on the PSX?
[2018-09-20 08:00:15] <ycelik> smf any suggestions on how to do that? I am currently using pqbload to put the textures in the vram.
[2018-09-20 07:59:32] <ycelik> smf, well I assumed the same, but when I make multiple primitives with the same texture page and then put them in the OT, I see the layers working perfectly
[2018-09-20 07:59:29] <smf-> you should flush the texture cache after uploading textures
[2018-09-20 07:58:02] <smf-> as long as they are at the correct place in vram it should be fine
[2018-09-20 07:57:44] <smf-> w I have a feeling that if I stop loading multiple TIMs, the problem will be solved. <-- the gpu won't care whether you load 1 or more TIMs
[2018-09-20 07:54:47] <krom> I do not use any mipmaps myself, as I would suspect the GPU strides the texture no matter what size in the same amount of steps
[2018-09-20 07:54:13] <krom> in my asm, I just load all the textures in my scene to VRAM before rendering the scene, & my objects link to the texture pages/palette/UV/Color info required...

...



Copyright © 2012-2018 PSXDEV.NET

, "PlayStation", , , "DUALSHOCK", "Net Yaroze" and "PSone" are registered trademarks of Sony Computer Entertainment Inc. .
This page is for informational use only. The user of this software, assumes full responsbility ensuring its use in accordance with local and federal laws.
The software and hardware on this site is provided "as-is", without any express, implied warranty or guarantees.