Expose agpgart_t (#2655)
This commit is contained in:
@@ -29,7 +29,7 @@
|
||||
#include <86box/chipset.h>
|
||||
#include <86box/spd.h>
|
||||
#include <86box/machine.h>
|
||||
#include <86box/video.h>
|
||||
#include <86box/agpgart.h>
|
||||
|
||||
|
||||
enum
|
||||
@@ -59,7 +59,7 @@ typedef struct
|
||||
uint8_t mem_state[256];
|
||||
int type;
|
||||
smram_t *smram_low, *smram_high;
|
||||
void *agpgart;
|
||||
agpgart_t *agpgart;
|
||||
void (*write_drbs)(uint8_t *regs, uint8_t reg_min, uint8_t reg_max, uint8_t drb_unit);
|
||||
} i4x0_t;
|
||||
|
||||
|
@@ -33,7 +33,7 @@
|
||||
#include <86box/pci.h>
|
||||
#include <86box/chipset.h>
|
||||
#include <86box/spd.h>
|
||||
#include <86box/video.h>
|
||||
#include <86box/agpgart.h>
|
||||
|
||||
#define VIA_585 0x05851000
|
||||
#define VIA_595 0x05950000
|
||||
@@ -51,7 +51,7 @@ typedef struct via_apollo_t
|
||||
uint8_t pci_conf[256];
|
||||
|
||||
smram_t *smram;
|
||||
void *agpgart;
|
||||
agpgart_t *agpgart;
|
||||
} via_apollo_t;
|
||||
|
||||
|
||||
|
35
src/include/86box/agpgart.h
Normal file
35
src/include/86box/agpgart.h
Normal file
@@ -0,0 +1,35 @@
|
||||
/*
|
||||
* 86Box A hypervisor and IBM PC system emulator that specializes in
|
||||
* running old operating systems and software designed for IBM
|
||||
* PC systems and compatibles from 1981 through fairly recent
|
||||
* system designs based on the PCI bus.
|
||||
*
|
||||
* This file is part of the 86Box distribution.
|
||||
*
|
||||
* AGP Graphics Address Remapping Table remapping emulation.
|
||||
*
|
||||
*
|
||||
*
|
||||
* Authors: RichardG, <richardg867@gmail.com>
|
||||
*
|
||||
* Copyright 2021 RichardG.
|
||||
*/
|
||||
|
||||
#ifndef EMU_AGPGART_H
|
||||
#define EMU_AGPGART_H
|
||||
|
||||
typedef struct agpgart_s {
|
||||
int aperture_enable;
|
||||
uint32_t aperture_base, aperture_size, aperture_mask, gart_base;
|
||||
mem_mapping_t aperture_mapping;
|
||||
} agpgart_t;
|
||||
|
||||
extern void agpgart_set_aperture(agpgart_t *dev, uint32_t base, uint32_t size, int enable);
|
||||
extern void agpgart_set_gart(agpgart_t *dev, uint32_t base);
|
||||
|
||||
#ifdef EMU_DEVICE_H
|
||||
/* AGP GART */
|
||||
extern const device_t agpgart_device;
|
||||
#endif
|
||||
|
||||
#endif /*EMU_AGPGART_H*/
|
@@ -258,9 +258,6 @@ extern int get_actual_size_y(void);
|
||||
|
||||
extern uint32_t video_color_transform(uint32_t color);
|
||||
|
||||
extern void agpgart_set_aperture(void *handle, uint32_t base, uint32_t size, int enable);
|
||||
extern void agpgart_set_gart(void *handle, uint32_t base);
|
||||
|
||||
#define video_inform(type, video_timings_ptr) video_inform_monitor(type, video_timings_ptr, monitor_index_global)
|
||||
#define video_get_type() video_get_type_monitor(0)
|
||||
#define video_blend(x, y) video_blend_monitor(x, y, monitor_index_global)
|
||||
@@ -532,8 +529,6 @@ extern const device_t velocity_100_agp_device;
|
||||
/* Wyse 700 */
|
||||
extern const device_t wy700_device;
|
||||
|
||||
/* AGP GART */
|
||||
extern const device_t agpgart_device;
|
||||
#endif
|
||||
|
||||
#endif /*EMU_VIDEO_H*/
|
||||
|
@@ -23,13 +23,7 @@
|
||||
#include <86box/86box.h>
|
||||
#include <86box/device.h>
|
||||
#include <86box/mem.h>
|
||||
|
||||
|
||||
typedef struct {
|
||||
int aperture_enable;
|
||||
uint32_t aperture_base, aperture_size, aperture_mask, gart_base;
|
||||
mem_mapping_t aperture_mapping;
|
||||
} agpgart_t;
|
||||
#include <86box/agpgart.h>
|
||||
|
||||
|
||||
#ifdef ENABLE_AGPGART_LOG
|
||||
@@ -52,10 +46,8 @@ agpgart_log(const char *fmt, ...)
|
||||
|
||||
|
||||
void
|
||||
agpgart_set_aperture(void *handle, uint32_t base, uint32_t size, int enable)
|
||||
agpgart_set_aperture(agpgart_t *dev, uint32_t base, uint32_t size, int enable)
|
||||
{
|
||||
agpgart_t *dev = (agpgart_t *) handle;
|
||||
|
||||
agpgart_log("AGP GART: set_aperture(%08X, %d, %d)\n", base, size, enable);
|
||||
|
||||
/* Disable old aperture mapping. */
|
||||
@@ -75,10 +67,8 @@ agpgart_set_aperture(void *handle, uint32_t base, uint32_t size, int enable)
|
||||
|
||||
|
||||
void
|
||||
agpgart_set_gart(void *handle, uint32_t base)
|
||||
agpgart_set_gart(agpgart_t *dev, uint32_t base)
|
||||
{
|
||||
agpgart_t *dev = (agpgart_t *) handle;
|
||||
|
||||
agpgart_log("AGP GART: set_gart(%08X)\n", base);
|
||||
|
||||
/* Set GART base address. */
|
||||
|
Reference in New Issue
Block a user