Login
Username:

Password:

Remember me



Lost Password?

Register now!

Sections

Who's Online
90 user(s) are online (77 user(s) are browsing Forums)

Members: 2
Guests: 88

LiveForIt, Nuder_Try, more...

Support us!

Headlines

 
  Register To Post  

« 1 ... 3 4 5 (6) 7 8 »
Re: The OpenGL ES 2.0 thread
Just can't stay away
Just can't stay away


See User information
@kas1e

What kind of linking error? Are there some details?

Go to top
Re: The OpenGL ES 2.0 thread
Home away from home
Home away from home


See User information
..


Edited by kas1e on 2021/1/23 10:32:26
Edited by kas1e on 2021/1/23 10:52:21
Join us to improve dopus5!
AmigaOS4 on youtube
Go to top
Re: The OpenGL ES 2.0 thread
Home away from home
Home away from home


See User information
@Capehill
I took just a simple "load shader" example done for OGLES2/SDL2 by Hans from his book, and in Tutorial02 simply replaced his shaders on those in question: Linking fail.

Phew, so its not Irrlicht Engine or GL4ES fault, we left now with warp3dnova and olges2.

There is a test code to play with:

main.cpp
#define SDL_MAIN_HANDLED

#include <SDL2/SDL.h>
#include <SDL2/SDL_opengles2.h>
#include <GLES2/gl2.h>
#include <cstdio>
#include <cstdlib>
#include "Shader.h"


/** Encapsulates the data for a single vertex.
* Must match the vertex shader's input.
*/
typedef struct Vertex_s {
float position[2];
Vertex;








/** Creates the Vertex Buffer Object (VBO) containing
* the given vertices.
*
* @param vertices pointer to the array of vertices
* @param numVertices the number of vertices in the array
*/
GLuint vboCreate(const Vertex *verticesGLuint numVertices) {
// Create the Vertex Buffer Object
GLuint vbo;
int nBuffers 1;
glGenBuffers(nBuffers, &vbo);
glBindBuffer(GL_ARRAY_BUFFERvbo);
// Copy the vertex data in, and deactivate
glBufferData(GL_ARRAY_BUFFERsizeof(Vertex) * numVerticesvertices,
GL_STATIC_DRAW);
glBindBuffer(GL_ARRAY_BUFFER0);
// Check for problems
GLenum err glGetError();
if (
err != GL_NO_ERROR) {
// Failed
glDeleteBuffers(nBuffers, &vbo);
SDL_Log("Creating VBO failed, code %u\n"err);
vbo 0;
}
return 
vbo;
}


/** Frees the VBO.
*
* @param vbo the VBO's name.
*/
void vboFree(GLuint vbo) {
glDeleteBuffers(1, &vbo);
}










const 
unsigned int DISP_WIDTH 640;
const 
unsigned int DISP_HEIGHT 480;

int main(int argcchar *args[]) {
// The window
SDL_Window *window NULL;
// The OpenGL context
SDL_GLContext context NULL;
// Init SDL
if (SDL_Init(SDL_INIT_VIDEO) < 0) {
fprintf(stderr"SDL could not initialize! SDL_Error: %s\n"SDL_GetError());
return 
10;
}


// Setup the exit hook
atexit(SDL_Quit);
// Request OpenGL ES 3.0
SDL_GL_SetAttribute(SDL_GL_CONTEXT_PROFILE_MASKSDL_GL_CONTEXT_PROFILE_ES);
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION2);
SDL_GL_SetAttribute(SDL_GL_CONTEXT_MINOR_VERSION0);
// Want double-buffering
SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER1);
// Create the window
window SDL_CreateWindow("GLES3+SDL2 Tutorial"SDL_WINDOWPOS_UNDEFINED,
SDL_WINDOWPOS_UNDEFINEDDISP_WIDTHDISP_HEIGHT,
 
SDL_WINDOW_OPENGL SDL_WINDOW_SHOWN);
if (!
window) {
SDL_ShowSimpleMessageBox(SDL_MESSAGEBOX_ERROR"Error",
"Couldn't create the main window."NULL);
return 
EXIT_FAILURE;
}
context SDL_GL_CreateContext(window);
if (!
context) {
SDL_ShowSimpleMessageBox(SDL_MESSAGEBOX_ERROR"Error",
"Couldn't create an OpenGL context."NULL);
return 
EXIT_FAILURE;
}
// Clear to black
glClearColor(0.0f0.0f0.0f1.0f);
glClear(GL_COLOR_BUFFER_BIT);


// Update the window
SDL_GL_SwapWindow(window);

// Load the shader program and set it for use
GLuint shaderProg shaderProgLoad("Simple2D.vert""Simple2D.frag");
if (!
shaderProg) {
// Error messages already displayed...
return EXIT_FAILURE;
}
glUseProgram(shaderProg);

// Create the triangle
const Vertex vertices[] = {
0.0f, -0.9f },
0.9f0.9f },
{-
0.9f0.9f } };
GLsizei vertSize sizeof(vertices[0]);
GLsizei numVertices sizeof(vertices) / vertSize;
GLuint triangleVBO vboCreate(verticesnumVertices);
if (!
triangleVBO) {
// Failed. Error message has already been printed, so just quit
return EXIT_FAILURE;
}

// Set up for rendering the triangle (activate the VBO)
GLuint positionIdx 0// Position is vertex attribute 0
glBindBuffer(GL_ARRAY_BUFFERtriangleVBO);
glVertexAttribPointer(positionIdx2GL_FLOATGL_FALSE,
sizeof(Vertex), (const GLvoid*)0);
glEnableVertexAttribArray(positionIdx);


// Now draw!
glDrawArrays(GL_TRIANGLES0numVertices);



// Update the window
SDL_GL_SwapWindow(window);



// Wait for the user to quit
bool quit false;
while (!
quit) {

SDL_Event event;
if (
SDL_WaitEvent(&event) != 0) {
if (
event.type == SDL_QUIT) {
// User wants to quit
quit true;
}
}
}


// Cleanup
vboFree(triangleVBO);
triangleVBO 0;
shaderProgDestroy(shaderProg);
shaderProg 0;


return 
EXIT_SUCCESS;
}


Shader.cpp:

#include <cstdio>
#include <cstdlib>
#include <SDL2/SDL.h>
#include <SDL2/SDL_opengles2.h>
#include "Shader.h"
#ifdef _MSC_VER
#pragma warning(disable:4996) // Allows us to use the portable fopen() function
without warnings
#endif


/** Gets the file's length.
*
* @param file the file
*
* @return size_t the file's length in bytes
*/
static size_t fileGetLength(FILE *file) {
size_t length;
size_t currPos ftell(file);
fseek(file0SEEK_END);
length ftell(file);
// Return the file to its previous position
fseek(filecurrPosSEEK_SET);
return 
length;
}






/** Loads and compiles a shader from a file.
*
* This will print any errors to the console.
*
* @param filename the shader's filename
* @param shaderType the shader type (e.g., GL_VERTEX_SHADER)
*
* @return GLuint the shader's ID, or 0 if failed
*/
static GLuint shaderLoad(const char *filenameGLenum shaderType) {
FILE *file fopen(filename"r");
if (!
file) {
SDL_Log("Can't open file: %s\n"filename);
return 
0;
}
size_t length fileGetLength(file);
// Alloc space for the file (plus '\0' termination)
GLchar *shaderSrc = (GLchar*)calloc(length 11);
if (!
shaderSrc) {
SDL_Log("Out of memory when reading file: %s\n"filename);
fclose(file);
file NULL;
return 
0;
}
fread(shaderSrc1lengthfile);
// Done with the file
fclose(file);
file NULL;
// Create the shader
GLuint shader glCreateShader(shaderType);
glShaderSource(shader1, (const GLchar**)&shaderSrcNULL);
free(shaderSrc);
shaderSrc NULL;
// Compile it
glCompileShader(shader);
GLint compileSucceeded GL_FALSE;
glGetShaderiv(shaderGL_COMPILE_STATUS, &compileSucceeded);
if (!
compileSucceeded) {
// Compilation failed. Print error info
SDL_Log("Compilation of shader %s failed:\n"filename);
GLint logLength 0;
glGetShaderiv(shaderGL_INFO_LOG_LENGTH, &logLength);
GLchar *errLog = (GLchar*)malloc(logLength);
if (
errLog) {
glGetShaderInfoLog(shaderlogLength, &logLengtherrLog);
SDL_Log("%s\n"errLog);
free(errLog);
}
else {
SDL_Log("Couldn't get shader log; out of memory\n");
}
glDeleteShader(shader);
shader 0;
}
return 
shader;
}




