mirror of
https://github.com/QB64-Phoenix-Edition/QB64pe.git
synced 2024-09-20 02:04:44 +00:00
Add cmem.h with dblock and cmem[]
This commit is contained in:
parent
1daea10f53
commit
839c5c0c9f
5 changed files with 11 additions and 7 deletions
|
@ -13,6 +13,7 @@
|
|||
#endif
|
||||
|
||||
#include "audio.h"
|
||||
#include "cmem.h"
|
||||
#include "completion.h"
|
||||
#include "command.h"
|
||||
#include "compression.h"
|
||||
|
@ -7149,7 +7150,6 @@ extern uint8 *cmem_dynamic_base;
|
|||
|
||||
extern uint32 qbs_cmem_sp; //=256;
|
||||
extern uint32 cmem_sp; //=65536;
|
||||
extern ptrszint dblock; // 32bit offset of dblock
|
||||
extern uint64 *nothingvalue;
|
||||
|
||||
uint8 wait_needed = 1;
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
#define INC_LIBQB_H
|
||||
#include "common.h"
|
||||
|
||||
#include "cmem.h"
|
||||
#include "qbs.h"
|
||||
|
||||
void sub_shell4(qbs *, int32); //_DONTWAIT & _HIDE
|
||||
|
@ -41,8 +42,6 @@ int32 gfs_write(int32 i, int64 position, uint8 *data, int64 size);
|
|||
int32 gfs_read(int32 i, int64 position, uint8 *data, int64 size);
|
||||
int64 gfs_read_bytes();
|
||||
|
||||
extern uint8 cmem[1114099]; // 16*65535+65535+3 (enough for highest referencable dword in conv memory)
|
||||
|
||||
// keyhit cyclic buffer
|
||||
extern int64 keyhit[8192];
|
||||
// keyhit specific internal flags: (stored in high 32-bits)
|
||||
|
|
6
internal/c/libqb/include/cmem.h
Normal file
6
internal/c/libqb/include/cmem.h
Normal file
|
@ -0,0 +1,6 @@
|
|||
#pragma once
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
extern uint8_t cmem[1114099]; // 16*65535+65535+3 (enough for highest referencable dword in conv memory)
|
||||
extern intptr_t dblock; // Required for Play(). Did not find this declared anywhere
|
|
@ -4,14 +4,13 @@
|
|||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "cmem.h"
|
||||
#include "error_handle.h"
|
||||
#include "qbs.h"
|
||||
|
||||
// FIXME: conventional memory should be consolidated into libqb soruce and headers
|
||||
extern uintptr_t dblock;
|
||||
extern uint32_t qbs_cmem_sp; //=256;
|
||||
extern uint32_t cmem_sp; //=65536;
|
||||
extern uint8_t cmem[1114099]; // 16*65535+65535+3 (enough for highest referencable dword in conv memory)
|
||||
|
||||
// Used to track strings in 16bit memory
|
||||
static intptr_t *qbs_cmem_list = (intptr_t *)malloc(65536 * sizeof(intptr_t));
|
||||
|
|
|
@ -564,7 +564,7 @@ uint16 call_absolute_offsets[256];
|
|||
uint32 dbgline;
|
||||
uint32 qbs_cmem_sp = 256;
|
||||
uint32 cmem_sp = 65536;
|
||||
ptrszint dblock; // 32bit offset of dblock
|
||||
intptr_t dblock; // 32bit offset of dblock
|
||||
uint8 close_program = 0;
|
||||
int32 tab_spc_cr_size = 1; // 1=PRINT(default), 2=FILE
|
||||
int32 tab_fileno = 0; // only valid if tab_spc_cr_size=2
|
||||
|
@ -576,7 +576,7 @@ qbs *nothingstring;
|
|||
uint32 qbevent = 0;
|
||||
uint8 suspend_program = 0;
|
||||
uint8 stop_program = 0;
|
||||
uint8 cmem[1114099]; // 16*65535+65535+3 (enough for highest referencable dword
|
||||
uint8_t cmem[1114099]; // 16*65535+65535+3 (enough for highest referencable dword
|
||||
// in conv memory)
|
||||
uint8 *cmem_static_pointer = &cmem[0] + 1280 + 65536;
|
||||
uint8 *cmem_dynamic_base = &cmem[0] + 655360;
|
||||
|
|
Loading…
Reference in a new issue