Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

smake only shows output of one sc call #174

Open
titanlab opened this issue Aug 31, 2022 · 1 comment
Open

smake only shows output of one sc call #174

titanlab opened this issue Aug 31, 2022 · 1 comment

Comments

@titanlab
Copy link

Hello,

I use SAS/C in combination with your latest vamos. When I run smake only the output of one single sc spawn is shown, all other outputs is basically hidden. That means I want to use SAS/C to build my project but can only see the compiler output of one sc call.

CLI output (Linux, latest python 3.1, installed amitools from source):

[neo@fbook amiga]$ vamos -c vamosrc -C 30 -m 4096 smake all
SAS/C_SMAKE 6.58 (27.12.96)
Copyright (c) 1988-1995 SAS Institute, Inc.
bin already exists
obj already exists
	sc bob.c Math=standard IdentifierLength=63 PreprocessorBuffer=16384 IncludeDirectory=build/include_sas IncludeDirectory=lib/agaos IncludeDirectory=lib ObjectName=obj/bob.o nostackcheck
SAS/C Amiga Compiler 6.59
Copyright (c) 1988-1995 SAS Institute Inc.
--->>> HERE OUTPUT IS STOPPED <<<---
[neo@fbook amiga]$

vamosrc

[neo@fbook amiga]$ cat vamosrc
[volumes]
sc=../emu/SAS/sc
wb=../emu/DH0

[assigns]
include=sc:include
lib=sc:lib
libs=wb:Libs
c=wb:C

[path]
path=sc:c,wb:c

[vamos]
quiet=True
ram_size=2048

extract from SMakefile

.c.o:
	sc $*.c Math=standard IdentifierLength=63 PreprocessorBuffer=16384 IncludeDirectory=build/include_sas IncludeDirectory=lib/agaos IncludeDirectory=lib ObjectName=$@ nostackcheck

.s.o:
	vasm -phxass -Ibuild/include_i -Isrc -Ilib/agaos -Fhunk -quiet -no-opt -m68030 -DCPU=030 -DSASC -o $@ $*.s

all: prepare bin/sas/spinbow

prepare:
	-@MakeDir bin obj >NIL:

bin/sas/spinbow: obj/bob.o obj/bpd.o obj/c2p.o obj/copper.o obj/cvid.o obj/dbgbar.o \
	obj/dpartsys.o obj/font_sys.o obj/font.o obj/game.o obj/grid.o obj/ilbm.o \
	obj/input.o obj/intro.o obj/linalg.o obj/loader.o obj/lzrw5.o obj/math.o \
	obj/memory.o obj/music.o obj/pak.o obj/partsys.o obj/rect.o obj/rtg_font.o \
	obj/rtg.o obj/scene_main.o obj/scene.o obj/sersync.o obj/slz.o obj/sprite_mplex.o \
	obj/sprite.o obj/sys.o obj/timer.o obj/xd_camera.o obj/xd_engine.o obj/xd_light.o \
	obj/xd_object.o obj/xd_polflat.o obj/xd_polygon.o obj/xd_render.o obj/xd_scene.o \
	obj/voxel.o
	slink with SLinkfile

obj/bob.o: bob.c
obj/bpd.o: bpd.c
obj/c2p.o: c2p.c
obj/copper.o: copper.c
obj/cvid.o: cvid.c
obj/dbgbar.o: dbgbar.c
# more files follow here...

Do you have an idea why?

@titanlab
Copy link
Author

Also, if I compile a lot of files from the SMakefile (I now have around ~30 phxass calls and ~40 sc calls), I get the following error:

	sc bob.c Math=standard IdentifierLength=63 PreprocessorBuffer=16384 ObjectName=obj/bob.o nostackcheck noversion
11:40:49.369       lock:  ERROR:  no more lock slots! max=1024
11:40:50.958       lock:  ERROR:  no more lock slots! max=1024
11:40:50.961    machine:  ERROR:  ----- ERROR in CPU Run #1 -----
11:40:50.961    machine:  ERROR:  Run: 'smake': Initial PC=00229c, SP=00bd18
11:40:50.961    machine:  ERROR:  PC=00001c26  SR=-----    USP=0000b99c ISP=00000700 MSP=00000780
11:40:50.961    machine:  ERROR:  D0=ffffffff  D1=0000c7f4  D2=0000b9b0  D3=00000000  D4=00000000  D5=00000000  D6=00000000  D7=00000000
11:40:50.961    machine:  ERROR:  A0=0000b9b0  A1=0000c7f4  A2=0001eaa8  A3=0000b9cc  A4=0000bf7c  A5=0000c7f4  A6=00001ae8  A7=0000b99c
11:40:50.961    machine:  ERROR:  SP-32=00133c SP-28=000001 SP-24=008a98 SP-20=00000a SP-16=00c2ee SP-12=009630 SP-08=000000 SP-04=000077
11:40:50.961    machine:  ERROR:  SP+00=007110 SP+04=00ffff SP+08=000000 SP+12=00c7f4 SP+16=00133c SP+20=80000021 SP+24=00088a SP+28=80000022
11:40:50.962    machine:  ERROR:  Traceback (most recent call last):
11:40:50.962    machine:  ERROR:    File "machine/pytraps.pyx", line 19, in machine.emu.trap_wrapper
11:40:50.962    machine:  ERROR:    File "/home/neo/.local/lib/python3.10/site-packages/amitools/vamos/libcore/stub.py", line 165, in base_func
11:40:50.962    machine:  ERROR:      res = method(ctx)
11:40:50.962    machine:  ERROR:    File "/home/neo/.local/lib/python3.10/site-packages/amitools/vamos/lib/DosLibrary.py", line 1609, in SystemTagList
11:40:50.962    machine:  ERROR:      proc = Process(ctx, binary, arg_str, cwd=cwd, cwd_lock=cwd_lock)
11:40:50.962    machine:  ERROR:    File "/home/neo/.local/lib/python3.10/site-packages/amitools/vamos/lib/dos/Process.py", line 67, in __init__
11:40:50.962    machine:  ERROR:      self.init_task_struct(input_fh, output_fh)
11:40:50.962    machine:  ERROR:    File "/home/neo/.local/lib/python3.10/site-packages/amitools/vamos/lib/dos/Process.py", line 299, in init_task_struct
11:40:50.962    machine:  ERROR:      self.this_task.access.w_s("pr_HomeDir", self.home_lock.b_addr << 2)
11:40:50.962    machine:  ERROR:  AttributeError: 'NoneType' object has no attribute 'b_addr'
11:40:50.962       main:  ERROR:  vamos failed!

If I manually increase the number of slots to 2048 in the LockManager, it's fine. Any idea how I can analyze/fix that?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant