mirror of
https://github.com/RPCS3/rpcs3.git
synced 2024-11-23 03:02:53 +01:00
f1b420eb3b
SELF decrypter improved:
The files 'scetool.exe' and 'zlib1.dll' are no longer needed. Everything
needed is now included in the rpsc3 project. So the only thing you need
in order to load SELF files are the keys. More information about this
matter in my last commit: c1565e55
Warning for devs! There is a lot of spaghetti code in /scetool/. I
fucked up things a bit while trying to include scetool in rpcs3. There
is a lot of unused code there and I need to make sure that everything is
working properly. In any case, the code seems to work stable so
end-users shouldn't be worried about this warning. ;-)
'About...' dialog added:
Well, I have nothing more to say here. I wish you all a nice day!
38 lines
817 B
C
38 lines
817 B
C
/*
|
|
* Copyright (c) 2011-2013 by naehrwert
|
|
* This file is released under the GPLv2.
|
|
*/
|
|
|
|
#ifndef _LIST_H_
|
|
#define _LIST_H_
|
|
|
|
#include "types.h"
|
|
|
|
#define LIST_FOREACH(iter, list) for(lnode_t *iter = list->head; iter != NULL; iter = iter->next)
|
|
|
|
typedef struct _lnode
|
|
{
|
|
void *value;
|
|
struct _lnode *next;
|
|
} lnode_t;
|
|
|
|
typedef struct _list
|
|
{
|
|
lnode_t *head;
|
|
scetool::u32 count;
|
|
} list_t;
|
|
|
|
list_t *list_create();
|
|
void list_destroy(list_t *l);
|
|
BOOL list_isempty(list_t *l);
|
|
scetool::u32 list_count(list_t *l);
|
|
BOOL list_push(list_t *l, void *value);
|
|
void *list_pop(list_t *l);
|
|
BOOL list_add_back(list_t *l, void *value);
|
|
void *list_get(list_t *l, scetool::u32 idx);
|
|
lnode_t *list_get_node(list_t *l, scetool::u32 idx);
|
|
BOOL list_remove_node(list_t *l, lnode_t *node);
|
|
BOOL list_remove_value(list_t *l, void *value);
|
|
|
|
#endif
|