Pacmen-evolution Sources freigegeben

Moderator: Rockford

Antworten
Benutzeravatar
LarsImNetz
Beiträge: 152
Registriert: 24.08.2021 18:27
Has thanked: 109 times
Been thanked: 81 times
Kontaktdaten:

Pacmen-evolution Sources freigegeben

Beitrag von LarsImNetz »

Hi all,

für alle, die es interessiert, hier ist der komplette Source, um Pacmen zu bauen. https://github.com/the-atari-team/tat.pacmen.evolution

Da es den Compiler voraussetzt, sollte man dem README folgen und alle benötigten Tools installieren.

LG
Lars

Benutzeravatar
LarsImNetz
Beiträge: 152
Registriert: 24.08.2021 18:27
Has thanked: 109 times
Been thanked: 81 times
Kontaktdaten:

Re: Pacmen-evolution Sources freigegeben

Beitrag von LarsImNetz »

So, für alle die es interessiert, das Pacmen mal vom Scratch zu bauen:

Es braucht ein Linux mit bash oder Windows mit git-bash.

In der Konsole:

Code: Alles auswählen

git clone https://github.com/the-atari-team/tat.pacmen.evolution.git
cd tat.pacmen.evolution
./get-everything.sh           # das holt alle benötigten Programme zum Bauen
die PATH Variable anpassen wie beschrieben

ggf. atari800 und atasm installieren und das ATARIXL.ROM kopieren, oder im Makefile sagen, wo das ATARIXL.ROM liegt. (Zeile 9)

Wenn es keine Fehler mehr gibt, dann 'make' ausführen.

Pacmen from Scratch...

Na, wer traut sich?

LG
Lars

Benutzeravatar
cas
Beiträge: 813
Registriert: 18.06.2021 21:01
Wohnort: Solar System
Has thanked: 181 times
Been thanked: 362 times
Kontaktdaten:

Re: Pacmen-evolution Sources freigegeben

Beitrag von cas »

Challenge accepted

Aber nicht unter Linux (das wäre ja einfach), sonder unter OpenBSD 7.2 amd64.

Nach Anpassen des "Shebang" der Bash-Skripte ("bash" lebt im OpenBSD unter "/usr/local/bin") hat alles ohne Fehler (aber mit einigen Warnungen) kompiliert. Atari800 startet, Spiel startet ... und fällt dann in das Turbo-DOS zurück. Irgendwas hat nicht funktioniert.

Ich benutze Atari800 5.0.0, ATasm 1.09 und Java "OpenJDK" 17.0.4.

Hier ist die Ausgabe des Compile-Vorgangs:

Code: Alles auswählen

~/src/tat.pacmen.evolution $ gmake
wnfc ghosts-data.wnf '-O' 2 '-smallHeapPtr' -I .
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Read file: 'ghosts-data.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found a 'header.wnf' file, read it first.
INFO  compile
INFO  Peephole Optimizer has 0 optimizations applied.
INFO  Register Optimizer has 0 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/GHOSTS.INC

wnfc pacmen-data.wnf '-O' 2 '-smallHeapPtr' -I .
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Read file: 'pacmen-data.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found a 'header.wnf' file, read it first.
INFO  compile
INFO  Peephole Optimizer has 0 optimizations applied.
INFO  Register Optimizer has 0 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/PACMDATA.INC