/** Destroys a shader.
*/
static void shaderDestroy(GLuint shaderID) {
glDeleteShader(shaderID);
}





GLuint shaderProgLoad(const char *vertFilename, const char *fragFilename) {
GLuint vertShader shaderLoad(vertFilenameGL_VERTEX_SHADER);
if (!
vertShader) {
SDL_Log("Couldn't load vertex shader: %s\n"vertFilename);
return 
0;
}
GLuint fragShader shaderLoad(fragFilenameGL_FRAGMENT_SHADER);
if (!
fragShader) {
SDL_Log("Couldn't load fragment shader: %s\n"fragFilename);
shaderDestroy(vertShader);
vertShader 0;
return 
0;
}
GLuint shaderProg glCreateProgram();
if (
shaderProg) {
glAttachShader(shaderProgvertShader);
glAttachShader(shaderProgfragShader);
glLinkProgram(shaderProg);
GLint linkingSucceeded GL_FALSE;
glGetProgramiv(shaderProgGL_LINK_STATUS, &linkingSucceeded);
if (!
linkingSucceeded) {
SDL_Log("Linking shader failed (vert. shader: %s, frag. shader: %s\n",
vertFilenamefragFilename);
GLint logLength 0;
glGetProgramiv(shaderProgGL_INFO_LOG_LENGTH, &logLength);
GLchar *errLog = (GLchar*)malloc(logLength);
if (
errLog) {
glGetProgramInfoLog(shaderProglogLength, &logLengtherrLog);
SDL_Log("%s\n"errLog);
free(errLog);
}
else {
SDL_Log("Couldn't get shader link log; out of memory\n");
}
glDeleteProgram(shaderProg);
shaderProg 0;
}
}
else {
SDL_Log("Couldn't create shader program\n");
}
// Don't need these any more
shaderDestroy(vertShader);
shaderDestroy(fragShader);
return 
shaderProg;
}



void shaderProgDestroy(GLuint shaderProg) {
glDeleteProgram(shaderProg);
}


Compile it like this:

Quote:

ppc-amigaos-g++.exe Main.cpp Shader.cpp -o test -lSDL2


And put my 2 simple shaders in the previous post as Simple2D.frag and Simple2D.vert. And as a result:

Quote:

INFO: Linking shader failed


Once i commented out uniform sampler2D texture from Simple2D.vert, then everything compiles.

Join us to improve dopus5!
AmigaOS4 on youtube
Go to top
Re: The OpenGL ES 2.0 thread
Home away from home
Home away from home


See User information
@Capehill
Running our beloved glSnoop over ogles2 test case, and damn surprise:

Quote:

W3DN_GCN.library (0): ERROR: Accessing textures from vertex shaders isn't supported


Sadly those errors in the first place from both Irrlicht and gl4es weren't too explaining, but at least we find it.

Through interesting, if we have gl_VertexID support, then probably without using textures from them is of no big help?

Join us to improve dopus5!
AmigaOS4 on youtube
Go to top
Re: The OpenGL ES 2.0 thread
Just can't stay away
Just can't stay away


See User information
@kas1e

Quote:

Sadly those errors in the first place from both Irrlicht and gl4es weren't too explaining, but at least we find it.


Yeah, seems you were the first one to try texture sampling in vertex shader?

Quote:

Through interesting, if we have gl_VertexID support, then probably without using textures from them is of no big help?


Having texture access in vertex shader would be useful to map colours or some xyz offset to vertex (by texture lookup).

Still gl_VertexID alone should be useful for defining procedural geometry by the GPU, like some fancy demo effects.

Go to top
Re: The OpenGL ES 2.0 thread
Just popping in
Just popping in


See User information
@Daytona675x

During porting an SDL2+GLES2 based app a crash inside ogles2.library has been discovered if the app does not delete the context before quit:

Crash log for task "acidwarp" 
Generated by GrimReaper 53.19 
Crash occured in module ogles2
.library at address 0x7F4E4728 
Type of crash
: DSI (Data Storage Interrupt) exception 
Alert number
: 0x80000003 

Register dump

GPR (General Purpose Registers): 
   0: 7F4E1C3C 65F64B00 00000002 00000000 6C4F2348 65D08B10 00000168 65103000  
   8
: 0215A968 66037390 65D06B78 0183A984 00000001 6C5E6F4C 65C336A8 00000001  
  16
: 6C4F28D0 EFEDD910 671E6C40 00000000 65F64DA8 7F8C1210 00000009 65C33698  
  24
: 00000003 65DFA868 7F4D5B3C 65DFCC40 00000000 65DFCC34 00000000 65D06B78  


FPR 
(Floating Point Registers, NaN = Not a Number): 
   0:              nan              752            349.5              752  
   4
:           -349.5       4.5036e+15              273              128  
   8
:               68              654               52       4.5036e+15  
  12
:       4.5036e+15      2.14748e+09     -4.2103e+201     9.47356e+185  
  16
:     1.43223e+181      4.2306e+183     3.81558e+171     6.61988e+202  
  20
:     5.78223e+167      3.89031e-41     2.68001e+171     3.45693e+188  
  24
:      2.6336e+241     5.77592e+166     7.10418e+267     1.35133e+244  
  28
:     1.00605e+186      1.12147e+92      2.7685e+268    -1.17935e+234  

FPSCR 
(Floating Point Status and Control Register): 0x82004000 


SPRs 
(Special Purpose Registers): 
           Machine State (msr) : 0x0002F030 
                Condition 
(cr) : 0x65CA0000 
      Instruction Pointer 
(ip) : 0x7F4E4728 
       Xtended Exception 
(xer) : 0x656DB134 
                   Count 
(ctr) : 0x00570001 
                     Link 
(lr) : 0x00000000 
            DSI Status 
(dsisr) : 0x85027002 
            Data Address 
(dar) : 0x65CA9A44 



680x0 emulated registers

DATA: 00000001 00000000 00000000 00000000 00000000 00000000 00000000 00000000  
ADDR
: 6FFA4000 82D1D600 00000000 00000000 00000000 00000000 00000000 65F64780  
FPU0
:                0                0                0                0  
FPU4
:                0                0                0                0  



Symbol info

