mirror of
https://github.com/Interlisp/maiko.git
synced 2026-03-25 01:36:19 +00:00
Compare commits
9 Commits
maiko-2501
...
mth38--sup
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
966290ff4d | ||
|
|
4994982a90 | ||
|
|
40d4fca8cc | ||
|
|
c8dc63d418 | ||
|
|
7fe0f70640 | ||
|
|
55e20ea993 | ||
|
|
7d85a59e6f | ||
|
|
511a1b523e | ||
|
|
04f9905ca0 |
2
.github/workflows/Dockerfile_builder
vendored
2
.github/workflows/Dockerfile_builder
vendored
@@ -8,7 +8,7 @@
|
|||||||
#
|
#
|
||||||
# ******************************************************************************
|
# ******************************************************************************
|
||||||
|
|
||||||
FROM ubuntu:latest
|
FROM ubuntu:22.04
|
||||||
SHELL ["/bin/bash", "-c"]
|
SHELL ["/bin/bash", "-c"]
|
||||||
USER root:root
|
USER root:root
|
||||||
# Install build tools
|
# Install build tools
|
||||||
|
|||||||
9
.github/workflows/buildRelease.yml
vendored
9
.github/workflows/buildRelease.yml
vendored
@@ -152,7 +152,7 @@ jobs:
|
|||||||
|| needs.inputs.outputs.force == 'true'
|
|| needs.inputs.outputs.force == 'true'
|
||||||
)
|
)
|
||||||
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-22.04
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
# Checkout the actions for this repo owner
|
# Checkout the actions for this repo owner
|
||||||
@@ -310,8 +310,8 @@ jobs:
|
|||||||
env:
|
env:
|
||||||
GH_TOKEN: ${{ github.token }}
|
GH_TOKEN: ${{ github.token }}
|
||||||
run: |
|
run: |
|
||||||
gh release download release-2.26.5 --repo libsdl-org/SDL --pattern SDL2-2.26.5.dmg
|
gh release download release-2.30.11 --repo libsdl-org/SDL --pattern SDL2-2.30.11.dmg
|
||||||
hdiutil attach SDL2-2.26.5.dmg
|
hdiutil attach SDL2-2.30.11.dmg
|
||||||
sudo ditto /Volumes/SDL2/SDL2.framework /Library/Frameworks/SDL2.framework
|
sudo ditto /Volumes/SDL2/SDL2.framework /Library/Frameworks/SDL2.framework
|
||||||
hdiutil detach /Volumes/SDL2/
|
hdiutil detach /Volumes/SDL2/
|
||||||
|
|
||||||
@@ -337,7 +337,7 @@ jobs:
|
|||||||
# -DCMAKE_OSX_DEPLOYMENT_TARGET=10.12
|
# -DCMAKE_OSX_DEPLOYMENT_TARGET=10.12
|
||||||
cmake .. \
|
cmake .. \
|
||||||
-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" \
|
-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" \
|
||||||
-DMAIKO_DISPLAY_SDL=ON \
|
-DMAIKO_DISPLAY_SDL=2 \
|
||||||
-DMAIKO_DISPLAY_X11=ON \
|
-DMAIKO_DISPLAY_X11=ON \
|
||||||
-DCMAKE_BUILD_TYPE=Release
|
-DCMAKE_BUILD_TYPE=Release
|
||||||
cmake --build . --config Release
|
cmake --build . --config Release
|
||||||
@@ -503,6 +503,7 @@ jobs:
|
|||||||
- name: Install SDL2
|
- name: Install SDL2
|
||||||
run: |
|
run: |
|
||||||
export DEBIAN_FRONTEND=noninteractive
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
|
sudo -E apt-get update
|
||||||
sudo -E apt-get install -y libsdl2-dev libsdl2-2.0-0
|
sudo -E apt-get install -y libsdl2-dev libsdl2-2.0-0
|
||||||
|
|
||||||
# Install Emscripten SDK
|
# Install Emscripten SDK
|
||||||
|
|||||||
@@ -221,17 +221,17 @@ static const int generic_X_keymap[] = {
|
|||||||
/* keypad digit assignments above, try assigning */
|
/* keypad digit assignments above, try assigning */
|
||||||
/* the new arrow-key key#s assigned for RS/6000 */
|
/* the new arrow-key key#s assigned for RS/6000 */
|
||||||
/* Failing that, try assigning the keypad #s. */
|
/* Failing that, try assigning the keypad #s. */
|
||||||
|
1, 84, XK_Left,
|
||||||
0, 129, XK_Left,
|
0, 129, XK_Left,
|
||||||
0, 84, XK_Left,
|
|
||||||
|
|
||||||
|
1, 82, XK_Up,
|
||||||
0, 130, XK_Up,
|
0, 130, XK_Up,
|
||||||
0, 82, XK_Up,
|
|
||||||
|
|
||||||
|
1, 69, XK_Down,
|
||||||
0, 131, XK_Down,
|
0, 131, XK_Down,
|
||||||
0, 69, XK_Down,
|
|
||||||
|
|
||||||
|
1, 87, XK_Right,
|
||||||
0, 132, XK_Right,
|
0, 132, XK_Right,
|
||||||
0, 87, XK_Right,
|
|
||||||
|
|
||||||
0, 93, XK_Multi_key, /* Expand, Sun type-4 */
|
0, 93, XK_Multi_key, /* Expand, Sun type-4 */
|
||||||
0, 93, XK_Alt_R, /* Expand, RH Alt key */
|
0, 93, XK_Alt_R, /* Expand, RH Alt key */
|
||||||
|
|||||||
@@ -217,7 +217,7 @@
|
|||||||
|
|
||||||
#define FJUMPMACRO(x) \
|
#define FJUMPMACRO(x) \
|
||||||
do { \
|
do { \
|
||||||
if (TOPOFSTACK != 0) { goto PopNextop1; } \
|
if (TOPOFSTACK != 0) { POP; nextop1; } \
|
||||||
{ \
|
{ \
|
||||||
CHECK_INTERRUPT; \
|
CHECK_INTERRUPT; \
|
||||||
POP; \
|
POP; \
|
||||||
@@ -227,7 +227,7 @@
|
|||||||
} while (0)
|
} while (0)
|
||||||
#define TJUMPMACRO(x) \
|
#define TJUMPMACRO(x) \
|
||||||
do { \
|
do { \
|
||||||
if (TOPOFSTACK == 0) { goto PopNextop1; } \
|
if (TOPOFSTACK == 0) { POP; nextop1; } \
|
||||||
{ \
|
{ \
|
||||||
CHECK_INTERRUPT; \
|
CHECK_INTERRUPT; \
|
||||||
POP; \
|
POP; \
|
||||||
|
|||||||
@@ -71,6 +71,8 @@ extern DspInterface currentdsp;
|
|||||||
extern int LispKbdFd;
|
extern int LispKbdFd;
|
||||||
int LispKbdFd = -1;
|
int LispKbdFd = -1;
|
||||||
|
|
||||||
|
extern int runtime_debug_level;
|
||||||
|
|
||||||
extern fd_set LispReadFds;
|
extern fd_set LispReadFds;
|
||||||
|
|
||||||
extern DLword *EmMouseX68K;
|
extern DLword *EmMouseX68K;
|
||||||
@@ -375,6 +377,20 @@ static u_char *make_X_keymap(void) {
|
|||||||
table[xcode - 7] = code;
|
table[xcode - 7] = code;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (runtime_debug_level > 0) {
|
||||||
|
printf("*********************************************************************\n");
|
||||||
|
printf("(DEFINE-FILE-INFO \036PACKAGE \"INTERLISP\" \036READTABLE \"XCL\" \036 BASE 10)\n");
|
||||||
|
printf("(SETQ XGetKeyboardMappingTable '(\n");
|
||||||
|
for (i = 0; i < codecount * symspercode; i += symspercode) {
|
||||||
|
printf("(%d (", minkey + (i / symspercode));
|
||||||
|
for (int j = 0; j < symspercode; j++) {
|
||||||
|
printf(" #X%lx", (unsigned long)mapping[i+j]);
|
||||||
|
}
|
||||||
|
printf(" ))\n");
|
||||||
|
}
|
||||||
|
printf("\n))\nSTOP\n");
|
||||||
|
printf("*********************************************************************\n");
|
||||||
|
}
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
printf("\n\n\tXGetKeyboardMapping table\n\n");
|
printf("\n\n\tXGetKeyboardMapping table\n\n");
|
||||||
for (i = 0; i < codecount * symspercode; i += symspercode) {
|
for (i = 0; i < codecount * symspercode; i += symspercode) {
|
||||||
|
|||||||
23
src/main.c
23
src/main.c
@@ -226,6 +226,8 @@ int save_argc;
|
|||||||
char **save_argv;
|
char **save_argv;
|
||||||
int display_max = 65536 * 16 * 2;
|
int display_max = 65536 * 16 * 2;
|
||||||
|
|
||||||
|
long runtime_debug_level = 0;
|
||||||
|
|
||||||
/* diagnostic flag for sysout dumping */
|
/* diagnostic flag for sysout dumping */
|
||||||
extern unsigned maxpages;
|
extern unsigned maxpages;
|
||||||
|
|
||||||
@@ -327,10 +329,10 @@ extern char backgroundColorName[64];
|
|||||||
#endif
|
#endif
|
||||||
char windowTitle[255] = "Medley";
|
char windowTitle[255] = "Medley";
|
||||||
extern char windowTitle[255];
|
extern char windowTitle[255];
|
||||||
int lispDisplayRequestedWidth = 1024;
|
unsigned LispDisplayRequestedWidth = 1024, LispDisplayRequestedHeight = 768;
|
||||||
extern int lispDisplayRequestedWidth;
|
extern unsigned LispDisplayRequestedWidth, LispDisplayRequestedHeight;
|
||||||
int lispDisplayRequestedHeight = 768;
|
int LispDisplayRequestedX = 0, LispDisplayRequestedY = 0;
|
||||||
extern int lispDisplayRequestedHeight;
|
extern int LispDisplayRequestedX, LispDisplayRequestedY;
|
||||||
int pixelScale = 1;
|
int pixelScale = 1;
|
||||||
extern int pixelScale;
|
extern int pixelScale;
|
||||||
|
|
||||||
@@ -345,6 +347,7 @@ int main(int argc, char *argv[])
|
|||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
char *envname;
|
char *envname;
|
||||||
|
char *rtdebug;
|
||||||
extern int TIMER_INTERVAL;
|
extern int TIMER_INTERVAL;
|
||||||
extern fd_set LispReadFds;
|
extern fd_set LispReadFds;
|
||||||
long tmpint;
|
long tmpint;
|
||||||
@@ -474,7 +477,7 @@ int main(int argc, char *argv[])
|
|||||||
#ifdef SDL
|
#ifdef SDL
|
||||||
else if ((strcmp(argv[i], "-sc") == 0) || (strcmp(argv[i], "-SC") == 0)) {
|
else if ((strcmp(argv[i], "-sc") == 0) || (strcmp(argv[i], "-SC") == 0)) {
|
||||||
if (argc > ++i) {
|
if (argc > ++i) {
|
||||||
int read = sscanf(argv[i], "%dx%d", &lispDisplayRequestedWidth, &lispDisplayRequestedHeight);
|
int read = sscanf(argv[i], "%dx%d", &LispDisplayRequestedWidth, &LispDisplayRequestedHeight);
|
||||||
if(read != 2) {
|
if(read != 2) {
|
||||||
(void)fprintf(stderr, "Could not parse -sc argument %s\n", argv[i]);
|
(void)fprintf(stderr, "Could not parse -sc argument %s\n", argv[i]);
|
||||||
exit(1);
|
exit(1);
|
||||||
@@ -677,6 +680,14 @@ int main(int argc, char *argv[])
|
|||||||
//
|
//
|
||||||
//
|
//
|
||||||
|
|
||||||
|
if ((rtdebug = getenv("LDERUNTIMEDEBUG")) != NULL) {
|
||||||
|
errno = 0;
|
||||||
|
runtime_debug_level = strtol(rtdebug, (char **)NULL, 10);
|
||||||
|
if (errno != 0) {
|
||||||
|
runtime_debug_level = 0; // default to OFF if erroneous value
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Sanity checks. */
|
/* Sanity checks. */
|
||||||
#ifdef DOS
|
#ifdef DOS
|
||||||
@@ -717,7 +728,7 @@ int main(int argc, char *argv[])
|
|||||||
make_dsp_instance(currentdsp, 0, 0, 0, 1); /* All defaults the first time */
|
make_dsp_instance(currentdsp, 0, 0, 0, 1); /* All defaults the first time */
|
||||||
#endif /* DOS || XWINDOW */
|
#endif /* DOS || XWINDOW */
|
||||||
#if defined(SDL)
|
#if defined(SDL)
|
||||||
init_SDL(windowTitle, lispDisplayRequestedWidth, lispDisplayRequestedHeight, pixelScale);
|
init_SDL(windowTitle, LispDisplayRequestedWidth, LispDisplayRequestedHeight, pixelScale);
|
||||||
#endif /* SDL */
|
#endif /* SDL */
|
||||||
/* Load sysout to VM space and returns real sysout_size(not 0) */
|
/* Load sysout to VM space and returns real sysout_size(not 0) */
|
||||||
sysout_size = sysout_loader(sysout_name, sysout_size);
|
sysout_size = sysout_loader(sysout_name, sysout_size);
|
||||||
|
|||||||
20
src/xc.c
20
src/xc.c
@@ -814,7 +814,7 @@ nextopcode:
|
|||||||
/******* FJumpx *******/
|
/******* FJumpx *******/
|
||||||
case 0262:
|
case 0262:
|
||||||
case262 : {
|
case262 : {
|
||||||
if (TOPOFSTACK != 0) { goto PopNextop2; }
|
if (TOPOFSTACK != 0) { POP; nextop2; }
|
||||||
CHECK_INTERRUPT;
|
CHECK_INTERRUPT;
|
||||||
POP;
|
POP;
|
||||||
PCMACL += Get_SBYTE_PCMAC1;
|
PCMACL += Get_SBYTE_PCMAC1;
|
||||||
@@ -825,7 +825,7 @@ nextopcode:
|
|||||||
|
|
||||||
case 0263:
|
case 0263:
|
||||||
case263 : {
|
case263 : {
|
||||||
if (TOPOFSTACK == 0) { goto PopNextop2; }
|
if (TOPOFSTACK == 0) { POP; nextop2; }
|
||||||
CHECK_INTERRUPT;
|
CHECK_INTERRUPT;
|
||||||
POP;
|
POP;
|
||||||
PCMACL += Get_SBYTE_PCMAC1;
|
PCMACL += Get_SBYTE_PCMAC1;
|
||||||
@@ -836,7 +836,7 @@ nextopcode:
|
|||||||
|
|
||||||
case 0264:
|
case 0264:
|
||||||
case264 : {
|
case264 : {
|
||||||
if (TOPOFSTACK != 0) { goto PopNextop2; }
|
if (TOPOFSTACK != 0) { POP; nextop2; }
|
||||||
CHECK_INTERRUPT;
|
CHECK_INTERRUPT;
|
||||||
PCMACL += Get_SBYTE_PCMAC1;
|
PCMACL += Get_SBYTE_PCMAC1;
|
||||||
nextop0;
|
nextop0;
|
||||||
@@ -846,7 +846,7 @@ nextopcode:
|
|||||||
|
|
||||||
case 0265:
|
case 0265:
|
||||||
case265 : {
|
case265 : {
|
||||||
if (TOPOFSTACK == 0) { goto PopNextop2; }
|
if (TOPOFSTACK == 0) { POP; nextop2; }
|
||||||
CHECK_INTERRUPT;
|
CHECK_INTERRUPT;
|
||||||
PCMACL += Get_SBYTE_PCMAC1;
|
PCMACL += Get_SBYTE_PCMAC1;
|
||||||
nextop0;
|
nextop0;
|
||||||
@@ -1261,19 +1261,7 @@ check_interrupt:
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
nextop0;
|
nextop0;
|
||||||
|
|
||||||
/************************************************************************/
|
|
||||||
/* Common Jump Tails (they have to jump anyway, so use common Tail) */
|
|
||||||
/************************************************************************/
|
|
||||||
PopNextop1:
|
|
||||||
POP;
|
|
||||||
nextop1;
|
|
||||||
|
|
||||||
PopNextop2:
|
|
||||||
POP;
|
|
||||||
nextop2;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void do_brk(void) {}
|
void do_brk(void) {}
|
||||||
|
|||||||
@@ -50,8 +50,6 @@ unsigned LispWindowRequestedHeight = DEF_WIN_HEIGHT;
|
|||||||
|
|
||||||
extern int LispDisplayRequestedX, LispDisplayRequestedY;
|
extern int LispDisplayRequestedX, LispDisplayRequestedY;
|
||||||
extern unsigned LispDisplayRequestedWidth, LispDisplayRequestedHeight;
|
extern unsigned LispDisplayRequestedWidth, LispDisplayRequestedHeight;
|
||||||
int LispDisplayRequestedX, LispDisplayRequestedY;
|
|
||||||
unsigned LispDisplayRequestedWidth, LispDisplayRequestedHeight;
|
|
||||||
|
|
||||||
extern Colormap Colors;
|
extern Colormap Colors;
|
||||||
Colormap Colors;
|
Colormap Colors;
|
||||||
|
|||||||
Reference in New Issue
Block a user