wnfc move-pacmen.wnf '-O' 2 '-smallHeapPtr' -showvariableusage -I .
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Parameter for variable usage is given, see how often each variable is used.
INFO  Read file: 'move-pacmen.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found a 'header.wnf' file, read it first.
INFO  compile
INFO  set variable MP_CHASE from header.
INFO  set variable MP_SCATTER from header.
INFO  set variable MP_ANGST from header.
INFO  set variable MP_AUGEN from header.
INFO  set variable MP_EXACT_POSITION from header.
INFO  set variable MP_FRONT_POSITION from header.
INFO  set variable MP_DIAGONAL_POSITION from header.
INFO  set variable MP_CIRCLE_POSITION from header.
INFO  set variable MP_SPEED_50 from header.
INFO  set variable MP_SPEED_66 from header.
INFO  set variable MP_SPEED_75 from header.
INFO  set variable MP_SPEED_80 from header.
INFO  set variable MP_SPEED_85 from header.
INFO  set variable MP_SPEED_90 from header.
INFO  set variable MP_SPEED_95 from header.
INFO  set variable MP_SPEED_98 from header.
INFO  set variable MP_MODE_INTRO from header.
INFO  set variable MP_MODE_PLAY from header.
INFO  set variable MP_MODE_GAME_OVER from header.
INFO  set variable MP_MODE_ABBRUCH from header.
INFO  set variable MP_MODE_PACMEN_LOST_LIVE from header.
INFO  set variable MP_GAME_MODE from header.
INFO  set variable MP_GAME_DIFFICULT_START from header.
INFO  set variable MP_MAX_GAME_DIFFICULT from header.
INFO  set variable MP_MAX_GAME_LEVEL from header.
INFO  set variable MP_GAME_DIFFICULT from header.
INFO  set variable MP_GAME_START from header.
INFO  set variable MP_GAME_LEVEL from header.
INFO  set variable MP_PLAYER_LIVES from header.
INFO  set variable MP_NEWCOLLECTIBLEPOSSIBLE from header.
INFO  set variable MP_NEWCOLLECTIBLECOUNTDOWN from header.
INFO  set variable MP_NEWCOLLECTIBLEWAITFOR from header.
INFO  set variable MP_CURRENTCOLLECTIBLE from header.
INFO  set variable MP_EATENCOLLECTIBLE from header.
INFO  set variable MP_UP from header.
INFO  set variable MP_RIGHT from header.
INFO  set variable MP_DOWN from header.
INFO  set variable MP_LEFT from header.
INFO  set variable MP_GUILTY from header.
INFO  set variable MP_PACMEN_CANAL from header.
INFO  set variable MP_GHOST_CANAL from header.
INFO  set variable MP_AUGEN_CANAL from header.
INFO  set variable MP_TIC_TOC_CANAL from header.
INFO  set variable MP_DEBUG from header.
INFO  Variable usage count:
INFO  show only variables with read usage of at least 8 times.
INFO  show only variables with write usage of at least 8 times.
INFO  Variable: 'MP_PACMEN_ANIMATION' has 10 writes
INFO  Variable: 'MP_WISHED_DIRECTION' has 10 reads
INFO  Peephole Optimizer has 176 optimizations applied.
INFO  Register Optimizer has 4 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/PACMOVE.INC

wnfc move-ghosts.wnf '-O' 2 '-smallHeapPtr' -showvariableusage -I .
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Parameter for variable usage is given, see how often each variable is used.
INFO  Read file: 'move-ghosts.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found a 'header.wnf' file, read it first.
INFO  compile
INFO  set variable MG_CHASE from header.
INFO  set variable MG_SCATTER from header.
INFO  set variable MG_ANGST from header.
INFO  set variable MG_AUGEN from header.
INFO  set variable MG_EXACT_POSITION from header.
INFO  set variable MG_FRONT_POSITION from header.
INFO  set variable MG_DIAGONAL_POSITION from header.
INFO  set variable MG_CIRCLE_POSITION from header.
INFO  set variable MG_SPEED_50 from header.
INFO  set variable MG_SPEED_66 from header.
INFO  set variable MG_SPEED_75 from header.
INFO  set variable MG_SPEED_80 from header.
INFO  set variable MG_SPEED_85 from header.
INFO  set variable MG_SPEED_90 from header.
INFO  set variable MG_SPEED_95 from header.
INFO  set variable MG_SPEED_98 from header.
INFO  set variable MG_MODE_INTRO from header.
INFO  set variable MG_MODE_PLAY from header.
INFO  set variable MG_MODE_GAME_OVER from header.
INFO  set variable MG_MODE_ABBRUCH from header.
INFO  set variable MG_MODE_PACMEN_LOST_LIVE from header.
INFO  set variable MG_GAME_MODE from header.
INFO  set variable MG_GAME_DIFFICULT_START from header.
INFO  set variable MG_MAX_GAME_DIFFICULT from header.
INFO  set variable MG_MAX_GAME_LEVEL from header.
INFO  set variable MG_GAME_DIFFICULT from header.
INFO  set variable MG_GAME_START from header.
INFO  set variable MG_GAME_LEVEL from header.
INFO  set variable MG_PLAYER_LIVES from header.
INFO  set variable MG_NEWCOLLECTIBLEPOSSIBLE from header.
INFO  set variable MG_NEWCOLLECTIBLECOUNTDOWN from header.
INFO  set variable MG_NEWCOLLECTIBLEWAITFOR from header.
INFO  set variable MG_CURRENTCOLLECTIBLE from header.
INFO  set variable MG_EATENCOLLECTIBLE from header.
INFO  set variable MG_UP from header.
INFO  set variable MG_RIGHT from header.
INFO  set variable MG_DOWN from header.
INFO  set variable MG_LEFT from header.
INFO  set variable MG_GUILTY from header.
INFO  set variable MG_PACMEN_CANAL from header.
INFO  set variable MG_GHOST_CANAL from header.
INFO  set variable MG_AUGEN_CANAL from header.
INFO  set variable MG_TIC_TOC_CANAL from header.
INFO  set variable MG_DEBUG from header.
INFO  Variable usage count:
INFO  show only variables with read usage of at least 106 times.
INFO  show only variables with write usage of at least 16 times.
INFO  Variable: 'MG_NUMBER' has 133 reads
INFO  Variable: 'MG_PXPF' has 19 writes
INFO  Variable: 'MG_PYPF' has 17 writes
INFO  Variable: 'MG_REAL_DIRECTION' has 21 writes
INFO  Peephole Optimizer has 450 optimizations applied.
INFO  Register Optimizer has 44 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/GHSTMOVE.INC