Instruction pointer 0x7F4E4728 belongs to module "ogles2.library" (HUNK/Kickstart

Stack trace
    module LIBS:ogles2.library at 0x7F4E4728 (section 0 @ 0x11704
    module LIBS:ogles2.library at 0x7F4E1C3C (section 0 @ 0xEC18
    module LIBS:ogles2.library at 0x7F4F36EC (section 0 @ 0x206C8
    module LIBS:ogles2.library at 0x7F4F3404 (section 0 @ 0x203E0
    module LIBS:ogles2.library at 0x7F4D30E4 (section 0 @ 0xC0
    native kernel module kernel+0x0003a9ac 
    native kernel module ramlib
.kmod+0x00000218 
    
[src/video/amigaos4/SDL_os4library.c:91] acidwarp:OS4_DropInterface()+0x4c (section 1 @ 0x3C938
    [src/video/amigaos4/SDL_os4opengles.c:105] acidwarp:OS4_GLES_UnloadLibrary()+0x28 (section 1 @ 0x3CE58
    [src/video/SDL_video.c:2902] acidwarp:SDL_DestroyWindow()+0x1ec (section 1 @ 0x37330
    [src/video/SDL_video.c:2999] acidwarp:SDL_VideoQuit()+0x64 (section 1 @ 0x379A4
    [src/SDL.c:378] acidwarp:SDL_QuitSubSystem()+0x178 (section 1 @ 0x84F8
    [src/SDL.c:443] acidwarp:SDL_Quit()+0x3c (section 1 @ 0x8748
    acidwarp:quit()+0x6c (section 1 @ 0x1EF8
    acidwarp:main()+0x0 (section 1 @ 0x220C
    acidwarp:disp_processInput()+0x15c (section 1 @ 0x3ED8
    acidwarp:main()+0x33c (section 1 @ 0x2548
    native kernel module newlib.library.kmod+0x000025fc 
    native kernel module newlib
.library.kmod+0x00003328 
    native kernel module newlib
.library.kmod+0x0000384c 
    acidwarp
:_start()+0x1e0 (section 1 @ 0x1C1C
    native kernel module dos.library.kmod+0x0002a458 
    native kernel module kernel
+0x0005c18c 
    native kernel module kernel
+0x0005c204 

PPC disassembly

 7f4e4720: 813f0018   lwz               r9,24(r31
 7f4e4724: 80690004   lwz               r3,4(r9
*
7f4e4728: 81230118   lwz               r9,280(r3
 7f4e472c: 7d2903a6   mtctr             r9 
 7f4e4730
: 4e800421   bctrl              

System information


CPU  
 Model
: Freescale P5020 (E5500 core) V1.2  
 CPU speed
: 1995 MHz  
 FSB speed
: 798 MHz  
 Extensions
:   

Machine  
 Machine name
: AmigaOne X5000/20  
 Memory
: 2097152 KB  
 Extensions
: bus.pci bus.pcie  

Expansion buses  
 PCI
/AGP  
  00
:00.0 Vendor 0x1957 Device 0x0421  
  01
:00.0 Vendor 0x1002 Device 0x683F  
   Range 0
: 80000000 - 90000000 (PREF.MEM)  
   Range 2
: 90000000 - 90040000 (MEM)  
   Range 4
: 00001000 - 00001100 (IO)  
  01
:00.1 Vendor 0x1002 Device 0xAAB0  
   Range 0
: 90040000 - 90044000 (MEM)  
  02
:00.0 Vendor 0x1957 Device 0x0421  
  03
:00.0 Vendor 0x111D Device 0x8092  
  04
:01.0 Vendor 0x111D Device 0x8092  
  04
:02.0 Vendor 0x111D Device 0x8092  
  04
:03.0 Vendor 0x111D Device 0x8092  
  04
:08.0 Vendor 0x111D Device 0x8092  
  04
:10.0 Vendor 0x111D Device 0x8092  
  05
:00.0 Vendor 0x12D8 Device 0xE111  
  06
:04.0 Vendor 0x10EC Device 0x8139  
   Range 0
: 00001000 - 00001100 (IO)  
   Range 1
: A0000000 - A0000100 (MEM)  
  07
:00.0 Vendor 0x17A0 Device 0x7163  
  08
:00.0 Vendor 0x1412 Device 0x1724  
   Range 0
: 00002000 - 00002020 (IO)  
   Range 1
: 00002080 - 00002100 (IO)  

Libraries  
 0x6d2484e8
: ISO-8859-15.charset V52.1  
 0x6d248368
: german_ISO-8859-15.language V52.1  
 0x022becc2
: exec.library V54.30  
 0x6fec6c78
: cgxvideo.library V42.1  
 0x6886d068
: W3DN_SI.library V1.68  
 0x6886dbe8
: Warp3DNova.library V1.68  
 0x6886dce8
: ogles2.library V2.11  
 0x66111c18
: minigl.library V2.24  
 0x671e66f0
: Warp3D.library V53.27  
 0x6aeea328
: W3D_SI.library V1.14  
 0x6674fd38
: W3D_Permedia2.library V53.4  
 0x6674fcb8
: W3D_Napalm.library V53.1  
 0x6674fbb8
: W3D_Avenger.library V53.1  
 0x66549f28
: W3D_Picasso96.library V53.12  
 0x683e9ab8
: DateTime.docky V52.11  
 0x683ea280
: datebrowser.gadget V53.9  
 0x6a770b48
: NetDock.docky V52.0  
 0x6a770848
: GFXDock.docky V51.3  
 0x6a7705c8
: RAMDock.docky V51.1  
 0x6a770448
: Spacer.docky V53.2  
 0x68549338
: CPUDock.docky V51.0  
 0x685492b8
: SubDock.docky V53.1  
 0x6894e838
: Separator.docky V53.2  
 0x6894e540
: anim.gadget V53.1  
 0x6895e2c0
: slider.gadget V53.17  
 0x6ae6e270
: shared.image V2.1  
 0x6894e438
: progressbar.gadget V53.12  
 0x6895e180
: getfont.gadget V53.11  
 0x6acd0bd8
: infowindow.class V53.11  
 0x689601f0
: texteditor.gadget V53.28  
 0x6895e0d8
: tickbox.gadget V53.14  
 0x6895e040
: arexx.class V53.6  
 0x6acc1f30
: getfile.gadget V53.12  
 0x68923024
: clipview.library V1.12  
 0x6a85de88
: clicktab.gadget V53.50  
 0x6a841e98
: screenblanker.library V53.7  
 0x6a46d5f0
: requester.class V53.20  
 0x6acc1710
: space.gadget V53.7  
 0x6acc1670
: bitmap.image V53.9  
 0x6acc15d0
: integer.gadget V53.13  
 0x6ae6e738
: chooser.gadget V53.22  
 0x6acc1210
: penmap.image V53.6  
 0x6acc1350
: checkbox.gadget V53.12  
 0x6c62a918
: filesave.audio V6.5  
 0x6c62a858
: Envy24HT.audio V5.23  
 0x6ae6e1d4
: device.audio V6.2  
 0x6c5a6e18
: listbrowser.gadget V53.74  
 0x6c62a6e0
: scroller.gadget V53.16  
 0x6d2b1020
: string.gadget V53.22  
 0x6c65caa4
: usergroup.library V4.30  
 0x6c8678f0
: bsdsocket.library V4.307  
 0x6ca0aebc
: muiasl.library V21.19  
 0x6c76d964
: asl.library V53.54  
 0x6c945a30
: mathieeedoubbas.library V53.1  
 0x6c94ebec
: textclip.library V53.4  
 0x6c9452c4
: xpkmaster.library V5.2  
 0x6ca0a388
: usbhidgate.library V53.3  
 0x6ca900bc
: xadmaster.library V13.1  
 0x6ccc5b6c
: hid.usbfd V53.14  
 0x6d255230
: button.gadget V53.22  
 0x6d2552d0
: glyph.image V53.4  
 0x6d1fe230
: window.class V54.14  
 0x6cd13428
: popupmenu.class V53.2  
 0x6cd14308
: popupmenu.library V53.14  
 0x6d2550f0
: label.image V53.14  
 0x6d255050
: drawlist.image V53.3  
 0x6ff0dd78
: layout.gadget V54.8  
 0x6cd13240
: bevel.image V53.6  
 0x6d24af40
: png.datatype V53.10  
 0x6d2db254
: picture.datatype V53.10  
 0x6cd15240
: Picasso96API.library V54.18  
 0x6d242768
: timezone.library V53.11  
 0x6d241c68
: application.library V53.30  
 0x6d2bad6c
: ft2.library V53.2  
 0x6ff15c4c
: workbench.library V53.62  
 0x6d1c5d10
: gadtools.library V53.8  
 0x6d2b1a8c
: commodities.library V53.10  
 0x6d346540
: datatypes.library V54.7  
 0x6d2ba874
: png.iconmodule V53.1  
 0x6d42f8cc
: icon.library V54.6  
 0x6d2410b0
: z.library V53.9  
 0x6f9eba38
: version.library V53.18  
 0x6d2542e0
: iffparse.library V53.3  
 0x6ffb8ecc
: locale.library V54.2  
 0x6ff1141c
: diskfont.library V53.13  
 0x6ffabe58
: petunia.library V53.6  
 0x6feb3228
: dos.library V54.112  
 0x6ff0d364
: usbprivate.library V53.22  
 0x6ff0c73c
: massstorage.usbfd V53.84  
 0x6ff0d21c
: hub.usbfd V53.11  
 0x6ff0c6a8
: bootkeyboard.usbfd V52.3  
 0x6ff0c628
: bootmouse.usbfd V53.3  
 0x6ff0c528
: mounter.library V53.20  
 0x6ff0d16c
: usbresource.library V53.22  
 0x6ff90478
: hunk.library V53.4  
 0x6ff0d064
: elf.library V53.30  
 0x6ff654d0
: intuition.library V54.28  
 0x6ff58530
: keymap.library V53.9  
 0x6ff5a544
: nonvolatile.library V54.7  
 0x6ff10100
: cybergraphics.library V43.0  
 0x6ff9f420
: RadeonHD.chip V3.7  
 0x6ffa3420
: graphics.library V54.248  
 0x6ff91320
: layers.library V54.12  
 0x6ff50150
: rtg.library V54.90  
 0x6ff9f2a4
: PCIGraphics.card V53.18  
 0x6ffaa258
: newlib.library V53.62  
 0x6ff9e1ac
: utility.library V54.2  
 0x6ffa8398
: expansion.library V53.1  
 0x6c92991e
: rexxsyslib.library V53.4 (Legacy)  

Devices  
 0x6ad01284
: clipboard.device V53.5  
 0x6c62fe88
: rtl8139.device V53.6  
 0x6f8dd3d4
: ahi.device V6.6  
 0x6cb924a4
: diskimage.device V53.4  
 0x6ff9ed10
: usbsys.device V53.22  
 0x6ff90844
: p50x0sata.device V54.79  
 0x6ff90798
: vsata.device V54.8  
 0x6ff90730
: ehci.usbhcd V53.26  
 0x6ff90690
: ohci.usbhcd V53.22  
 0x6ff905f0
: uhci.usbhcd V53.15  
 0x6ff9e848
: console.device V53.105  
 0x6ff5a670
: ramdrive.device V54.1  
 0x6ff5877c
: input.device V53.6  
 0x6ff11024
: keyboard.device V53.12  
 0x6ff5a050
: timer.device V53.4  

Tasks  
 rhd_gc 
(Waiting)  
  Stack
: 0x6febe000 - 0x6fec6000, pointer @ 0x6fec5f40 (Cookie OK)  
  Signals
: SigRec 0x80000001, SigWait 0x00000000  
  State
: Task (Waiting)  
 Exec Command and Control 
(Waiting)  
  Stack
: 0x6fe44000 - 0x6fe48000, pointer @ 0x6fe47f50 (Cookie OK)  
  Signals
: SigRec 0x80000000, SigWait 0x00000000  
  State
: Task (Waiting)  
 ClickToFront 
(Waiting)  
  Stack
: 0x6a7d1004 - 0x6a7e0ffc, pointer @ 0x6a7e0ef0 (Cookie OK)  
  Signals
: SigRec 0xe000d000, SigWait 0x00000100  
  State
: Process (Waiting)  
 input
.device (Waiting)  
  Stack
: 0x6fe9e000 - 0x6feae000, pointer @ 0x6feadf00 (Cookie OK)  
  Signals
: SigRec 0x80000000, SigWait 0x00000000  
  State
: Task (Waiting)  
 SFS DosList handler 
(Waiting)  
  Stack
: 0x6d47e004 - 0x6d485ffc, pointer @ 0x6d485f20 (Cookie OK)  
  Signals
: SigRec 0x80000000, SigWait 0x00000000  
  State
: Process (Waiting)  
 USB stack 
(Waiting)  
  Stack
: 0x6f9ca000 - 0x6f9ce000, pointer @ 0x6f9cdf20 (Cookie OK)  
  Signals
: SigRec 0xf800d000, SigWait 0x00000000  
  State
: Task (Waiting)  
 EHCI Controller Task Unit 0 
(Waiting)  
  Stack
: 0x6f9c2000 - 0x6f9ca000, pointer @ 0x6f9c9e30 (Cookie OK)  
  Signals
: SigRec 0x80000000, SigWait 0x00000000  
  State
: Task (Waiting)  
 EHCI Controller Task Unit 1 
(Waiting)  
  Stack
: 0x6f992000 - 0x6f99a000, pointer @ 0x6f999f10 (Cookie OK)  
  Signals
: SigRec 0xbe009000, SigWait 0x00000000  
  State
: Task (Waiting)  
 p50x0sata
.device Port 1 (Waiting)  
  Stack
: 0x6fbfa000 - 0x6fc08a60, pointer @ 0x6fc08900 (Cookie OK)  
  Signals
: SigRec 0xc0007000, SigWait 0x10000000  
  State
: Task (Waiting)  
 p50x0sata
.device Port 0 (Waiting)  
  Stack
: 0x6fe16000 - 0x6fe24a60, pointer @ 0x6fe24900 (Cookie OK)  
  Signals
: SigRec 0xc0007000, SigWait 0x10000000  
  State
: Task (Waiting)  
 DH1
/SmartFilesystem 1.293  (Waiting)  
  Stack
: 0x6d462004 - 0x6d469ffc, pointer @ 0x6d469ea0 (Cookie OK)  
  Signals
: SigRec 0x00000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 hid
.usbfd (Waiting)  
  Stack
: 0x6c8fb004 - 0x6c902ffc, pointer @ 0x6c902ea0 (Cookie OK)  
  Signals
: SigRec 0xe0000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 HID Mouse 
(Waiting)  
  Stack
: 0x6c8af004 - 0x6c8beffc, pointer @ 0x6c8beef0 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000000  
  State
: Process (Waiting)  
 DH0
/NGFileSystem 54.34  (Waiting)  
  Stack
: 0x6f814004 - 0x6f81bffc, pointer @ 0x6f81bd60 (Cookie OK)  
  Signals
: SigRec 0xf0000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 ICD1
/CDFileSystem 53.8  (Waiting)  
  Stack
: 0x6ca7e004 - 0x6ca8dffc, pointer @ 0x6ca8df20 (Cookie OK)  
  Signals
: SigRec 0x00000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 ICD0
/CDFileSystem 53.8  (Waiting)  
  Stack
: 0x6cad9004 - 0x6cae8ffc, pointer @ 0x6cae8f20 (Cookie OK)  
  Signals
: SigRec 0x00000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 DH1
/SmartFilesystem 1.293  (Waiting)  
  Stack
: 0x6ef33004 - 0x6ef3affc, pointer @ 0x6ef3aeb0 (Cookie OK)  
  Signals
: SigRec 0xe0000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 reaper
.task (Waiting)  
  Stack
: 0x6d39e004 - 0x6d3a5ffc, pointer @ 0x6d3a5e50 (Cookie OK)  
  Signals
: SigRec 0x00007000, SigWait 0x00000000  
  State
: Process (Waiting)  
 HID Consumer 
(Waiting)  
  Stack
: 0x6c958004 - 0x6c967ffc, pointer @ 0x6c967f20 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000000  
  State
: Process (Waiting)  
 HID Keyboard 
(Waiting)  
  Stack
: 0x6c96c004 - 0x6c97bffc, pointer @ 0x6c97bf00 (Cookie OK)  
  Signals
: SigRec 0x90001000, SigWait 0x00000000  
  State
: Process (Waiting)  
 hid
.usbfd (Waiting)  
  Stack
: 0x6ca11004 - 0x6ca18ffc, pointer @ 0x6ca18ea0 (Cookie OK)  
  Signals
: SigRec 0xe0000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 RAM
/ram-handler 54.24  (Waiting)  
  Stack
: 0x6d305004 - 0x6d308ffc, pointer @ 0x6d308d40 (Cookie OK)  
  Signals
: SigRec 0x80000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 bootkeyboard
.usbfd (Waiting)  
  Stack
: 0x6c8ef004 - 0x6c8f6ffc, pointer @ 0x6c8f6f00 (Cookie OK)  
  Signals
: SigRec 0x70000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 IDF1
/FastFileSystem 53.2  (Waiting)  
  Stack
: 0x6c7ed004 - 0x6c7fcffc, pointer @ 0x6c7fced0 (Cookie OK)  
  Signals
: SigRec 0xa8000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 IDF0
/FastFileSystem 53.2  (Waiting)  
  Stack
: 0x6c83a004 - 0x6c849ffc, pointer @ 0x6c849ed0 (Cookie OK)  
  Signals
: SigRec 0xa8000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 CON
/con-handler 53.82  (Waiting)  
  Stack
: 0x65c64004 - 0x65c73ffc, pointer @ 0x65c73e20 (Cookie OK)  
  Signals
: SigRec 0xa0000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 dos_filedir_notify 
(Waiting)  
  Stack
: 0x6f859004 - 0x6f85dffc, pointer @ 0x6f85ceb0 (Cookie OK)  
  Signals
: SigRec 0x40001000, SigWait 0x80000000  
  State
: Process (Waiting)  
 rtl8139
.device.0 (Waiting)  
  Stack
: 0x6ae3f004 - 0x6ae4effc, pointer @ 0x6ae4eef0 (Cookie OK)  
  Signals
: SigRec 0x78008000, SigWait 0x00000000  
  State
: Process (Waiting)  
 URL
/launch-handler 53.39  (Waiting)  
  Stack
: 0x6c6e9004 - 0x6c763ffc, pointer @ 0x6c75ffa0 (Cookie OK)  
  Signals
: SigRec 0x80000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 RANDOM
/Random-Handler 52.1  (Waiting)  
  Stack
: 0x6c790004 - 0x6c79fffc, pointer @ 0x6c79fef0 (Cookie OK)  
  Signals
: SigRec 0x00000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 CON
/con-handler 53.82  (Waiting)  
  Stack
: 0x689ad004 - 0x689bcffc, pointer @ 0x689bce20 (Cookie OK)  
  Signals
: SigRec 0xa0000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 CON
/con-handler 53.82  (Waiting)  
  Stack
: 0x68ac2004 - 0x68ad1ffc, pointer @ 0x68ad1e20 (Cookie OK)  
  Signals
: SigRec 0xa0000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 CON
/con-handler 53.82  (Waiting)  
  Stack
: 0x6a6ff004 - 0x6a70effc, pointer @ 0x6a70ee20 (Cookie OK)  
  Signals
: SigRec 0xa0000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 CON
/con-handler 53.82  (Waiting)  
  Stack
: 0x6a48f004 - 0x6a49effc, pointer @ 0x6a49ee20 (Cookie OK)  
  Signals
: SigRec 0xa0000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 CON
/con-handler 53.82  (Waiting)  
  Stack
: 0x6a7ed004 - 0x6a7fcffc, pointer @ 0x6a7fce20 (Cookie OK)  
  Signals
: SigRec 0xa0000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 CON
/con-handler 53.82  (Waiting)  
  Stack
: 0x6a89a004 - 0x6a8a9ffc, pointer @ 0x6a8a9e20 (Cookie OK)  
  Signals
: SigRec 0xa0000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 CON
/con-handler 53.82  (Waiting)  
  Stack
: 0x6a91c004 - 0x6a92bffc, pointer @ 0x6a92be20 (Cookie OK)  
  Signals
: SigRec 0xa0000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 CON
/con-handler 53.82  (Waiting)  
  Stack
: 0x6d28e004 - 0x6d29dffc, pointer @ 0x6d29de20 (Cookie OK)  
  Signals
: SigRec 0xa0000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 AUDIO
/AHI-Handler 6.2  (Waiting)  
  Stack
: 0x6cb1d004 - 0x6cb2d004, pointer @ 0x6cb2ced0 (Cookie OK)  
  Signals
: SigRec 0x00000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 APPDIR
/appdir-handler 54.17  (Waiting)  
  Stack
: 0x6cb7a004 - 0x6cb89ffc, pointer @ 0x6cb89ec0 (Cookie OK)  
  Signals
: SigRec 0x80000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 ENV
/env-handler 54.18  (Waiting)  
  Stack
: 0x6d2f1004 - 0x6d2f8ffc, pointer @ 0x6d2f8ef0 (Cookie OK)  
  Signals
: SigRec 0x80000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 CON
/con-handler 53.82  (Waiting)  
  Stack
: 0x6d3fa004 - 0x6d401ffc, pointer @ 0x6d401e20 (Cookie OK)  
  Signals
: SigRec 0xa0000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 RAW
/con-handler 53.82  (Waiting)  
  Stack
: 0x6d436004 - 0x6d43dffc, pointer @ 0x6d43de20 (Cookie OK)  
  Signals
: SigRec 0xa0000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 CON
/con-handler 53.82  (Waiting)  
  Stack
: 0x6d452004 - 0x6d459ffc, pointer @ 0x6d459e20 (Cookie OK)  
  Signals
: SigRec 0xa0000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 dos_nbmd_process 
(Waiting)  
  Stack
: 0x6f87a004 - 0x6f87dffc, pointer @ 0x6f87df30 (Cookie OK)  
  Signals
: SigRec 0x00001100, SigWait 0x00000000  
  State
: Process (Waiting)  
 dos_lock_handler 
(Waiting)  
  Stack
: 0x6f882004 - 0x6f885ffc, pointer @ 0x6f885f00 (Cookie OK)  
  Signals
: SigRec 0x00001100, SigWait 0x00000000  
  State
: Process (Waiting)  
 RexxMaster 
(Waiting)  
  Stack
: 0x6c674004 - 0x6c683ffc, pointer @ 0x6c683ec0 (Cookie OK)  
  Signals
: SigRec 0xc0000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 diskimage
.device unit 1 (Waiting)  
  Stack
: 0x6c7bd004 - 0x6c7d0ffc, pointer @ 0x6c7d0c50 (Cookie OK)  
  Signals
: SigRec 0xc0000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 diskimage
.device unit 0 (Waiting)  
  Stack
: 0x6c81a004 - 0x6c82dffc, pointer @ 0x6c82dc50 (Cookie OK)  
  Signals
: SigRec 0xc0000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 diskimage
.device unit 5 (Waiting)  
  Stack
: 0x6ca9e004 - 0x6cab1ffc, pointer @ 0x6cab1c50 (Cookie OK)  
  Signals
: SigRec 0xc0000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 diskimage
.device unit 4 (Waiting)  
  Stack
: 0x6c8d3004 - 0x6c8e6ffc, pointer @ 0x6c8e6c50 (Cookie OK)  
  Signals
: SigRec 0xc0000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 TEXTCLIP
/textclip-handler 53.4  (Waiting)  
  Stack
: 0x6c774004 - 0x6c783ffc, pointer @ 0x6c783ec0 (Cookie OK)  
  Signals
: SigRec 0x80000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 Bildschirmschoner
-Bibliothek. (Waiting)  
  Stack
: 0x6893a004 - 0x6894affc, pointer @ 0x6894af00 (Cookie OK)  
  Signals
: SigRec 0xb4001000, SigWait 0x00000100  
  State
: Process (Waiting)  
 compose
.task (Waiting)  
  Stack
: 0x6c308000 - 0x6c310000, pointer @ 0x6c30ff30 (Cookie OK)  
  Signals
: SigRec 0x00000021, SigWait 0x00000000  
  State
: Task (Waiting)  
 Workbench 
(Waiting)  
  Stack
: 0x6c576004 - 0x6c585ffc, pointer @ 0x6c585e50 (Cookie OK)  
  Signals
: SigRec 0x80000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 ramlib 
(Waiting)  
  Stack
: 0x6d34c004 - 0x6d364ffc, pointer @ 0x6d364f20 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000100  
  State
: Process (Waiting)  
 Workbench DosList Notify 
(Waiting)  
  Stack
: 0x6ae7d004 - 0x6ae8cffc, pointer @ 0x6ae8cf40 (Cookie OK)  
  Signals
: SigRec 0x00003000, SigWait 0x00000100  
  State
: Process (Waiting)  
 ContextMenus Command Dispatcher 
(Waiting)  
  Stack
: 0x675e2004 - 0x675f1ffc, pointer @ 0x675f1f30 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000000  
  State
: Process (Waiting)  
 texteditor
.gadget Clipboard Server (Waiting)  
  Stack
: 0x688ed004 - 0x68905ffc, pointer @ 0x68905f00 (Cookie OK)  
  Signals
: SigRec 0x80000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 string
.gadget server (Waiting)  
  Stack
: 0x6af85004 - 0x6af94ffc, pointer @ 0x6af94db0 (Cookie OK)  
  Signals
: SigRec 0x40000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 Workbench Clipboard Server 
(Waiting)  
  Stack
: 0x6af36004 - 0x6af45ffc, pointer @ 0x6af45ef0 (Cookie OK)  
  Signals
: SigRec 0x80000000, SigWait 0x00000100  
  State
: Process (Waiting)  
 NotificationServer 
(Waiting)  
  Stack
: 0x6a71b004 - 0x6a73affc, pointer @ 0x6a73ab40 (Cookie OK)  
  Signals
: SigRec 0xbc001000, SigWait 0x00000000  
  State
: Process (Waiting)  
 AmiDock 
(Waiting)  
  Stack
: 0x6acb1004 - 0x6acc0ffc, pointer @ 0x6acc0740 (Cookie OK)  
  Signals
: SigRec 0x00000100, SigWait 0x00100000  
  State
: Process (Waiting)  
 TCP
/IP Control (Waiting)  
  Stack
: 0x6c4ae004 - 0x6c4bdffc, pointer @ 0x6c4bddc0 (Cookie OK)  
  Signals
: SigRec 0xf8009080, SigWait 0x00000100  
  State
: Process (Waiting)  
 vsata disk changer 
(Waiting)  
  Stack
: 0x6f9da000 - 0x6f9e8a60, pointer @ 0x6f9e89b0 (Cookie OK)  
  Signals
: SigRec 0x80000000, SigWait 0x00000000  
  State
: Task (Waiting)  
 hub
.usbfd (Waiting)  
  Stack
: 0x6f946004 - 0x6f94dffc, pointer @ 0x6f94deb0 (Cookie OK)  
  Signals
: SigRec 0x30000000, SigWait 0x00000000  
  State
: Task (Waiting)  
 hub
.usbfd (Waiting)  
  Stack
: 0x6f93a004 - 0x6f941ffc, pointer @ 0x6f941eb0 (Cookie OK)  
  Signals
: SigRec 0x30000000, SigWait 0x00000000  
  State
: Task (Waiting)  
 ELF Collector 
(Waiting)  
  Stack
: 0x6f844004 - 0x6f854ffc, pointer @ 0x6f854e70 (Cookie OK)  
  Signals
: SigRec 0x00000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 TimeGuard 
(Waiting)  
  Stack
: 0x68b2b004 - 0x68b3affc, pointer @ 0x68b3ae00 (Cookie OK)  
  Signals
: SigRec 0xf0001000, SigWait 0x00000100  
  State
: Process (Waiting)  
 SDL thread SDLTimer 
(0x65c338f8) (Waiting)  
  Stack
: 0x65c1c004 - 0x65c2bffc, pointer @ 0x65c2bea0 (Cookie OK)  
  Signals
: SigRec 0x80009000, SigWait 0x00000000  
  State
: Process (Waiting)  
 TCP
/IP Superserver (Waiting)  
  Stack
: 0x6c4da004 - 0x6c4e9ffc, pointer @ 0x6c4e99f0 (Cookie OK)  
  Signals
: SigRec 0xd0000080, SigWait 0x00000100  
  State
: Process (Waiting)  
 Mounter GUI 
(Waiting)  
  Stack
: 0x6cc0b004 - 0x6cc1effc, pointer @ 0x6cc1ee10 (Cookie OK)  
  Signals
: SigRec 0x80007000, SigWait 0x00000000  
  State
: Process (Waiting)  
 AsyncWB 
(Waiting)  
  Stack
: 0x6a900004 - 0x6a90fffc, pointer @ 0x6a90fe90 (Cookie OK)  
  Signals
: SigRec 0xc0001000, SigWait 0x00000100  
  State
: Process (Waiting)  
 TCP
/IP Configuration (Waiting)  
  Stack
: 0x6c526004 - 0x6c535ffc, pointer @ 0x6c535e10 (Cookie OK)  
  Signals
: SigRec 0xf8003000, SigWait 0x00000100  
  State
: Process (Waiting)  
 ScreenBlankerEngine 
(Waiting)  
  Stack
: 0x6a809004 - 0x6a818ffc, pointer @ 0x6a818c00 (Cookie OK)  
  Signals
: SigRec 0xd8001000, SigWait 0x00000100  
  State
: Process (Waiting)  
 Exchanger 
(Waiting)  
  Stack
: 0x68af9004 - 0x68b0cffc, pointer @ 0x68b0c730 (Cookie OK)  
  Signals
: SigRec 0xb0001000, SigWait 0x00000100  
  State
: Process (Waiting)  
 ContextMenus 
(Waiting)  
  Stack
: 0x6a4ab004 - 0x6a4baffc, pointer @ 0x6a4bac90 (Cookie OK)  
  Signals
: SigRec 0xe0001000, SigWait 0x00000100  
  State
: Process (Waiting)  
 « IPrefs » 
(Waiting)  
  Stack
: 0x6d1d5004 - 0x6d1e4ffc, pointer @ 0x6d1e4a20 (Cookie OK)  
  Signals
: SigRec 0x0000f000, SigWait 0x20000000  
  State
: Process (Waiting)  
 clipview
.library server (Waiting)  
  Stack
: 0x68475004 - 0x68494ffc, pointer @ 0x68494df0 (Cookie OK)  
  Signals
: SigRec 0xd8003000, SigWait 0x00000000  
  State
: Process (Waiting)  
 SWitch_aos4
.exe (Waiting)  
  Stack
: 0x689c1004 - 0x68a40ffc, pointer @ 0x68a40b50 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000100  
  State
: Process (Waiting)  
 application
.library messageserver (Waiting)  
  Stack
: 0x6cd8f000 - 0x6cd8ffa0, pointer @ 0x6cd8ff10 (Cookie OK)  
  Signals
: SigRec 0xc0000000, SigWait 0x00000000  
  State
: Task (Waiting)  
 DefIcons 
(Waiting)  
  Stack
: 0x6a8ec004 - 0x6a8fbffc, pointer @ 0x6a8fbdb0 (Cookie OK)  
  Signals
: SigRec 0x80009000, SigWait 0x00000100  
  State
: Process (Waiting)  
 RAWBInfo 
(Waiting)  
  Stack
: 0x6a81d004 - 0x6a82cffc, pointer @ 0x6a82cec0 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000100  
  State
: Process (Waiting)  
 TCP
/IP Log (Waiting)  
  Stack
: 0x6c552004 - 0x6c561ffc, pointer @ 0x6c561f00 (Cookie OK)  
  Signals
: SigRec 0x80003000, SigWait 0x00000000  
  State
: Process (Waiting)  
 Background CLI 
[MUI:PatchASL] (Waiting)  
  Stack
: 0x6c5f6004 - 0x6c605ffc, pointer @ 0x6c605cb0 (Cookie OK)  
  Signals
: SigRec 0x00001000, SigWait 0x00000100  
  State
: Process (Waiting)  
 ConClip 
(Waiting)  
  Stack
: 0x6cbcb004 - 0x6cbdaffc, pointer @ 0x6cbdaeb0 (Cookie OK)  
  Signals
: SigRec 0x80000000, SigWait 0x00000000  
  State
: Process (Waiting)  
 USB stack Process 
(Waiting)  
  Stack
: 0x6cc47004 - 0x6cc56ffc, pointer @ 0x6cc56ee0 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000000  
  State
: Process (Waiting)  
 MassStorage Notifier 
(Waiting)  
  Stack
: 0x6fe25000 - 0x6fe2cd00, pointer @ 0x6fe2cc70 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000000  
  State
: Task (Waiting)  
 datatypes
.library (Waiting)  
  Stack
: 0x6cd2c004 - 0x6cd3bffc, pointer @ 0x6cd3be30 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000000  
  State
: Process (Waiting)  
 DST watcher 
(Waiting)  
  Stack
: 0x6cd59004 - 0x6cd68ffc, pointer @ 0x6cd68f10 (Cookie OK)  
  Signals
: SigRec 0xc0000000, SigWait 0x00000000  
  State
: Process (Waiting)  
 hub
.usbfd (Waiting)  
  Stack
: 0x6f8e2004 - 0x6f8e9ffc, pointer @ 0x6f8e9eb0 (Cookie OK)  
  Signals
: SigRec 0x30000000, SigWait 0x00000000  
  State
: Task (Waiting)  
 hub
.usbfd (Waiting)  
  Stack
: 0x6f8fe004 - 0x6f905ffc, pointer @ 0x6f905eb0 (Cookie OK)  
  Signals
: SigRec 0x30000000, SigWait 0x00000000  
  State
: Task (Waiting)  
 hub
.usbfd (Waiting)  
  Stack
: 0x6f8ee004 - 0x6f8f5ffc, pointer @ 0x6f8f5eb0 (Cookie OK)  
  Signals
: SigRec 0x30000000, SigWait 0x00000000  
  State
: Task (Waiting)  
 DMA2 Channel 4 Handler 
(Waiting)  
  Stack
: 0x6fe40000 - 0x6fe44000, pointer @ 0x6fe43ee0 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000000  
  State
: Task (Waiting)  
 DMA1 Channel 4 Handler 
(Waiting)  
  Stack
: 0x6fe3c000 - 0x6fe40000, pointer @ 0x6fe3fee0 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000000  
  State
: Task (Waiting)  
 DMA2 Channel 3 Handler 
(Waiting)  
  Stack
: 0x6fe58000 - 0x6fe5c000, pointer @ 0x6fe5bee0 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000000  
  State
: Task (Waiting)  
 DMA1 Channel 3 Handler 
(Waiting)  
  Stack
: 0x6fe54000 - 0x6fe58000, pointer @ 0x6fe57ee0 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000000  
  State
: Task (Waiting)  
 DMA2 Channel 2 Handler 
(Waiting)  
  Stack
: 0x6fe50000 - 0x6fe54000, pointer @ 0x6fe53ee0 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000000  
  State
: Task (Waiting)  
 DMA1 Channel 2 Handler 
(Waiting)  
  Stack
: 0x6fe4c000 - 0x6fe50000, pointer @ 0x6fe4fee0 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000000  
  State
: Task (Waiting)  
 DMA2 Channel 1 Handler 
(Waiting)  
  Stack
: 0x6feba000 - 0x6febe000, pointer @ 0x6febdee0 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000000  
  State
: Task (Waiting)  
 DMA1 Channel 1 Handler 
(Waiting)  
  Stack
: 0x6feb6000 - 0x6feba000, pointer @ 0x6feb9ee0 (Cookie OK)  
  Signals
: SigRec 0x80001000, SigWait 0x00000000  
  State
: Task (Waiting)  
 Background CLI 
[acidwarp] (Crashed)  
  Stack
: 0x65f55004 - 0x65f64ffc, pointer @ 0x65f64b00 (Cookie OK)  
  Signals
: SigRec 0x00000020, SigWait 0xc0000100  
  State
: Process (Crashed)  
 Mounter Task 
(Waiting)  
  Stack
: 0x6fe2d000 - 0x6fe3ba60, pointer @ 0x6fe3b970 (Cookie OK)  
  Signals
: SigRec 0xb0001000, SigWait 0x00000000  
  State
: Task (Waiting)  
 Mounter Companion Process 
(Waiting)  
  Stack
: 0x6cc33004 - 0x6cc42ffc, pointer @ 0x6cc42f40 (Cookie OK)  
  Signals
: SigRec 0x80003000, SigWait 0x00000000  
  State
: Process (Waiting)  
 ramlib
.support (Waiting)  
  Stack
: 0x6d381004 - 0x6d399ffc, pointer @ 0x6d399f00 (Cookie OK)  
  Signals
: SigRec 0x80005000, SigWait 0x00000000  
  State
: Process (Waiting)  
 dos_signal_server 
(Waiting)  
  Stack
: 0x6f862004 - 0x6f865ffc, pointer @ 0x6f865f20 (Cookie OK)  
  Signals
: SigRec 0x0000f000, SigWait 0x00000000  
  State
: Process (Waiting)  
 appdir envarc manager 
(Waiting)  
  Stack
: 0x6cb4e004 - 0x6cb5dffc, pointer @ 0x6cb5cb40 (Cookie OK)  
  Signals
: SigRec 0x00000100, SigWait 0x00000000  
  State
: Process (Waiting)  
 CPUDock_idleTask 
(Ready)  
  Stack
: 0x68465000 - 0x68469000, pointer @ 0x68468ef0 (Cookie OK)  
  Signals
: SigRec 0x80000000, SigWait 0xc0000000  
  State
: Task (Ready)  
 idle
.task (Ready)  
  Stack
: 0x6ff7f000 - 0x6ff80000, pointer @ 0x6ff7ffc0 (Cookie OK)  
  Signals
: SigRec 0x00000000, SigWait 0x00000000  
  State
: Task (Ready)


Initially we discussed this here but we don't know why exactly ogles2 crashed.

Go to top
Re: The OpenGL ES 2.0 thread
Just can't stay away
Just can't stay away


See User information
Is Enhancer Software 2.0 OpenGLES2 SDK up-to-date? It seems to miss the context flag OGLES2_CCT_DETECT_UNINITIALIZED_GLSL_VARS.

Go to top
Re: The OpenGL ES 2.0 thread
Home away from home
Home away from home


See User information
@Capehill
Probably Mattew just forgot to put the latest includes to Enhacner. But as its all public for now, then there they are: http://kas1e.mikendezign.com/aos4/ogles2/include_ogles2_31.zip

Join us to improve dopus5!
AmigaOS4 on youtube
Go to top
Re: The OpenGL ES 2.0 thread
Just popping in
Just popping in


See User information
OS4 Depot just released Gorynlich & Eldrich - but they require ogles2.library >= 3.1 and Warp3dNova >=1.85 - where can I download these?

Go to top
Re: The OpenGL ES 2.0 thread
Home away from home
Home away from home


See User information
@NPFrandsen
That little mistake, it needs ogles3.1 and warp3dnova 1.83, not 1.85. Both come with an Enhancer package which you need to buy from Amikit.

Join us to improve dopus5!
AmigaOS4 on youtube
Go to top
Re: The OpenGL ES 2.0 thread
Just popping in
Just popping in


See User information
@kas1e - great - I'll do that

Go to top
Re: The OpenGL ES 2.0 thread - FBO with depth attachment
Just can't stay away
Just can't stay away


See User information
@all

Is anybody using renderbuffer objects as framebuffer depth attachments? My FBO is otherwise rendering fine but as soon as I try to attach an RBO, the result becomes pixel noise.

FBO is complete, context has 16-bit depth, depth testing is enabled and there are no GL errors.

EDIT: solved, as I have multiple FBOs, I removed the unnecessary depth attachment from post-processing FBOs and left it only for the 3D rendering target, so depth testing is now done only once.

EDIT2: Click


Edited by Capehill on 2021/5/8 17:15:53
Edited by Capehill on 2021/5/10 19:27:49
Edited by Capehill on 2021/5/10 19:29:12
Go to top
Re: The OpenGL ES 2.0 thread - FBO with depth attachment
Home away from home
Home away from home


See User information
@Capehill

I was wondering, if i still hvae graphical glitches in the OGLES2 SDL2 version of ScummVM, but not in the OpenGL SDL2 version, hsould i report them here or in the SDL2 thread?

I'd say here, since it sounds the obvious, but i was wrong so many times in the past...

Go to top
Re: The OpenGL ES 2.0 thread - FBO with depth attachment
Just can't stay away
Just can't stay away


See User information
@Raziel

SDL doesn't draw anything when application uses OpenGL context (application calls OpenGL and finally swaps the buffer) thus SDL shouldn't be blamed for any glitches in my opinion. Issue is either on application side or somewhere in OpenGL / driver side.

Go to top
Re: The OpenGL ES 2.0 thread - FBO with depth attachment
Home away from home
Home away from home


See User information
@Capehill

Ok, thanks.
Will see if I can reproduce it and report back.

Go to top
Re: The OpenGL ES 2.0 thread - FBO with depth attachment
Home away from home
Home away from home


See User information
@all

Probably stupid question, but does Enhancer Core feature the ogles2.library as well?

Say, i want to compile ScummVM with OGLES2 support
Will everyone with a supported Graphics card AND Enhancer Core be able to use it?
Or do the people still have to buy the full release to get ogles2?

The readme says it should...but i want to make sure.
Quote:

What is the Enhancer Software Core?

It is a free-of-charge version of the Enhancer Software containing classes, libraries and system files for users who have not purchased any version of the Enhancer Software previously. It also contains the SDK for developers to build their own projects around the Enhancer Software.

The files contained in it are essential to run ***any*** applications, utilities or programs created with the Enhancer Software.

Important Note: if you previously purchased any other edition of the Enhancer Software you will not need to register for access to this edition.

Although the Enhancer Software Core is free of charge, it contains copyright files and must only be distributed on this website subject to the AmiSphere terms/conditions and the software's End User Licence Agreement. No Enhancer Software components may be copied or distributed without express written permission from the copyright holder. AmiSphere user registration is required to access the files.

Go to top
Re: The OpenGL ES 2.0 thread - FBO with depth attachment
Not too shy to talk
Not too shy to talk


See User information
@Raziel

No it's not included in the Enhancer Software Core.

1989-> A500, A600, A3000, A4000, A1200, CD32, µA1, PegII, A1XE, CDTV, Amy/416D79, A1X5000, Vampire 500 V2+, Vampire 600 V2, Amy-ITX, Denise ITX <-2024
Go to top
Re: The OpenGL ES 2.0 thread - FBO with depth attachment
Home away from home
Home away from home


See User information
@khayoz

Gah, ok, no ogles2 version then...

Go to top
Re: The OpenGL ES 2.0 thread
Home away from home
Home away from home


See User information
@All
I hope Daniel doesn't mind if i update that topic, as it just looses around other topics, so .. Few days ago 3.3 version out for beta, there is full list of changes since 3.1:

3.2 changes

Quote:

- Fix: under certain circumstances DBOs / VBOs were falsely allowed to be modified even if still in use by Nova.
This could cause flickering triangles and similar glitches. The latest improvements in Nova revealed this
issue. Before it apparently happend so rarely that it went unnoticed.
- Fix: glFinish would not actually wait for things to finish if the previous operation was a glFlush or an
OpenGL state change (e.g. glEnable or whatever, which trigger an implicit flush internally).
This could in theory result in incomplete frames being displayed.
- Fix: glReadPixels would not wait for things to finish before starting to read.
This could result in incomplete frame data to be read.
- Fix: glGetError sometimes returned a wrong error code.
- glGetString GL_SHADING_LANGUAGE_VERSION is now returning "OpenGL ES GLSL ES 1.0"
- Fix: glMapBufferOES with the flag GL_READ_WRITE(_OES) didn't instruct Nova to read-back the current data.
So effectively it acted like GL_WRITE_ONLY(_OES). This worked as long as the user updated the whole buffer or
as long as Nova provided a shadow-buffer with the latest data. However it now failed with latest Nova
drivers because shadow-buffers are no longer used.
- Fix: Nova doesn't support 8bit index VBOs, therefore ogles2.lib contains an emulation mechanism for those.
For each such VBO an internal 32bit index VBO is being created and kept in sync. This syncing requires
a read-back and due to a typo Nova wasn't told to do so. This in turn means that the data read for the
sync was undefined. Until now this wasn't actually the case because Nova used a shadow-buffer, so even though
not explicitely requested, the data was there and in the expected format.
To sum it up: glDrawElements with a bound element array with 8 or 16 bit indices caused render garbage
with the latest Nova versions.
- Fix: specs violation. The IDs returned by glCreateShader and glCreateProgram were independently generated.
However, the standard says that the shader IDs' "name space is shared with program objects", a fact which
I overread, grrmbl. For an OpenGL ES 2 implementation by itself this violation isn't really a problem but
it turned out to be the source for an issue related with GL4ES:
In std. GL, which GL4ES implements based on OGLES2, there's a function glGetObjectParameters which accepts
shader- or program-IDs as first parameter. Now due to this bug in ogles2.lib those IDs were not unique,
so that this function was not able to distinguish between shader- and program-IDs, which in turn resulted
in nonsense behaviour.
Thanks to George for rereading the OGLES2 specs and correcting me on that, as I asumed a bug in GL4ES here.
Now the the IDs returned by glCreateShader and glCreateProgram are unique in the shared UINT32 number space.
- Cleanup: removed any already unused code which handled own vertex-data endian swapping.
- Cleanup: removed any already unused code which handled own element index endian swapping.
- Reworked the whole VBO handling because there were subtle flaws related to Nova's internal endian conversion.
In a nutshell the root of the problem is the fact that Nova applies its endian conversion when data is being
written into a VBO and doesn't care if the data-format changes. Unfortunately this is a problem with the
typical workflow of an OpenGL application which usually first fills a VBO and defines the format of the data
later. In that case Nova asumes a default UINT32-like data-type for all the data and endian-convert the whole
buffer accordingly upon fill. This works as long as there's only stuff like floats in the buffer, in general
data with elements of 4-bytes size which require endian conversion. But if there's e.g. something like
RGBA UBYTE[4] color data which must not be endian-converted, things begin to break. By the time ogles2 knows
the real data format, Nova will already have falsely converted it. There are other situations where this
problem arises and to work around all those issues ogles2.library now mirrors the VBO data and only physically
updates the internal Nova-VBO's buffer right before it's going to be used for a draw call. It also keeps track of
the concrete data-type of each of a VBOs arrays and enforces a data-copy if the endianess of one of those changes.
- Added support for Nova's new tag W3DNTag_OriginLowerLeft. There was a problem with Nova in combination
with FBOs when rendering to a texture. Then the fragment-shader's optional input gl_FragCoord worked in a
vertically flipped fashion, the internally flipped coordinate system of a texture (compared to a "regular"
bitmap's coordinate system) was not taken into account. Latest Nova 54.14 now provides a way to toggle
gl_FragCoord's behaviour upon texture / bitmap binding, a feature which is now being used and therefore fixes
the problem (e.g. weird graphic bugs in ScummVM).
- Fix: a typo in the VBO mirror implementation sometimes lead to unnecessary large VBO-writes. This fix resolves
the rather significant performance drop which the game Spencer suffered after I made the complex VBO rework
mentioned above.
- Fix: at one location a conditional submit/waitdone subroutiene call was missing in the VBO implementation.
In rare situations this effectively caused draw-call N being drawn with vertex data of the following draw-call N+1.
As a result the SDL2 testsprite2 example (with batching disabled!) appeared to only draw a fraction of its
100 smileys. In reality 100 smileys were drawn, but many of them at the same location...
- Fix: one of the rather cheap but effective optimizations in the new VBO implementation didn't work if the client
used a pretty uncommon (to not say dumb) drawing strategy: the SDL2 testsprite2 example (with batching enabled!)
would only render garbage. The reason was that this thing draws its different geometry by adjusting its VBO array
offsets, essentially moving a window through the VBO's arrays. This essentially leaves huge areas in the VBO in an
undefined state initially - which for Nova generally means: little endian. The optimization now prevented the
required VBO-rewrites because it detected that the actual data-type per array didn't change - not taking into account
that Nova was only told the types of a tiny subset of that array. Fixing this resolved the distorted background
geometry with this example.
However, the smileys didn't show up because there was another bug. Actually it was a leftover of the old VBO stuff.
It sometimes caused VBOs to be marked for drawing too early in the process. As a result it could sort-of get out of
sync and already have the layout for the next draw-call but keep the vertex data of the previous one.
All this also fixes some visual glitches with Super Tuxkart.
- Fix: under certain rare circumstances a crash in combination with index-array VBOs could happen if the respective
VBO was enlarged at just the wrong time, resulting in a deletion of the internal emu-index-VBO (see above) which
was probably still in use. With this fix the gl-related crashs in LMGUI test cases are gone.
- Fix: the result of glCopyTexImage2D and glCopyTexSubImage2D was upside-down.
- Fix: added an extra size check to the mirror-VBO-writer to avoid buffer overwrites triggered by certain corner
cases with "uncommon" element-array uses in which the index-VBO contains much larger indices than the respective
array-VBOs are sized for. This fixes crashs with ScummVM.
- Fix: glGetUniform ignored the program-parameter and queried the currently bound program instead.
- It is now possible to use glReadPixels on an FBO with a texture as color-attachment. Nova doesn't support reading
a texture's pixel data, which is why this feature wasn't implemented until now. To support it in ogles2 nevertheless
the FBO's texture is now used to internally render a quad into a hidden framebuffer with a std. bitmap which in
turn can be read. To not create any side-effects a dedicated seperate render-state is being used.
- Credits for testing go to kas1e, Capehill and afxgroup.
- version set to 3.2 (15.4.2022)



3.3 changes

Quote:

- Fix: querying GL_RED, GL_GREEN, GL_BLUE or GL_ALPHA returned 0 if the current frame-buffer was an FBO with a
texture being used as color-attachement.
- New aglCreateContext2 tag OGLES2_CCT_SHARE_WITH <ogles2-context-pointer>. This optional tag instructs ogles2
to share the same internal Nova-context (with a different render-state-object) and the same set of textures, VBOs,
shaders and shader-programs of the given other gl-context. If you don't supply this tag (which is the default
behaviour, of course) then the newly created context is autarkic.
Reworked many many internals to properly support resource sharing. Also made lots of code cleanup in the process.
This was huge.
- I'm tired of malformed programs wasting everybody's time by causing undefined behaviour / crashs because they
illegally call gl-functions without an active context.
Usually I'm a friend of not doing more work than necessary. Which in this case means that there were no checks if
there's a valid gl-context inside public gl-commands. Which is standard compliant. Quote from the OpenGL ES 2.0 specs:
"Issuing GL commands when the program is not connected to a context results in undefined behavior."
However, I now added context-sanity checks to ALL those gl-commands because there are so many malformed programs
around, e.g. Super Tuxkart, Night of The Zombies, Neverball, to name a few.
- glGetString(GL_VERSION) now returns a string starting with OpenGL ES 2.0 instead of 2 without the minor version number.
- glGetString(GL_SHADING_LANGUAGE_VERSION) now returns "OpenGL ES GLSL ES 1.4" instead of 1.0.
- The extension functions glProgramBinary / glGetProgramBinary have been improved to also store and restore the
attribute bindings. The binary format has been changed accordingly, glGetProgram with parameter
GL_PROGRAM_BINARY_LENGTH_OES and glGet with parameter GL_PROGRAM_BINARY_FORMATS_OES reflect those changes too.
That makes GL4ES' precompiled shader program feature (.psa files) fully usable.
- Credits for testing go to kas1e and Capehill.
- version set to 3.3 (30.4.2022)



@Capehill
Btw, i remember you start working on ogles2 version of Quake3 (or it was opengl2.x version? ) with shaders and stuff, were you progress futher ? Or it's all stops because of missing OpImageSampleDrefImplicitLod ?

Join us to improve dopus5!
AmigaOS4 on youtube
Go to top
Re: The OpenGL ES 2.0 thread
Just can't stay away
Just can't stay away


See User information
@kas1e

ioquake3 renderergl2 (I suppose it's OpenGL 2.x -based): yes, however port has been stuck in the same state due to missing op. With bad luck there are more missing stuff - I should probably try to compile all its shaders.

Go to top

  Register To Post
« 1 ... 3 4 5 (6) 7 8 »

 




Currently Active Users Viewing This Thread: 2 ( 0 members and 2 Anonymous Users )




Powered by XOOPS 2.0 © 2001-2024 The XOOPS Project