Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 1 addition & 4 deletions inc/testtooldefs.h
Original file line number Diff line number Diff line change
Expand Up @@ -21,19 +21,16 @@ void doko(void);
void dumpl(LispPTR laddr);
void dumps(LispPTR laddr);
void printPC(void);
int countchar(char *string);
void dump_bf(Bframe *bf);
void dump_fx(struct frameex1 *fx_addr68k);
void dump_stackframe(struct frameex1 *fx_addr68k);
void dump_CSTK(int before);
void btv(void);
int get_framename(struct frameex1 *fx_addr68k);
FX *get_nextFX(FX *fx);
int MAKEATOM(char *string);
LispPTR MAKEATOM(char *string);
LispPTR *MakeAtom68k(char *string);
void GETTOPVAL(char *string);
void S_TOPVAL(char *string);
int S_MAKEATOM(char *string);
void all_stack_dump(DLword start, DLword end, DLword silent);
void dtd_chain(DLword type);
void Trace_FNCall(int numargs, int atomindex, int arg1, LispPTR *tos);
Expand Down
2 changes: 1 addition & 1 deletion src/gcarray.c
Original file line number Diff line number Diff line change
Expand Up @@ -278,7 +278,7 @@ LispPTR get_package_atom(const char *char_base, DLword charlen, const char *pack
packindex = find_package_from_name(packname, packlen);

if (packindex < 0) {
printf("getting package index is failed \n");
printf("getting package index failed %s:%s\n", packname, char_base);
return (0xffffffff);
}

Expand Down
73 changes: 14 additions & 59 deletions src/testtool.c
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <setjmp.h>
#include <string.h>

#include "lispemul.h"
#include "lispmap.h"
Expand All @@ -57,7 +58,9 @@
#include "debug.h"
#include "dbprint.h"
#include "tosfns.h"
#include "array.h"

#include "commondefs.h"
#include "testtooldefs.h"
#include "dbgtooldefs.h"
#include "gcarraydefs.h"
Expand Down Expand Up @@ -106,16 +109,17 @@ void print_atomname(LispPTR index)
/* */
/************************************************************************/

#define PACKAGES_LIMIT 255
/** GET PACKAGE INDEX from PACKAGE FULL NAME */
int find_package_from_name(const char *packname, int len) {
int index;
PACKAGE *package;
NEWSTRINGP *namestring;
DLword len2;
char *pname;
struct arrayheader *pi_array;

for (index = 1; index <= PACKAGES_LIMIT; index++) {
/* assumes the *PACKAGE-FROM-INDEX* array is simple with no offset */
pi_array = (struct arrayheader *)Addr68k_from_LADDR(*Package_from_Index_word);
for (index = 1; index < pi_array->totalsize; index++) {
package = (PACKAGE *)Addr68k_from_LADDR(aref1(*Package_from_Index_word, index));
namestring = (NEWSTRINGP *)Addr68k_from_LADDR(package->NAME);
pname = (char *)Addr68k_from_LADDR(namestring->base);
Expand Down Expand Up @@ -847,18 +851,6 @@ void printPC(void) {
printf("PC: O%o ", pc);
}

/***************************/
int countchar(char *string) {
int cnt = 0;

while (*string != '\0') {
string++;
cnt++;
}

return (cnt);
}

void dump_bf(Bframe *bf) {
DLword *ptr;
printf("\n*** Basic Frame");
Expand Down Expand Up @@ -1024,10 +1016,8 @@ FX *get_nextFX(FX *fx) {

} /* get_nextFX end */

int MAKEATOM(char *string) {
int length;
length = countchar(string);
return (make_atom(string, 0, length, 0));
LispPTR MAKEATOM(char *string) {
return (make_atom(string, 0, strlen(string), 0));
}

/************************************************************************/
Expand All @@ -1040,8 +1030,11 @@ int MAKEATOM(char *string) {
/************************************************************************/

LispPTR *MakeAtom68k(char *string) {
int index;
index = make_atom(string, 0, countchar(string), 0);
LispPTR index;
index = make_atom(string, 0, strlen(string), 0);
if (index == 0xffffffff) {
error("MakeAtom68k: no such atom found");
}
#ifdef BIGVM
index = (ATOMS_HI << 16) + (index * 10) + NEWATOM_VALUE_OFFSET;
#else
Expand Down Expand Up @@ -1070,44 +1063,6 @@ void GETTOPVAL(char *string) {
printf("'%s': no such symbol.\n", string);
}

/************************************************************************/
/* */
/* S _ T O P V A L */
/* */
/* Given a string that's an atom name minus the initial \, */
/* print the atom's top-level value. This is here because */
/* DBX won't put \'s in strings you type. */
/* */
/************************************************************************/

void S_TOPVAL(char *string) {
int index;
LispPTR *cell68k;
int length;
char dummy[256];

dummy[0] = '\\';
for (length = 1; *string != '\0'; length++, string++) { dummy[length] = *string; }

index = make_atom(dummy, 0, length, 0);
cell68k = (LispPTR *)GetVALCELL68k(index);
print(*cell68k);
}

/***************/
int S_MAKEATOM(char *string) {
int index = 0;
int length;
char dummy[256];

dummy[0] = '\\';
for (length = 1; *string != '\0'; length++, string++) { dummy[length] = *string; }

index = make_atom(dummy, 0, length, 0);
printf("#Atomindex : %d\n", index);
return (index);
}

/****************************************************************************/
/* all_stack_dump(start,end)
*/
Expand Down