wnfc cookie.wnf '-O' 2 '-smallHeapPtr' -I .
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Read file: 'cookie.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found a 'header.wnf' file, read it first.
INFO  compile
INFO  Peephole Optimizer has 144 optimizations applied.
INFO  Register Optimizer has 6 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/COOKIE.INC

wnfc fade.wnf '-O' 2 '-smallHeapPtr' -I .
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Read file: 'fade.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found a 'header.wnf' file, read it first.
INFO  compile
INFO  Peephole Optimizer has 56 optimizations applied.
INFO  Register Optimizer has 5 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/FADE.INC

wnfc extra.wnf '-O' 2 '-smallHeapPtr' -I .
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Read file: 'extra.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found a 'header.wnf' file, read it first.
INFO  compile
INFO  Peephole Optimizer has 55 optimizations applied.
INFO  Register Optimizer has 2 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/EXTRA.INC

wnfc level.wnf '-O' 2 '-smallHeapPtr' -I .
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Read file: 'level.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found a 'header.wnf' file, read it first.
INFO  compile
INFO  Peephole Optimizer has 23 optimizations applied.
INFO  Register Optimizer has 3 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/LEVEL.INC

wnfc audio-play.wnf '-O' 2 '-smallHeapPtr' -I .
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Read file: 'audio-play.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found a 'header.wnf' file, read it first.
INFO  compile
INFO  Peephole Optimizer has 75 optimizations applied.
INFO  Register Optimizer has 0 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/AUDIOPLY.INC

wnfc show-score.wnf '-O' 2 '-smallHeapPtr' -I .
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Read file: 'show-score.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found a 'header.wnf' file, read it first.
INFO  compile
INFO  Peephole Optimizer has 11 optimizations applied.
INFO  Register Optimizer has 0 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/SHOWSCR.INC

wnfc pacmen-font.wnf -noheader '-O' 2 '-smallHeapPtr' -I .
WARN  Parameter to ignore header file is given, do not import header.wnf if exists!
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Read file: 'pacmen-font.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found header file, but will ingnored due to parameter
INFO  compile
INFO  Peephole Optimizer has 0 optimizations applied.
INFO  Register Optimizer has 0 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/PACFONT.INC

wnfc pacmen-font-2.wnf '-O' 2 '-smallHeapPtr' -I .
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Read file: 'pacmen-font-2.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found a 'header.wnf' file, read it first.
INFO  compile
INFO  Peephole Optimizer has 0 optimizations applied.
INFO  Register Optimizer has 0 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/PACFONT2.INC

wnfc pacmen-title-font.wnf '-O' 2 '-smallHeapPtr' -I .
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Read file: 'pacmen-title-font.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found a 'header.wnf' file, read it first.
INFO  compile
INFO  Peephole Optimizer has 0 optimizations applied.
INFO  Register Optimizer has 0 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/TITLFONT.INC

wnfc pacmen-title-intro.wnf '-O' 2 '-smallHeapPtr' -I .
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Read file: 'pacmen-title-intro.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found a 'header.wnf' file, read it first.
INFO  compile
INFO  Peephole Optimizer has 114 optimizations applied.
INFO  Register Optimizer has 4 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/PACINTRO.INC

wnfc shuffle.wnf '-O' 2 '-smallHeapPtr' -I .
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Read file: 'shuffle.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found a 'header.wnf' file, read it first.
INFO  compile
INFO  Peephole Optimizer has 51 optimizations applied.
INFO  Register Optimizer has 8 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/SHUFFLE.INC

xl-packer --data -of COMPRESSED-PLAYFIELDS.INC PLAYS0.DAT PLAYS1.DAT PLAYS2.DAT PLAYS3.DAT PLAYS4.DAT PLAYS5.DAT PLAYS6.DAT PLAYS7.DAT PLAYS8.DAT PLAYS9.DAT PLAYSA.DAT PLAYSB.DAT PLAYSC.DAT PLAYSD.DAT PLAYSE.DAT PLAYSF.DAT PLAYSG.DAT PLAYSH.DAT PLAYSI.DAT PLAYSJ.DAT PLAYSK.DAT PLAYSL.DAT PLAYSM.DAT PLAYSN.DAT PLAYSO.DAT PLAYSP.DAT PLAYSQ.DAT PLAYSR.DAT PLAYSS.DAT PLAYST.DAT PLAYSU.DAT PLAYSV.DAT PLAYSW.DAT PLAYSX.DAT PLAYSY.DAT PLAYSZ.DAT
INFO  DATA Mode active
INFO  Will write to file: COMPRESSED-PLAYFIELDS.INC
; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   468 bytes
;    compressed length:   234 bytes
; Ratio (without tree):   1:2.0

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   518 bytes
;    compressed length:   250 bytes
; Ratio (without tree):   1:2.072

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   420 bytes
;    compressed length:   195 bytes
; Ratio (without tree):   1:2.1538463

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   454 bytes
;    compressed length:   213 bytes
; Ratio (without tree):   1:2.1314554

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   469 bytes
;    compressed length:   223 bytes
; Ratio (without tree):   1:2.103139

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   447 bytes
;    compressed length:   216 bytes
; Ratio (without tree):   1:2.0694444

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   380 bytes
;    compressed length:   185 bytes
; Ratio (without tree):   1:2.054054

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   462 bytes
;    compressed length:   214 bytes
; Ratio (without tree):   1:2.1588786

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   388 bytes
;    compressed length:   176 bytes
; Ratio (without tree):   1:2.2045455

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   387 bytes
;    compressed length:   164 bytes
; Ratio (without tree):   1:2.359756

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   415 bytes
;    compressed length:   170 bytes
; Ratio (without tree):   1:2.4411764

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   367 bytes
;    compressed length:   185 bytes
; Ratio (without tree):   1:1.9837838

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   353 bytes
;    compressed length:   170 bytes
; Ratio (without tree):   1:2.0764706

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   488 bytes
;    compressed length:   226 bytes
; Ratio (without tree):   1:2.159292

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   365 bytes
;    compressed length:   176 bytes
; Ratio (without tree):   1:2.0738637

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   342 bytes
;    compressed length:   166 bytes
; Ratio (without tree):   1:2.060241

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   419 bytes
;    compressed length:   187 bytes
; Ratio (without tree):   1:2.2406416

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   362 bytes
;    compressed length:   160 bytes
; Ratio (without tree):   1:2.2625

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   265 bytes
;    compressed length:   112 bytes
; Ratio (without tree):   1:2.3660715

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   572 bytes
;    compressed length:   262 bytes
; Ratio (without tree):   1:2.183206

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   684 bytes
;    compressed length:   246 bytes
; Ratio (without tree):   1:2.7804878

