19#ifndef __PACKET2_UTILS_H__
20#define __PACKET2_UTILS_H__
23#include "packet2_chain.h"
24#include "packet2_vif.h"
32#define VU_GS_PRIM(PRIM, IIP, TME, FGE, ABE, AA1, FST, CTXT, FIX) (u128)(((FIX << 10) | (CTXT << 9) | (FST << 8) | (AA1 << 7) | (ABE << 6) | (FGE << 5) | (TME << 4) | (IIP << 3) | (PRIM)))
33#define VU_GS_GIFTAG(NLOOP, EOP, PRE, PRIM, FLG, NREG) (((u64)(NREG) << 60) | ((u64)(FLG) << 58) | ((u64)(PRIM) << 47) | ((u64)(PRE) << 46) | (EOP << 15) | (NLOOP << 0))
141 u32
count = (end - start) / 2;
144 return (
count >> 8) + 1;
183 (
int)(lod->k * 16.0F)),
199 texbuff->address >> 6,
203 texbuff->info.height,
204 texbuff->info.components,
205 texbuff->info.function,
static void packet2_chain_close_tag(packet2_t *packet2)
static void packet2_chain_ref(packet2_t *packet2, const void *ref_data, u32 qw_length, u8 irq, u8 spr, u32 pce)
static void packet2_chain_open_cnt(packet2_t *packet2, u8 irq, u32 pce, u8 spr)
static void packet2_chain_open_end(packet2_t *packet2, u8 irq, u32 pce)
static void packet2_utils_gs_add_texbuff_clut(packet2_t *packet2, texbuffer_t *texbuff, clutbuffer_t *clut)
static void packet2_utils_vu_add_double_buffer(packet2_t *packet2, u16 base, u16 offset)
static void packet2_utils_gs_add_lod(packet2_t *packet2, lod_t *lod)
static void packet2_utils_gs_add_prim_giftag(packet2_t *packet2, prim_t *prim, u32 loops_count, u32 nreg, u8 nreg_count, u8 context)
static void packet2_utils_gs_add_draw_finish_giftag(packet2_t *packet2)
static u32 packet2_utils_get_packet_size_for_program(u32 *start, u32 *end)
static void packet2_utils_vu_add_unpack_data(packet2_t *packet2, u32 t_dest_address, void *t_data, u32 t_size, u8 t_use_top)
static u32 packet2_utils_vu_close_unpack(packet2_t *packet2)
static void packet2_utils_vu_add_start_program(packet2_t *packet2, u32 addr)
static void packet2_utils_vu_add_continue_program(packet2_t *packet2)
static void packet2_utils_vu_add_end_tag(packet2_t *packet2)
static void packet2_utils_vu_open_unpack(packet2_t *packet2, u32 t_dest_address, u8 t_use_top)
static void packet2_utils_gif_add_set(packet2_t *packet2, u32 loops_count)
static void packet2_vif_mscal(packet2_t *packet2, u32 addr, u8 irq)
static void packet2_vif_close_unpack_manual(packet2_t *packet2, u32 unpack_num)
static void packet2_vif_base(packet2_t *packet2, u32 base, u8 irq)
static void packet2_vif_pad128(packet2_t *packet2)
static void packet2_vif_open_unpack(packet2_t *packet2, enum UnpackMode mode, u32 vuAddr, u8 dblBuffered, u8 masked, u8 usigned, u8 irq)
static void packet2_vif_nop(packet2_t *packet2, u8 irq)
static void packet2_vif_stcycl(packet2_t *packet2, u32 wl, u32 cl, u8 irq)
static void packet2_vif_mscnt(packet2_t *packet2, u8 irq)
static void packet2_vif_flush(packet2_t *packet2, u8 irq)
static void packet2_vif_offset(packet2_t *packet2, u32 offset, u8 irq)
u32 packet2_vif_close_unpack_auto(packet2_t *packet2, u32 wl, u32 cl)
u32 count
start sector of fragmented bd/file