diff --git a/CMakeLists.txt b/CMakeLists.txt index d7feebe..bb8827a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -76,8 +76,6 @@ ENDIF() # These don't build on Linux. Some are for SunOS and DOS. Others ... ? SET(BAD_SRCS src/atom.c - src/cdaudio.c - src/cdrom.c src/chatter.c src/Cldeetr.c src/codeconv.c @@ -233,7 +231,6 @@ SET(MAIKO_HDRS inc/bltdefs.h inc/byteswapdefs.h inc/car-cdrdefs.h - inc/cdrom.h inc/cell.h inc/chardevdefs.h inc/commondefs.h diff --git a/inc/cdrom.h b/inc/cdrom.h deleted file mode 100755 index b8d86c0..0000000 --- a/inc/cdrom.h +++ /dev/null @@ -1,144 +0,0 @@ -/* $Id: cdrom.h,v 1.2 1999/01/03 02:05:54 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ - -/*********************************** - - file: cdrom_audio.h - -***********************************/ - -/* function number for CD audio functions */ -#define CD_OPEN 1 -#define CD_CLOSE 2 -#define CD_READ 3 -#define CD_DISK_INFO 4 -#define CD_TRACK_INFO 5 -#define CD_START 6 -#define CD_STOP 7 -#define CD_PLAY 8 -#define CD_Q_READ 9 -#define CD_PAUSE 10 -#define CD_RESUME 11 -#define CD_VOLUME 12 -#define CD_EJECT 13 - -/* function numbers for CD-ROM */ -#define CDROM_INIT_DRV 1 -#define CDROM_KEN_INT 2 -#define CDROM_CHOSAKU 3 -#define CDROM_MIKANA 4 -#define CDROM_MIKANAT 5 -#define CDROM_HYOKI 6 -#define CDROM_HYOKIT 7 -#define CDROM_EIJI 8 -#define CDROM_EIJIT 9 -#define CDROM_SUJI 10 -#define CDROM_SUJIT 11 -#define CDROM_ZENKANA 12 -#define CDROM_ZENKANAT 13 -#define CDROM_ZENKANJ 14 -#define CDROM_ZENKANJT 15 -#define CDROM_ZENEIJI 16 -#define CDROM_ZENEIJIIT 17 -#define CDROM_KOHKANA 18 -#define CDROM_KOHKANAT 19 -#define CDROM_KOHKANJ 20 -#define CDROM_KOHKANJT 21 -#define CDROM_KOHEIJI 22 -#define CDROM_KOHEIJIT 23 -#define CDROM_ZUHAN 24 -#define CDROM_JYOKEN 25 -#define CDROM_JYOKENT 26 -#define CDROM_MENU 27 -#define CDROM_AUDIOST 28 -#define CDROM_AUDIOED 29 -#define CDROM_AUDIOQ_GET 30 -#define CDROM_GAIJI 31 -#define CDROM_ZENGO 32 -#define CDROM_KEIZOKU 33 -#define CDROM_SYURYO 34 - - - -typedef unsigned char BYTE; -typedef unsigned long DWORD; - -/* -extern DWORD CDred_lbn(); -extern void CDlbn_red(); -extern int CDopen(); -extern int CDclose(); -extern int CDread(); -extern int CDdisk_info(); -extern int CDtrack_info(); -extern int CDstart(); -extern int CDstop(); -extern int CDplay(); -extern int CDqread(); -extern int CDpause(); -extern int CDresume(); -extern int CDvolume(); -extern int CDeject(); -*/ - -#define LispStringToCString(Lisp, C, MaxLen) \ - { \ - OneDArray *arrayp; \ - char *base, *dp; \ - short *sbase; \ - int i, length; \ - arrayp = (OneDArray *)(Addr68k_from_LADDR(Lisp)); \ - length = min(MaxLen, arrayp->totalsize); \ - switch(arrayp->typenumber) \ - { \ - case THIN_CHAR_TYPENUMBER: \ - base = ((char *)(Addr68k_from_LADDR(arrayp->base))) \ - + ((int)(arrayp->offset)); \ - strncpy(C, base, length); \ - C[length] = '\0'; \ - break; \ - \ - case FAT_CHAR_TYPENUMBER: \ - sbase = ((short *)(Addr68k_from_LADDR(arrayp->base))) \ - + ((int)(arrayp->offset)); \ - for(i=0,dp=C;i<(length);i++) \ - *dp++ = (char)(*sbase++); \ - *dp = '\0'; \ - break; \ - default: \ - error("LispStringToCString can not handle\n"); \ - } \ - } - -#define LispStringToCString2(Lisp, C, MaxLen) \ - { \ - OneDArray *arrayp; \ - char *base, *dp; \ - short *sbase; \ - int i, length; \ - arrayp = (OneDArray *)(Addr68k_from_LADDR(Lisp)); \ - length = min(MaxLen, arrayp->totalsize); \ - switch(arrayp->typenumber) \ - { \ - case THIN_CHAR_TYPENUMBER: \ - base = ((char *)(Addr68k_from_LADDR(arrayp->base))) \ - + ((int)(arrayp->offset)); \ - strncpy(C, base, length); \ - C[length] = '\0'; \ - break; \ - \ - case FAT_CHAR_TYPENUMBER: \ - sbase = ((short *)(Addr68k_from_LADDR(arrayp->base))) \ - + ((int)(arrayp->offset)); \ - for(i=0,dp=C;i<(length);i++) { \ - *dp++ = (char)(*sbase / 256 ); \ - *dp++ = (char)(*sbase % 256 ); \ - sbase++; \ - } \ - *dp = '\0'; \ - break; \ - default: \ - error("LispStringToCString can not handle\n"); \ - } \ - } - -#define min(a, b) ((a <= b)?a:b) diff --git a/inc/subrs.h b/inc/subrs.h index dae072c..4f2565a 100755 --- a/inc/subrs.h +++ b/inc/subrs.h @@ -184,10 +184,6 @@ /* for EJLISP */ #define miscn_EJLISP 060 -/* for CD-ROM */ -#define miscn_CDAUDIO 070 -#define miscn_CDROM 071 - /* Assigned USER SUBR numbers */ #define user_subr_DUMMY 012 #define user_subr_SAMPLE_USER_SUBR 00 diff --git a/src/cdaudio.c b/src/cdaudio.c deleted file mode 100644 index ac15859..0000000 --- a/src/cdaudio.c +++ /dev/null @@ -1,306 +0,0 @@ -/* $Id: cdaudio.c,v 1.3 1999/05/31 23:35:25 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved - */ - -/************************************************************************/ -/* */ -/* (C) Copyright 1989-95 Venue. All Rights Reserved. */ -/* Manufactured in the United States of America. */ -/* */ -/************************************************************************/ - -#include "version.h" - -/*********************************** - - file: cdaudio.c - -***********************************/ - -#include -#include -#include "lispemul.h" -#include "address.h" -#include "adr68k.h" -#include "lsptypes.h" -#include "lispmap.h" -#include "emlglob.h" -#include "lspglob.h" -#include "arith.h" -#include "cdrom.h" - -int cdaudio(LispPTR *args) { - int request; - int res; - - N_GETNUMBER(args[0], request, BAD_ARG); - -#ifdef DEBUG - printf("CD-ROM function called. function = %d\n", request); -#endif - - switch (request) { - case CD_OPEN: res = cd_open(args); break; - case CD_CLOSE: res = cd_close(args); break; - case CD_READ: res = cd_read(args); break; - case CD_DISK_INFO: res = cd_disk_info(args); break; - case CD_TRACK_INFO: res = cd_track_info(args); break; - case CD_START: res = cd_start(args); break; - case CD_STOP: res = cd_stop(args); break; - case CD_PLAY: res = cd_play(args); break; - case CD_Q_READ: res = cd_q_read(args); break; - case CD_PAUSE: res = cd_pause(args); break; - case CD_RESUME: res = cd_resume(args); break; - case CD_VOLUME: res = cd_volume(args); break; - case CD_EJECT: res = cd_eject(args); break; - default: return (NIL); break; - } -#ifdef DEBUG - printf("Result = %d\n", res); -#endif - if (res == 0) { - return (ATOM_T); - } else { - return (GetSmallp(res)); - } - -BAD_ARG: - return (NIL); -} - -int cd_open(LispPTR *args) - -/* - args[0] function number - args[1] CD-ROM drive path name string -*/ -{ - char drive[80]; - - LispStringToCString(args[1], drive, 80); -#ifdef DEBUG - printf("cd_open called. drive = %s\n", drive); -#endif - return (CDopen(drive)); -} - -int cd_close(LispPTR *args) - -/* - args[0] function number -*/ -{ -#ifdef DEBUG - printf("cd_close is called\n"); -#endif - return (CDclose()); -} - -int cd_read(LispPTR *args) - -/* - args[0] function number - args[1] Logical block number - args[2] number of blocks to read - args[3] data buffer -*/ -{ - DWORD blk; - int num; - BYTE *buf; - LispPTR *naddress; - char *base; - int offset; - - switch (GetTypeNumber(args[1])) { - case TYPE_SMALLP: N_GETNUMBER(args[1], blk, BAD_ARG); break; - case TYPE_FIXP: blk = *(DWORD *)(Addr68k_from_LADDR(args[1])); break; - default: return (1); break; - } - switch (GetTypeNumber(args[2])) { - case TYPE_SMALLP: N_GETNUMBER(args[2], num, BAD_ARG); break; - case TYPE_FIXP: num = *(DWORD *)(Addr68k_from_LADDR(args[2])); break; - default: return (1); break; - } - if (GetTypeNumber(args[3]) == TYPE_ONED_ARRAY) { - naddress = (LispPTR *)(Addr68k_from_LADDR(args[3])); - base = (char *)(Addr68k_from_LADDR(((OneDArray *)naddress)->base)); - offset = (int)(((OneDArray *)naddress)->offset); - buf = base + offset; - } else - return (1); -#ifdef DEBUG - printf("call CDread()\n"); - printf("blk = %d, num = %d buff = %d\n", blk, num, buf); -#endif - return (CDread(blk, num, buf)); -BAD_ARG: - return (1); -} - -int cd_disk_info(LispPTR *args) - -/* - args[0] function number - args[1] min tune number - args[2] max tune number -*/ -{ - BYTE min_no, max_no; - int res; - - res = CDdisk_info(&min_no, &max_no); -#ifdef DEBUG - printf("min = %d, max = %d", min_no, max_no); -#endif - *(int *)(Addr68k_from_LADDR(args[1])) = (int)min_no; - *(int *)(Addr68k_from_LADDR(args[2])) = (int)max_no; - return (res); -} - -int cd_track_info(LispPTR *args) - -/* - args[0] function number (in: smallp) - args[1] tune number (in: fixp) - args[2] start address(LBN) (out: fixp) - args[3] control data (out: fixp) -*/ -{ - int tno; - DWORD blk; - BYTE cntl; - int res; - - switch (GetTypeNumber(args[1])) { - case TYPE_SMALLP: N_GETNUMBER(args[1], tno, BAD_ARG); break; - case TYPE_FIXP: tno = *(DWORD *)(Addr68k_from_LADDR(args[1])); break; - } - res = CDtrack_info(tno, &blk, &cntl); - *(int *)(Addr68k_from_LADDR(args[2])) = (int)blk; - *(int *)(Addr68k_from_LADDR(args[3])) = (int)cntl; - return (res); - -BAD_ARG: - return (-1); -} - -int cd_start(LispPTR *args) - -/* - args[0] function number -*/ -{ - return (CDstart()); -} - -int cd_stop(LispPTR *args) - -/* - args[0] function number -*/ -{ - return (CDstop()); -} - -int cd_play(LispPTR *args) - -/* - args[0] function number - args[1] play start address(LBN) - args[2] play end address(LBN) -*/ -{ - DWORD sblk, eblk; - - switch (GetTypeNumber(args[1])) { - case TYPE_SMALLP: N_GETNUMBER(args[1], sblk, BAD_ARG); break; - case TYPE_FIXP: sblk = *(DWORD *)(Addr68k_from_LADDR(args[1])); break; - } - switch (GetTypeNumber(args[2])) { - case TYPE_SMALLP: N_GETNUMBER(args[2], eblk, BAD_ARG); break; - case TYPE_FIXP: eblk = *(DWORD *)(Addr68k_from_LADDR(args[2])); break; - } - return (CDplay(sblk, eblk)); - -BAD_ARG: - return (1); -} - -int cd_q_read(LispPTR *args) - -/* - args[0] function number - args[1] audio status - args[2] tune number - args[3] current position min - args[4] current position sec - args[5] current position frame -*/ -{ - BYTE ast, tno, mm, ss, ff; - int res; - - res = CDqread(&ast, &tno, &mm, &ss, &ff); - if (!res) { - *(int *)(Addr68k_from_LADDR(args[1])) = (int)ast; - *(int *)(Addr68k_from_LADDR(args[2])) = (int)tno; - *(int *)(Addr68k_from_LADDR(args[3])) = (int)mm; - *(int *)(Addr68k_from_LADDR(args[4])) = (int)ss; - *(int *)(Addr68k_from_LADDR(args[5])) = (int)ff; - } - return (res); -} - -int cd_pause(LispPTR *args) - -/* - args[0] function number -*/ -{ - return (CDpause()); -} - -int cd_resume(LispPTR *args) - -/* - args[0] function number -*/ -{ - return (CDresume()); -} - -int cd_volume(LispPTR *args) - -/* - args[0] function number - args[1] right volume - args[2] left volume -*/ -{ - int right, left; - - switch (GetTypeNumber(args[1])) { - case TYPE_SMALLP: N_GETNUMBER(args[1], right, BAD_ARG); break; - case TYPE_FIXP: right = *(DWORD *)(Addr68k_from_LADDR(args[1])); break; - } - switch (GetTypeNumber(args[2])) { - case TYPE_SMALLP: N_GETNUMBER(args[2], left, BAD_ARG); break; - case TYPE_FIXP: left = *(DWORD *)(Addr68k_from_LADDR(args[2])); break; - } - return (CDvolume(right, left)); - -BAD_ARG: - return (1); -} - -int cd_eject(LispPTR *args) - -/* - args[0] function number -*/ -{ -#ifdef DEBUG - printf("cd_eject called.\n"); -#endif - return (CDeject()); -} diff --git a/src/cdrom.c b/src/cdrom.c deleted file mode 100644 index f12c946..0000000 --- a/src/cdrom.c +++ /dev/null @@ -1,216 +0,0 @@ -/* $Id: cdrom.c,v 1.3 1999/05/31 23:35:26 sybalsky Exp $ (C) Copyright Venue, All Rights Reserved */ - -/************************************************************************/ -/* */ -/* (C) Copyright 1989-95 Venue. All Rights Reserved. */ -/* Manufactured in the United States of America. */ -/* */ -/************************************************************************/ - -#include "version.h" - -/*********************************** - - file: cdrom.c - -***********************************/ - -#include -#include -#include "lispemul.h" -#include "address.h" -#include "adr68k.h" -#include "lsptypes.h" -#include "lispmap.h" -#include "emlglob.h" -#include "lspglob.h" -#include "arith.h" -#include "cdrom.h" - -int cdrom(LispPTR *args) { - int request; - int res; - - N_GETNUMBER(args[0], request, BAD_ARG); - -#ifdef DEBUG - printf("CD-ROM function called. function = %d\n", request); -#endif - - switch (request) { - case CDROM_INIT_DRV: res = cdrom_init_drv(args); break; - case CDROM_KEN_INT: res = cdrom_ken_int(args); break; - case CDROM_CHOSAKU: res = cdrom_chosaku(args); break; - case CDROM_MIKANA: res = cdrom_mikana(args); break; - case CDROM_MIKANAT: res = cdrom_mikanat(args); break; - case CDROM_SYURYO: res = cdrom_syuryo(args); break; - default: return (NIL); break; - } -#ifdef DEBUG - printf("Result = %d\n", res); -#endif - if (res == 0) { - return (ATOM_T); - } else { - return (GetSmallp(res)); - } - -BAD_ARG: - return (NIL); -} - -static int cdrom_init_drv(LispPTR *args) - -/* - args[0] function number - args[1] pointer to buffer - args[2] device name -*/ -{ - int res; - char *buff; - char drive[80]; - LispPTR *naddress; - char *base; - int offset; - - if (GetTypeNumber(args[1]) == TYPE_ONED_ARRAY) { - naddress = (LispPTR *)(Addr68k_from_LADDR(args[1])); - base = (char *)(Addr68k_from_LADDR(((OneDArray *)naddress)->base)); - offset = (int)(((OneDArray *)naddress)->offset); - buff = &base[offset]; - } else - return (1); - LispStringToCString(args[2], drive, 80); - - return (init_drv(buff, drive)); -} - -static int cdrom_ken_int(LispPTR *args) - -/* - args[0] function number - args[1] shoseki number - args[2] flag for index and sort -*/ -{ - int bunno; - int flg; - - N_GETNUMBER(args[1], bunno, BAD_ARG); - N_GETNUMBER(args[2], flg, BAD_ARG); -#ifdef DEBUG - printf("bunno = %x\n", bunno); - printf("flg = %d\n", flg); -#endif - return (ken_int(bunno, flg)); - -BAD_ARG: - return (1); -} - -static int cdrom_chosaku(LispPTR *args) - -/* - args[0] function number - args[1] buffer for copy right data - args[2] real data size -*/ -{ - char *buff; - int size; - int *data_size; - LispPTR *naddress; - char *base; - int offset; - - if (GetTypeNumber(args[1]) == TYPE_ONED_ARRAY) { - naddress = (LispPTR *)(Addr68k_from_LADDR(args[1])); - base = (char *)(Addr68k_from_LADDR(((OneDArray *)naddress)->base)); - offset = (int)(((OneDArray *)naddress)->offset); - buff = &base[offset]; - } else - return (1); - size = (int)(((OneDArray *)naddress)->totalsize); -#ifdef DEBUG - printf("size = %d\n", size); -#endif - data_size = (int *)(Addr68k_from_LADDR(args[2])); - return (chosaku(buff, size, data_size)); -} - -static int cdrom_mikana(LispPTR *args) - -/* - args[0] function number - args[1] relative id number - args[2] pointer to retrieve data - args[3] size of retrieve data -*/ -{ - int hyono; - char *buff; - int buff_size; - int *data_size; - LispPTR *naddress; - char *base; - int offset; - - N_GETNUMBER(args[1], hyono, BAD_ARG); - if (GetTypeNumber(args[2]) == TYPE_ONED_ARRAY) { - naddress = (LispPTR *)(Addr68k_from_LADDR(args[2])); - base = (char *)(Addr68k_from_LADDR(((OneDArray *)naddress)->base)); - offset = (int)(((OneDArray *)naddress)->offset); - buff = &base[offset]; - } else - return (1); - buff_size = (int)(((OneDArray *)naddress)->totalsize); - data_size = (int *)(Addr68k_from_LADDR(args[3])); - return (mikana(hyono, buff, buff_size, data_size)); - -BAD_ARG: - return (1); -} - -static int cdrom_mikanat(LispPTR *args) - -/* - args[0] function number - args[1] pointer to a search key - args[2] pointer to buffer - args[3] size of searched data - args[4] number of items matched to the search key -*/ -{ - char key[65]; - char *buff; - int buff_size; - int *data_size; - int *hitn; - LispPTR *naddress; - char *base; - int offset; - - LispStringToCString2(args[1], key, 65); - if (GetTypeNumber(args[2]) == TYPE_ONED_ARRAY) { - naddress = (LispPTR *)(Addr68k_from_LADDR(args[2])); - base = (char *)(Addr68k_from_LADDR(((OneDArray *)naddress)->base)); - offset = (int)(((OneDArray *)naddress)->offset); - buff = &base[offset]; - } else - return (1); - buff_size = (((OneDArray *)naddress)->totalsize); - data_size = (int *)(Addr68k_from_LADDR(args[3])); - hitn = (int *)(Addr68k_from_LADDR(args[4])); - - return (mikanat(key, buff, buff_size, data_size, hitn)); -} - -static int cdrom_syuryo(LispPTR *args) - -/* - args[0] function number -*/ -{ - return (syuryo()); -} diff --git a/src/miscn.c b/src/miscn.c index 306a35f..5ab29f7 100644 --- a/src/miscn.c +++ b/src/miscn.c @@ -155,11 +155,6 @@ int OP_miscn(int misc_index, int arg_count) { break; #endif /* JLISP */ -#ifdef CDROM - case miscn_CDAUDIO: result = cdaudio(args); break; - case miscn_CDROM: result = cdrom(args); break; -#endif /* CDROM */ - case /* miscn_CALL_C*/ 014: /* result = call_c_fn(args); */ result = 0;