; Anzahl einfache Nodes:48
; -- Encoding/Decoding --
;      Original length:   334 bytes
;    compressed length:   135 bytes
; Ratio (without tree):   1:2.4740741

wnfc game-pacmen.wnf '-O' 2 '-smallHeapPtr' -showvariableusage -I .
WARN  Parameter for small Heap Pointer is given, we use only byte wide size heap!
WARN  Make sure your Heap_Ptr starts at equal word address! See RUNTIME.INC
INFO  Parameter for variable usage is given, see how often each variable is used.
INFO  Read file: 'game-pacmen.wnf'
INFO  Check for header file: 'header.wnf'
INFO  Found a 'header.wnf' file, read it first.
INFO  compile
INFO  set variable CHASE from header.
INFO  set variable SCATTER from header.
INFO  set variable ANGST from header.
INFO  set variable AUGEN from header.
INFO  set variable EXACT_POSITION from header.
INFO  set variable FRONT_POSITION from header.
INFO  set variable DIAGONAL_POSITION from header.
INFO  set variable CIRCLE_POSITION from header.
INFO  set variable SPEED_50 from header.
INFO  set variable SPEED_66 from header.
INFO  set variable SPEED_75 from header.
INFO  set variable SPEED_80 from header.
INFO  set variable SPEED_85 from header.
INFO  set variable SPEED_90 from header.
INFO  set variable SPEED_95 from header.
INFO  set variable SPEED_98 from header.
INFO  set variable MODE_INTRO from header.
INFO  set variable MODE_PLAY from header.
INFO  set variable MODE_GAME_OVER from header.
INFO  set variable MODE_ABBRUCH from header.
INFO  set variable MODE_PACMEN_LOST_LIVE from header.
INFO  set variable GAME_MODE from header.
INFO  set variable GAME_DIFFICULT_START from header.
INFO  set variable MAX_GAME_DIFFICULT from header.
INFO  set variable MAX_GAME_LEVEL from header.
INFO  set variable GAME_DIFFICULT from header.
INFO  set variable GAME_START from header.
INFO  set variable GAME_LEVEL from header.
INFO  set variable PLAYER_LIVES from header.
INFO  set variable NEWCOLLECTIBLEPOSSIBLE from header.
INFO  set variable NEWCOLLECTIBLECOUNTDOWN from header.
INFO  set variable NEWCOLLECTIBLEWAITFOR from header.
INFO  set variable CURRENTCOLLECTIBLE from header.
INFO  set variable EATENCOLLECTIBLE from header.
INFO  set variable UP from header.
INFO  set variable RIGHT from header.
INFO  set variable DOWN from header.
INFO  set variable LEFT from header.
INFO  set variable GUILTY from header.
INFO  set variable PACMEN_CANAL from header.
INFO  set variable GHOST_CANAL from header.
INFO  set variable AUGEN_CANAL from header.
INFO  set variable TIC_TOC_CANAL from header.
INFO  set variable DEBUG from header.
INFO  Variable usage count:
INFO  show only variables with read usage of at least 11 times.
INFO  show only variables with write usage of at least 9 times.
INFO  Variable: 'NEWCOLLECTIBLECOUNTDOWN' has 10 writes
INFO  Variable: 'SCREENXY' has 14 reads
INFO  Variable: 'I' has 12 writes
INFO  Peephole Optimizer has 424 optimizations applied.
INFO  Register Optimizer has 18 optimizations applied.
INFO  write to /home/cas/src/tat.pacmen.evolution/PACMEN.ASM

atasm -ha -s PACMEN.ASM -gPACMEN.lst -lPACMEN.lab >PACMEN.log
ATasm 1.09 (A mostly Mac65 compatible 6502 cross-assembler)
Pass 1: Success. (0 warnings)
Pass 2:
In /home/cas/src/tat.pacmen.evolution/MACROS.INC, line 120--
 Warning: Using bank 0,0


In /home/cas/src/tat.pacmen.evolution/MACROS.INC, line 185--
 Warning: Using bank 1,1


In PACMEN.ASM, line 7--
 Warning: Using bank 2,2


In /home/cas/src/tat.pacmen.evolution/draw-ghosts.INC, line 50--
 Warning: Warning: Address 3704 over-written

In /home/cas/src/tat.pacmen.evolution/draw-ghosts.INC, line 50--
 Warning: Warning: Address 3705 over-written

In /home/cas/src/tat.pacmen.evolution/draw-ghosts.INC, line 50--
 Warning: Warning: Address 3706 over-written

In /home/cas/src/tat.pacmen.evolution/draw-ghosts.INC, line 50--
 Warning: Warning: Address 3707 over-written

In /home/cas/src/tat.pacmen.evolution/draw-ghosts.INC, line 68--
 Warning: Warning: Address 3708 over-written

In /home/cas/src/tat.pacmen.evolution/draw-ghosts.INC, line 68--
 Warning: Warning: Address 3709 over-written

In /home/cas/src/tat.pacmen.evolution/draw-ghosts.INC, line 69--
 Warning: Warning: Address 370a over-written

In /home/cas/src/tat.pacmen.evolution/draw-ghosts.INC, line 69--
 Warning: Warning: Address 370b over-written

In /home/cas/src/tat.pacmen.evolution/draw-ghosts.INC, line 70--
 Warning: Warning: Address 370c over-written

In /home/cas/src/tat.pacmen.evolution/draw-ghosts.INC, line 70--
 Warning: Warning: Address 370d over-written

In /home/cas/src/tat.pacmen.evolution/draw-ghosts.INC, line 71--
 Warning: Warning: Address 370e over-written

In /home/cas/src/tat.pacmen.evolution/draw-ghosts.INC, line 71--
 Warning: Warning: Address 370f over-written

In PACMEN.ASM, line 3555--
 Warning: Using bank 3,3



Assembly successful
  Compiled 34627 bytes (~33k)
    Block: 02c4-02c6 (3 bytes)
    Block: bc40-bc42 (3 bytes)
    Block: be07-be11 (11 bytes)
    Block: 0572-05ef (126 bytes)
    Block: 064b-06cd (131 bytes)
    Block: 06fe-06ff (2 bytes)
    Block: 2000-2f6c (3949 bytes)
    Block: 2f74-2f75 (2 bytes)
    Block: 2f87-3f9f (4121 bytes)
    Block: 3fcb-5b94 (7114 bytes)
    Block: 5b99-6965 (3533 bytes)
    Block: 6979-7257 (2271 bytes)
    Block: 7264-9ced (10890 bytes)
    Block: 9d00-9d00 (1 bytes)
    Block: 9dfc-9dff (4 bytes)
    Block: ae00-b3ff (1536 bytes)
    Block: b800-bb9f (928 bytes)
    Block: 02e0-02e1 (2 bytes)

Compiled 4 banks to binary file 'PACMEN.65o'
cp PACMEN.65o PACMEN.COM
rm -f .wnffiles.txt
rm -f .insert.txt
echo ".os.txt -> OS.TXT" >>.insert.txt
touch .wnffiles.txt
echo "PACMEN.COM -> AUTORUN.SYS" >.wnffiles.txt
cat .wnffiles.txt >>.insert.txt
echo "stop" >>.wnffiles.txt
xldir ./dos-sd.atr insert .insert.txt start-game.atr
INFO  Disk name: ./dos-sd.atr command:insert file:.insert.txt
INFO  Disk size in bytes: 92176
INFO  read full disk. (fat boot sectors)
WARN  File to insert .os.txt -> OS.TXT doesn't exist. Will exclude this file.
WARN  Given Extension SYS is not supported, do not convert.
INFO  Create file: AUTORUN.SYS length: 34701
INFO  write new disk: start-game.atr
INFO  Disk start-game.atr written.
INFO  Done.
atari800 \
    -hreadwrite \
    -H2 /tmp/atari \
    -xlxe_rom ../firmware/ATARIXL.ROM \
    -xl -xl-rev 2 \
    -pal -showspeed -nobasic \
    -windowed -win-width 682 -win-height 482 \
    -vsync -video-accel \
    '-kbdjoy0' \
   start-game.atr
Using Atari800 config file: /home/cas/.atari800.cfg
Created by Atari 800 Emulator, Version 5.0.0

Benutzeravatar
LarsImNetz
Beiträge: 152
Registriert: 24.08.2021 18:27
Has thanked: 109 times
Been thanked: 81 times
Kontaktdaten:

Re: Pacmen-evolution Sources freigegeben

Beitrag von LarsImNetz »

Moin cas,

ja das Problem konnte ich nachstellen. Es liegt am atasm Deine Version ist zu alt. Ich hatte mal einen Bug gemeldet und der schlägt hier zu. Du brauchst min. atasm 1.17

Hier die Version (1.20) von "RetroCoder" https://github.com/CycoPH/atasm/releases

Wenn die Releases unter BSD nicht laufen:
  • hol den Source, pack diesen aus
  • wechsel mit cd in src
  • make
  • werde root (su) ohne '-'
  • make install
  • atasm --version sollte jetzt 1.20 anzeigen.
Dann Pacmen nochmal durchbauen, erst 'make clean' dann 'make' dann wird es laufen.

LG
Lars

Benutzeravatar
cas
Beiträge: 813
Registriert: 18.06.2021 21:01
Wohnort: Solar System
Has thanked: 181 times
Been thanked: 362 times
Kontaktdaten:

Re: Pacmen-evolution Sources freigegeben

Beitrag von cas »

LarsImNetz hat geschrieben:
04.01.2023 12:41
Moin cas,

ja das Problem konnte ich nachstellen. Es liegt am atasm Deine Version ist zu alt. Ich hatte mal einen Bug gemeldet und der schlägt hier zu. Du brauchst min. atasm 1.17

Hier die Version (1.20) von "RetroCoder" https://github.com/CycoPH/atasm/releases

Wenn die Releases unter BSD nicht laufen:
  • hol den Source, pack diesen aus
  • wechsel mit cd in src
  • make
  • werde root (su) ohne '-'
  • make install
  • atasm --version sollte jetzt 1.20 anzeigen.
Dann Pacmen nochmal durchbauen, erst 'make clean' dann 'make' dann wird es laufen.

LG
Lars
Hi Lars,

danke, mit ATASM Version 1.20 klappte es.

Version 1.09 ist meines Wissens die aktuelle "offizielle" Version von ATASM (von Mark Schmelzenbach, Webseite https://atari.miribilist.com/atasm/).

Die anderen Versionen auf Github scheinen "inoffizielle" Forks zu sein (was kein Problem ist, nur verwirrend, da der Name nicht geaendert wurde).

Vielleicht kannst Du die Info mit der ATASM Version (und den Link zum Repo) in the Dokumentation mit aufnehmen (soll ich ein Pull-Request senden?).

Benutzeravatar
LarsImNetz
Beiträge: 152
Registriert: 24.08.2021 18:27
Has thanked: 109 times
Been thanked: 81 times
Kontaktdaten:

Re: Pacmen-evolution Sources freigegeben

Beitrag von LarsImNetz »

Hi Carsten,

PR ist nicht nötig, in der offiziellen Readme hatte ich das schon eingetragen, das min. atasm 1.18 genutzt werden muss und wo die hergenommen werden sollte.

Prima, das es geklappt hat.

LG
Lars

RetroCoder
Beiträge: 2
Registriert: 17.08.2021 18:31
Been thanked: 1 time
Kontaktdaten:

Re: Pacmen-evolution Sources freigegeben

Beitrag von RetroCoder »

cas hat geschrieben:
04.01.2023 20:56

Hi Lars,

danke, mit ATASM Version 1.20 klappte es.

Version 1.09 ist meines Wissens die aktuelle "offizielle" Version von ATASM (von Mark Schmelzenbach, Webseite https://atari.miribilist.com/atasm/).

Die anderen Versionen auf Github scheinen "inoffizielle" Forks zu sein (was kein Problem ist, nur verwirrend, da der Name nicht geaendert wurde).

Vielleicht kannst Du die Info mit der ATASM Version (und den Link zum Repo) in the Dokumentation mit aufnehmen (soll ich ein Pull-Request senden?).
Atasm auf GitHub ist offiziell. Ich hatte Mark vor ein paar Jahren um bug fixes gebeten. Nach kurzem hin und her gab er mir access to der ganzen source code and dem Google Docs um das Manual einigermassen updated to halten.

Atasm wird weiter entwickelt und passt gut mit der Atasm-Altirra-Bridge VSCode extension zusammen.

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast