mirror of
https://github.com/open-goal/jak-project.git
synced 2024-10-20 00:57:44 -04:00
Dependency graph work - Part 1 - Preliminary work (#3505)
Relates to #1353 This adds no new functionality or overhead to the compiler, yet. This is the preliminary work that has: - added code to the compiler in several spots to flag when something is used without being properly required/imported/whatever (disabled by default) - that was used to generate project wide file dependencies (some circulars were manually fixed) - then that graph underwent a transitive reduction and the result was written to all `jak1` source files. The next step will be making this actually produce and use a dependency graph. Some of the reasons why I'm working on this: - eliminates more `game.gp` boilerplate. This includes the `.gd` files to some extent (`*-ag` files and `tpage` files will still need to be handled) this is the point of the new `bundles` form. This should make it even easier to add a new file into the source tree. - a build order that is actually informed from something real and compiler warnings that tell you when you are using something that won't be available at build time. - narrows the search space for doing LSP actions -- like searching for references. Since it would be way too much work to store in the compiler every location where every symbol/function/etc is used, I have to do ad-hoc searches. By having a dependency graph i can significantly reduce that search space. - opens the doors for common shared code with a legitimate pattern. Right now jak 2 shares code from the jak 1 folder. This is basically a hack -- but by having an explicit require syntax, it would be possible to reference arbitrary file paths, such as a `common` folder. Some stats: - Jak 1 has about 2500 edges between files, including transitives - With transitives reduced at the source code level, each file seems to have a modest amount of explicit requirements. Known issues: - Tracking the location for where `defmacro`s and virtual state definitions were defined (and therefore the file) is still problematic. Because those forms are in a macro environment, the reader does not track them. I'm wondering if a workaround could be to search the reader's text_db by not just the `goos::Object` but by the text position. But for the purposes of finishing this work, I just statically analyzed and searched the code with throwaway python code.
This commit is contained in:
parent
e0b1d8c21e
commit
d1ece445d4
|
@ -16,10 +16,6 @@
|
||||||
#include "common/log/log.h"
|
#include "common/log/log.h"
|
||||||
// clang-format on
|
// clang-format on
|
||||||
|
|
||||||
// TODO - basically REPL to listen and inject commands into a running REPL
|
|
||||||
// - we will need a C++ side client as well which will let us communicate with the repl via for
|
|
||||||
// example, ImgUI
|
|
||||||
//
|
|
||||||
// TODO - The server also needs to eventually return the result of the evaluation
|
// TODO - The server also needs to eventually return the result of the evaluation
|
||||||
|
|
||||||
ReplServer::~ReplServer() {
|
ReplServer::~ReplServer() {
|
||||||
|
|
|
@ -28,8 +28,12 @@ struct MethodInfo {
|
||||||
std::string name;
|
std::string name;
|
||||||
TypeSpec type;
|
TypeSpec type;
|
||||||
std::string defined_in_type;
|
std::string defined_in_type;
|
||||||
|
// TODO - this might be redundant, but preventing an unknown breaking change, clean it up later
|
||||||
|
std::string type_name;
|
||||||
bool no_virtual = false;
|
bool no_virtual = false;
|
||||||
|
// TODO - this is no longer used anymore...but was not removed from th4e struct?
|
||||||
bool overrides_parent = false;
|
bool overrides_parent = false;
|
||||||
|
// TODO - this is no longer used anymore...but was not removed from th4e struct?
|
||||||
bool only_overrides_docstring = false;
|
bool only_overrides_docstring = false;
|
||||||
std::optional<std::string> docstring;
|
std::optional<std::string> docstring;
|
||||||
std::optional<std::string> overlay_name;
|
std::optional<std::string> overlay_name;
|
||||||
|
|
|
@ -124,10 +124,12 @@ class TypeSpec {
|
||||||
ASSERT(m_arguments);
|
ASSERT(m_arguments);
|
||||||
return m_arguments->at(idx);
|
return m_arguments->at(idx);
|
||||||
}
|
}
|
||||||
|
|
||||||
TypeSpec& get_arg(int idx) {
|
TypeSpec& get_arg(int idx) {
|
||||||
ASSERT(m_arguments);
|
ASSERT(m_arguments);
|
||||||
return m_arguments->at(idx);
|
return m_arguments->at(idx);
|
||||||
}
|
}
|
||||||
|
|
||||||
const TypeSpec& last_arg() const {
|
const TypeSpec& last_arg() const {
|
||||||
ASSERT(m_arguments);
|
ASSERT(m_arguments);
|
||||||
ASSERT(!m_arguments->empty());
|
ASSERT(!m_arguments->empty());
|
||||||
|
|
|
@ -548,6 +548,7 @@ MethodInfo TypeSystem::override_method(Type* type,
|
||||||
existing_info.name,
|
existing_info.name,
|
||||||
existing_info.type,
|
existing_info.type,
|
||||||
type->get_name(),
|
type->get_name(),
|
||||||
|
type->get_name(),
|
||||||
existing_info.no_virtual,
|
existing_info.no_virtual,
|
||||||
false,
|
false,
|
||||||
true,
|
true,
|
||||||
|
@ -607,6 +608,7 @@ MethodInfo TypeSystem::declare_method(Type* type,
|
||||||
method_name,
|
method_name,
|
||||||
ts,
|
ts,
|
||||||
type->get_name(),
|
type->get_name(),
|
||||||
|
type->get_name(),
|
||||||
no_virtual,
|
no_virtual,
|
||||||
true,
|
true,
|
||||||
false,
|
false,
|
||||||
|
@ -645,6 +647,7 @@ MethodInfo TypeSystem::declare_method(Type* type,
|
||||||
method_name,
|
method_name,
|
||||||
ts,
|
ts,
|
||||||
type->get_name(),
|
type->get_name(),
|
||||||
|
type->get_name(),
|
||||||
no_virtual,
|
no_virtual,
|
||||||
false,
|
false,
|
||||||
false,
|
false,
|
||||||
|
@ -678,8 +681,8 @@ MethodInfo TypeSystem::overlay_method(Type* type,
|
||||||
}
|
}
|
||||||
|
|
||||||
// use the existing ID.
|
// use the existing ID.
|
||||||
return type->add_method({existing_info.id, method_name, ts, type->get_name(), false, true, false,
|
return type->add_method({existing_info.id, method_name, ts, type->get_name(), type->get_name(),
|
||||||
docstring, std::make_optional(method_overlay_name)});
|
false, true, false, docstring, std::make_optional(method_overlay_name)});
|
||||||
}
|
}
|
||||||
|
|
||||||
MethodInfo TypeSystem::define_method(const std::string& type_name,
|
MethodInfo TypeSystem::define_method(const std::string& type_name,
|
||||||
|
@ -709,8 +712,10 @@ MethodInfo TypeSystem::define_method(Type* type,
|
||||||
// look up the method
|
// look up the method
|
||||||
MethodInfo existing_info;
|
MethodInfo existing_info;
|
||||||
bool got_existing = try_lookup_method(type, method_name, &existing_info);
|
bool got_existing = try_lookup_method(type, method_name, &existing_info);
|
||||||
|
|
||||||
if (got_existing) {
|
if (got_existing) {
|
||||||
|
// The lookup will return a parents method, but the type should be equal
|
||||||
|
// to the type in question (it's a child)
|
||||||
|
existing_info.type_name = type->get_name();
|
||||||
// Update the docstring
|
// Update the docstring
|
||||||
existing_info.docstring = docstring;
|
existing_info.docstring = docstring;
|
||||||
int bad_arg_idx = -99;
|
int bad_arg_idx = -99;
|
||||||
|
@ -758,7 +763,7 @@ MethodInfo TypeSystem::add_new_method(Type* type,
|
||||||
return existing;
|
return existing;
|
||||||
} else {
|
} else {
|
||||||
return type->add_new_method(
|
return type->add_new_method(
|
||||||
{0, "new", ts, type->get_name(), false, false, false, docstring, {}});
|
{0, "new", ts, type->get_name(), type->get_name(), false, false, false, docstring, {}});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -58,10 +58,11 @@ EnumType* parse_defenum(const goos::Object& defenum,
|
||||||
auto& enum_name_obj = car(iter);
|
auto& enum_name_obj = car(iter);
|
||||||
iter = cdr(iter);
|
iter = cdr(iter);
|
||||||
// check for docstring
|
// check for docstring
|
||||||
|
std::optional<std::string> maybe_docstring;
|
||||||
if (iter->is_pair() && car(iter).is_string()) {
|
if (iter->is_pair() && car(iter).is_string()) {
|
||||||
// TODO - docstring - store and use docstring if coming from the compiler
|
|
||||||
if (symbol_metadata) {
|
if (symbol_metadata) {
|
||||||
symbol_metadata->docstring = str_util::trim_newline_indents(car(iter).as_string()->data);
|
maybe_docstring = str_util::trim_newline_indents(car(iter).as_string()->data);
|
||||||
|
symbol_metadata->docstring = maybe_docstring.value();
|
||||||
}
|
}
|
||||||
iter = cdr(iter);
|
iter = cdr(iter);
|
||||||
}
|
}
|
||||||
|
@ -157,6 +158,7 @@ EnumType* parse_defenum(const goos::Object& defenum,
|
||||||
if (is_type("integer", base_type, ts)) {
|
if (is_type("integer", base_type, ts)) {
|
||||||
auto parent = ts->get_type_of_type<ValueType>(base_type.base_type());
|
auto parent = ts->get_type_of_type<ValueType>(base_type.base_type());
|
||||||
auto new_type = std::make_unique<EnumType>(parent, name, is_bitfield, entries);
|
auto new_type = std::make_unique<EnumType>(parent, name, is_bitfield, entries);
|
||||||
|
new_type->m_metadata.docstring = maybe_docstring;
|
||||||
new_type->set_runtime_type(parent->get_runtime_name());
|
new_type->set_runtime_type(parent->get_runtime_name());
|
||||||
return dynamic_cast<EnumType*>(ts->add_type(name, std::move(new_type)));
|
return dynamic_cast<EnumType*>(ts->add_type(name, std::move(new_type)));
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -7,9 +7,6 @@
|
||||||
|
|
||||||
// A normal Trie does not allow for duplicate keys, however this one does
|
// A normal Trie does not allow for duplicate keys, however this one does
|
||||||
// It allows for insertion and removal
|
// It allows for insertion and removal
|
||||||
//
|
|
||||||
// Note, keys assume only basic ASCII, which is _fine_ as OpenGOAL itself has this
|
|
||||||
// limitation as well.
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
class TrieWithDuplicates {
|
class TrieWithDuplicates {
|
||||||
private:
|
private:
|
||||||
|
|
|
@ -34,6 +34,7 @@
|
||||||
"dma-buffer.o"
|
"dma-buffer.o"
|
||||||
"dma-bucket.o"
|
"dma-bucket.o"
|
||||||
"dma-disasm.o"
|
"dma-disasm.o"
|
||||||
|
"pc-cheats.o" ;; added
|
||||||
"pckernel-h.o" ;; added
|
"pckernel-h.o" ;; added
|
||||||
"pckernel-impl.o" ;; added
|
"pckernel-impl.o" ;; added
|
||||||
"pc-debug-common.o" ;; added
|
"pc-debug-common.o" ;; added
|
||||||
|
|
|
@ -30,6 +30,7 @@
|
||||||
"dma-buffer.o"
|
"dma-buffer.o"
|
||||||
"dma-bucket.o"
|
"dma-bucket.o"
|
||||||
"dma-disasm.o"
|
"dma-disasm.o"
|
||||||
|
"pc-cheats.o" ;; added
|
||||||
"pckernel-h.o" ;; added
|
"pckernel-h.o" ;; added
|
||||||
"pckernel-impl.o" ;; added
|
"pckernel-impl.o" ;; added
|
||||||
"pc-debug-common.o" ;; added
|
"pc-debug-common.o" ;; added
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/draw/drawable-h.gc")
|
||||||
|
(require "kernel/gstate.gc")
|
||||||
|
|
||||||
;; name: aligner-h.gc
|
;; name: aligner-h.gc
|
||||||
;; name in dgo: aligner-h
|
;; name in dgo: aligner-h
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/anim/aligner-h.gc")
|
||||||
|
(require "engine/common-obs/process-drawable.gc")
|
||||||
|
|
||||||
;; name: aligner.gc
|
;; name: aligner.gc
|
||||||
;; name in dgo: aligner
|
;; name in dgo: aligner
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/collide/collide-cache.gc")
|
||||||
|
(require "engine/common-obs/process-drawable.gc")
|
||||||
|
|
||||||
;; name: joint-exploder.gc
|
;; name: joint-exploder.gc
|
||||||
;; name in dgo: joint-exploder
|
;; name in dgo: joint-exploder
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "kernel-defs.gc")
|
||||||
|
|
||||||
;; name: joint-h.gc
|
;; name: joint-h.gc
|
||||||
;; name in dgo: joint-h
|
;; name in dgo: joint-h
|
||||||
|
|
|
@ -1,5 +1,16 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/geometry/geometry.gc")
|
||||||
|
(require "engine/game/main-h.gc")
|
||||||
|
(require "engine/debug/debug-h.gc")
|
||||||
|
(require "engine/math/transformq-h.gc")
|
||||||
|
(require "engine/math/vector.gc")
|
||||||
|
(require "engine/game/fact-h.gc")
|
||||||
|
(require "engine/anim/joint-h.gc")
|
||||||
|
(require "engine/anim/mspace-h.gc")
|
||||||
|
(require "engine/game/game-h.gc")
|
||||||
|
|
||||||
;; name: joint-mod-h.gc
|
;; name: joint-mod-h.gc
|
||||||
;; name in dgo: joint-mod-h
|
;; name in dgo: joint-mod-h
|
||||||
|
|
|
@ -1,5 +1,14 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/entity/res.gc")
|
||||||
|
(require "engine/gfx/background/subdivide-h.gc")
|
||||||
|
(require "engine/math/transformq.gc")
|
||||||
|
(require "engine/anim/joint-h.gc")
|
||||||
|
(require "engine/data/art-h.gc")
|
||||||
|
(require "engine/anim/mspace-h.gc")
|
||||||
|
(require "engine/game/game-h.gc")
|
||||||
|
|
||||||
;; name: joint.gc
|
;; name: joint.gc
|
||||||
;; name in dgo: joint
|
;; name in dgo: joint
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "kernel/gcommon.gc")
|
||||||
|
|
||||||
;; name: mspace-h.gc
|
;; name: mspace-h.gc
|
||||||
;; name in dgo: mspace-h
|
;; name in dgo: mspace-h
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/gfx/hw/display.gc")
|
||||||
|
(require "engine/camera/camera.gc")
|
||||||
|
|
||||||
;; name: cam-combiner.gc
|
;; name: cam-combiner.gc
|
||||||
;; name in dgo: cam-combiner
|
;; name in dgo: cam-combiner
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "kernel-defs.gc")
|
||||||
|
|
||||||
;; name: cam-debug-h.gc
|
;; name: cam-debug-h.gc
|
||||||
;; name in dgo: cam-debug-h
|
;; name in dgo: cam-debug-h
|
||||||
|
|
|
@ -1,5 +1,14 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/collide/pat-h.gc")
|
||||||
|
(require "engine/anim/joint-mod-h.gc")
|
||||||
|
(require "engine/math/euler.gc")
|
||||||
|
(require "engine/geometry/bounding-box-h.gc")
|
||||||
|
(require "engine/debug/debug.gc")
|
||||||
|
(require "engine/collide/collide-mesh-h.gc")
|
||||||
|
(require "engine/camera/camera.gc")
|
||||||
|
|
||||||
;; name: cam-debug.gc
|
;; name: cam-debug.gc
|
||||||
;; name in dgo: cam-debug
|
;; name in dgo: cam-debug
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/camera/camera-h.gc")
|
||||||
|
(require "engine/math/matrix-h.gc")
|
||||||
|
|
||||||
;; name: cam-interface-h.gc
|
;; name: cam-interface-h.gc
|
||||||
;; name in dgo: cam-interface-h
|
;; name in dgo: cam-interface-h
|
||||||
|
|
|
@ -1,5 +1,13 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/camera/cam-interface-h.gc")
|
||||||
|
(require "engine/math/quaternion.gc")
|
||||||
|
(require "kernel/gstate.gc")
|
||||||
|
(require "engine/gfx/math-camera-h.gc")
|
||||||
|
(require "engine/entity/entity-h.gc")
|
||||||
|
(require "engine/math/transformq-h.gc")
|
||||||
|
|
||||||
;; name: cam-interface.gc
|
;; name: cam-interface.gc
|
||||||
;; name in dgo: cam-interface
|
;; name in dgo: cam-interface
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/ps2/pad.gc")
|
||||||
|
(require "engine/geometry/vol-h.gc")
|
||||||
|
(require "engine/camera/camera.gc")
|
||||||
|
|
||||||
;; name: cam-layout.gc
|
;; name: cam-layout.gc
|
||||||
;; name in dgo: cam-layout
|
;; name in dgo: cam-layout
|
||||||
|
|
|
@ -1,5 +1,13 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/game/projectiles-h.gc")
|
||||||
|
(require "engine/physics/dynamics-h.gc")
|
||||||
|
(require "engine/gfx/mood/weather-part.gc")
|
||||||
|
(require "engine/anim/joint-mod-h.gc")
|
||||||
|
(require "engine/collide/collide-mesh-h.gc")
|
||||||
|
(require "engine/camera/camera.gc")
|
||||||
|
|
||||||
;; name: cam-master.gc
|
;; name: cam-master.gc
|
||||||
;; name in dgo: cam-master
|
;; name in dgo: cam-master
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/camera/cam-combiner.gc")
|
||||||
|
|
||||||
;; name: cam-start.gc
|
;; name: cam-start.gc
|
||||||
;; name in dgo: cam-start
|
;; name in dgo: cam-start
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/camera/camera.gc")
|
||||||
|
(require "pc/pckernel-impl.gc")
|
||||||
|
|
||||||
;; name: cam-states-dbg.gc
|
;; name: cam-states-dbg.gc
|
||||||
;; name in dgo: cam-states-dbg
|
;; name in dgo: cam-states-dbg
|
||||||
|
|
|
@ -1,5 +1,14 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/camera/pov-camera-h.gc")
|
||||||
|
(require "engine/collide/collide-mesh-h.gc")
|
||||||
|
(require "engine/camera/camera.gc")
|
||||||
|
(require "engine/nav/navigate-h.gc")
|
||||||
|
(require "engine/collide/collide-cache-h.gc")
|
||||||
|
(require "engine/anim/joint-h.gc")
|
||||||
|
(require "engine/debug/debug.gc")
|
||||||
|
|
||||||
;; name: cam-states.gc
|
;; name: cam-states.gc
|
||||||
;; name in dgo: cam-states
|
;; name in dgo: cam-states
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/math/matrix.gc")
|
||||||
|
(require "engine/util/smush-control-h.gc")
|
||||||
|
|
||||||
;; name: cam-update-h.gc
|
;; name: cam-update-h.gc
|
||||||
;; name in dgo: cam-update-h
|
;; name in dgo: cam-update-h
|
||||||
|
|
|
@ -1,5 +1,16 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/gfx/tie/tie-h.gc")
|
||||||
|
(require "engine/level/bsp-h.gc")
|
||||||
|
(require "engine/gfx/math-camera.gc")
|
||||||
|
(require "engine/load/decomp.gc")
|
||||||
|
(require "engine/gfx/shrub/shrubbery-h.gc")
|
||||||
|
(require "engine/physics/dynamics-h.gc")
|
||||||
|
(require "engine/math/vector.gc")
|
||||||
|
(require "engine/gfx/background/wind.gc")
|
||||||
|
(require "engine/math/quaternion.gc")
|
||||||
|
|
||||||
;; name: cam-update.gc
|
;; name: cam-update.gc
|
||||||
;; name in dgo: cam-update
|
;; name in dgo: cam-update
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/math/vector-h.gc")
|
||||||
|
(require "engine/gfx/hw/display-h.gc")
|
||||||
|
|
||||||
;; name: camera-h.gc
|
;; name: camera-h.gc
|
||||||
;; name in dgo: camera-h
|
;; name in dgo: camera-h
|
||||||
|
|
|
@ -1,5 +1,17 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/engine/engines.gc")
|
||||||
|
(require "engine/entity/res.gc")
|
||||||
|
(require "engine/camera/cam-debug-h.gc")
|
||||||
|
(require "engine/geometry/geometry.gc")
|
||||||
|
(require "engine/game/main-h.gc")
|
||||||
|
(require "engine/util/smush-control-h.gc")
|
||||||
|
(require "engine/entity/entity-h.gc")
|
||||||
|
(require "engine/math/vector.gc")
|
||||||
|
(require "kernel/gstate.gc")
|
||||||
|
(require "engine/camera/cam-interface-h.gc")
|
||||||
|
|
||||||
;; name: camera.gc
|
;; name: camera.gc
|
||||||
;; name in dgo: camera
|
;; name in dgo: camera
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/game/game-h.gc")
|
||||||
|
|
||||||
;; name: pov-camera-h.gc
|
;; name: pov-camera-h.gc
|
||||||
;; name in dgo: pov-camera-h
|
;; name in dgo: pov-camera-h
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/camera/pov-camera-h.gc")
|
||||||
|
(require "engine/common-obs/water.gc")
|
||||||
|
|
||||||
;; name: pov-camera.gc
|
;; name: pov-camera.gc
|
||||||
;; name in dgo: pov-camera
|
;; name in dgo: pov-camera
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "kernel-defs.gc")
|
||||||
|
|
||||||
;; name: collide-cache-h.gc
|
;; name: collide-cache-h.gc
|
||||||
;; name in dgo: collide-cache-h
|
;; name in dgo: collide-cache-h
|
||||||
|
|
|
@ -1,5 +1,17 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/gfx/background/subdivide.gc")
|
||||||
|
(require "engine/collide/collide-func.gc")
|
||||||
|
(require "examples/debug-collide.gc")
|
||||||
|
(require "engine/collide/collide-probe.gc")
|
||||||
|
(require "engine/geometry/bounding-box.gc")
|
||||||
|
(require "engine/collide/collide-mesh-h.gc")
|
||||||
|
(require "engine/collide/main-collide.gc")
|
||||||
|
(require "engine/common-obs/water-h.gc")
|
||||||
|
(require "engine/collide/collide-shape-h.gc")
|
||||||
|
(require "engine/debug/debug.gc")
|
||||||
|
|
||||||
;; name: collide-cache.gc
|
;; name: collide-cache.gc
|
||||||
;; name in dgo: collide-cache
|
;; name in dgo: collide-cache
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/math/vector-h.gc")
|
||||||
|
(require "engine/geometry/bounding-box-h.gc")
|
||||||
|
|
||||||
;; name: collide-edge-grab-h.gc
|
;; name: collide-edge-grab-h.gc
|
||||||
;; name in dgo: collide-edge-grab-h
|
;; name in dgo: collide-edge-grab-h
|
||||||
|
|
|
@ -1,5 +1,14 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/collide/surface-h.gc")
|
||||||
|
(require "engine/collide/collide-edge-grab-h.gc")
|
||||||
|
(require "kernel/gstate.gc")
|
||||||
|
(require "engine/collide/collide-cache-h.gc")
|
||||||
|
(require "engine/target/target-h.gc")
|
||||||
|
(require "engine/collide/collide-shape-h.gc")
|
||||||
|
(require "engine/debug/debug.gc")
|
||||||
|
|
||||||
;; name: collide-edge-grab.gc
|
;; name: collide-edge-grab.gc
|
||||||
;; name in dgo: collide-edge-grab
|
;; name in dgo: collide-edge-grab
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/math/vector-h.gc")
|
||||||
|
(require "engine/draw/drawable-tree-h.gc")
|
||||||
|
(require "engine/draw/drawable-inline-array-h.gc")
|
||||||
|
|
||||||
;; name: collide-frag-h.gc
|
;; name: collide-frag-h.gc
|
||||||
;; name in dgo: collide-frag-h
|
;; name in dgo: collide-frag-h
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/level/bsp.gc")
|
||||||
|
(require "engine/collide/collide-frag-h.gc")
|
||||||
|
|
||||||
;; name: collide-frag.gc
|
;; name: collide-frag.gc
|
||||||
;; name in dgo: collide-frag
|
;; name in dgo: collide-frag
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
;; name: collide-func-h.gc
|
;; name: collide-func-h.gc
|
||||||
;; name in dgo: collide-func-h
|
;; name in dgo: collide-func-h
|
||||||
;; dgos: GAME, ENGINE
|
;; dgos: GAME, ENGINE
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/math/vector.gc")
|
||||||
|
(require "kernel/gkernel-h.gc")
|
||||||
|
|
||||||
;; name: collide-func.gc
|
;; name: collide-func.gc
|
||||||
;; name in dgo: collide-func
|
;; name in dgo: collide-func
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
;; name: collide-h.gc
|
;; name: collide-h.gc
|
||||||
;; name in dgo: collide-h
|
;; name in dgo: collide-h
|
||||||
;; dgos: GAME, ENGINE
|
;; dgos: GAME, ENGINE
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "kernel-defs.gc")
|
||||||
|
|
||||||
;; name: collide-mesh-h.gc
|
;; name: collide-mesh-h.gc
|
||||||
;; name in dgo: collide-mesh-h
|
;; name in dgo: collide-mesh-h
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/collide/pat-h.gc")
|
||||||
|
(require "engine/debug/debug.gc")
|
||||||
|
(require "engine/collide/collide-mesh-h.gc")
|
||||||
|
|
||||||
;; name: collide-mesh.gc
|
;; name: collide-mesh.gc
|
||||||
;; name in dgo: collide-mesh
|
;; name in dgo: collide-mesh
|
||||||
|
|
|
@ -1,5 +1,13 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/level/level-h.gc")
|
||||||
|
(require "kernel/gkernel.gc")
|
||||||
|
(require "engine/collide/collide-cache-h.gc")
|
||||||
|
(require "engine/gfx/tie/tie-h.gc")
|
||||||
|
(require "engine/collide/collide-frag-h.gc")
|
||||||
|
(require "engine/draw/draw-node-h.gc")
|
||||||
|
|
||||||
;; name: collide-probe.gc
|
;; name: collide-probe.gc
|
||||||
;; name in dgo: collide-probe
|
;; name in dgo: collide-probe
|
||||||
|
|
|
@ -1,5 +1,13 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/collide/pat-h.gc")
|
||||||
|
(require "engine/math/quaternion.gc")
|
||||||
|
(require "kernel/gkernel-h.gc")
|
||||||
|
(require "engine/math/transformq-h.gc")
|
||||||
|
(require "engine/game/game-h.gc")
|
||||||
|
(require "engine/engine/connect.gc")
|
||||||
|
|
||||||
;; name: collide-shape-h.gc
|
;; name: collide-shape-h.gc
|
||||||
;; name in dgo: collide-shape-h
|
;; name in dgo: collide-shape-h
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/collide/collide-shape.gc")
|
||||||
|
|
||||||
;; name: collide-shape-rider.gc
|
;; name: collide-shape-rider.gc
|
||||||
;; name in dgo: collide-shape-rider
|
;; name in dgo: collide-shape-rider
|
||||||
|
|
|
@ -1,5 +1,17 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/camera/camera-h.gc")
|
||||||
|
(require "engine/geometry/cylinder.gc")
|
||||||
|
(require "engine/collide/collide-target-h.gc")
|
||||||
|
(require "engine/math/transformq.gc")
|
||||||
|
(require "engine/collide/collide-probe.gc")
|
||||||
|
(require "engine/collide/collide-mesh.gc")
|
||||||
|
(require "engine/collide/collide-edge-grab.gc")
|
||||||
|
(require "engine/gfx/sprite/sparticle/sparticle-launcher.gc")
|
||||||
|
(require "engine/gfx/background/subdivide-h.gc")
|
||||||
|
(require "engine/collide/collide-touch.gc")
|
||||||
|
|
||||||
;; name: collide-shape.gc
|
;; name: collide-shape.gc
|
||||||
;; name in dgo: collide-shape
|
;; name in dgo: collide-shape
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/collide/collide-shape-h.gc")
|
||||||
|
|
||||||
;; name: collide-target-h.gc
|
;; name: collide-target-h.gc
|
||||||
;; name in dgo: collide-target-h
|
;; name in dgo: collide-target-h
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "kernel-defs.gc")
|
||||||
|
|
||||||
;; name: collide-touch-h.gc
|
;; name: collide-touch-h.gc
|
||||||
;; name in dgo: collide-touch-h
|
;; name in dgo: collide-touch-h
|
||||||
|
|
|
@ -1,5 +1,12 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/collide/collide-touch-h.gc")
|
||||||
|
(require "kernel/gstate.gc")
|
||||||
|
(require "engine/target/target-h.gc")
|
||||||
|
(require "engine/collide/collide-shape-h.gc")
|
||||||
|
(require "engine/collide/collide-mesh-h.gc")
|
||||||
|
|
||||||
;; name: collide-touch.gc
|
;; name: collide-touch.gc
|
||||||
;; name in dgo: collide-touch
|
;; name in dgo: collide-touch
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "kernel-defs.gc")
|
||||||
|
|
||||||
;; name: collide.gc
|
;; name: collide.gc
|
||||||
;; name in dgo: collide
|
;; name in dgo: collide
|
||||||
|
|
|
@ -1,5 +1,12 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/math/vector-h.gc")
|
||||||
|
(require "engine/gfx/tie/tie-h.gc")
|
||||||
|
(require "engine/ps2/vu1-macros.gc")
|
||||||
|
(require "engine/geometry/bounding-box-h.gc")
|
||||||
|
(require "engine/math/math.gc")
|
||||||
|
|
||||||
;; name: main-collide.gc
|
;; name: main-collide.gc
|
||||||
;; name in dgo: main-collide
|
;; name in dgo: main-collide
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/math/math.gc")
|
||||||
|
|
||||||
;; name: pat-h.gc
|
;; name: pat-h.gc
|
||||||
;; name in dgo: pat-h
|
;; name in dgo: pat-h
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "kernel/gcommon.gc")
|
||||||
|
|
||||||
;; name: surface-h.gc
|
;; name: surface-h.gc
|
||||||
;; name in dgo: surface-h
|
;; name in dgo: surface-h
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/nav-enemy.gc")
|
||||||
|
|
||||||
;; name: babak.gc
|
;; name: babak.gc
|
||||||
;; name in dgo: babak
|
;; name in dgo: babak
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/generic-obs.gc")
|
||||||
|
(require "engine/target/logic-target.gc")
|
||||||
|
|
||||||
;; name: basebutton.gc
|
;; name: basebutton.gc
|
||||||
;; name in dgo: basebutton
|
;; name in dgo: basebutton
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/generic-obs.gc")
|
||||||
|
(require "engine/game/projectiles.gc")
|
||||||
|
|
||||||
;; name: baseplat.gc
|
;; name: baseplat.gc
|
||||||
;; name in dgo: baseplat
|
;; name in dgo: baseplat
|
||||||
|
|
|
@ -1,5 +1,14 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/generic-obs-h.gc")
|
||||||
|
(require "engine/gfx/sprite/sparticle/sparticle-h.gc")
|
||||||
|
(require "engine/anim/joint-h.gc")
|
||||||
|
(require "engine/gfx/texture/texture-h.gc")
|
||||||
|
(require "engine/math/vector.gc")
|
||||||
|
(require "engine/collide/collide-shape-h.gc")
|
||||||
|
(require "engine/gfx/sprite/sparticle/sparticle-launcher-h.gc")
|
||||||
|
|
||||||
;; name: collectables-part.gc
|
;; name: collectables-part.gc
|
||||||
;; name in dgo: collectables-part
|
;; name in dgo: collectables-part
|
||||||
|
|
|
@ -1,5 +1,13 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/generic-obs.gc")
|
||||||
|
(require "engine/physics/trajectory.gc")
|
||||||
|
(require "engine/collide/collide-cache.gc")
|
||||||
|
(require "pc/pckernel.gc")
|
||||||
|
(require "engine/common-obs/collectables-part.gc")
|
||||||
|
(require "engine/entity/entity.gc")
|
||||||
|
|
||||||
;; name: collectables.gc
|
;; name: collectables.gc
|
||||||
;; name in dgo: collectables
|
;; name in dgo: collectables
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/collectables.gc")
|
||||||
|
|
||||||
;; name: crates.gc
|
;; name: crates.gc
|
||||||
;; name in dgo: crates
|
;; name in dgo: crates
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/water-anim.gc")
|
||||||
|
|
||||||
;; name: dark-eco-pool.gc
|
;; name: dark-eco-pool.gc
|
||||||
;; name in dgo: dark-eco-pool
|
;; name in dgo: dark-eco-pool
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/game/game-h.gc")
|
||||||
|
|
||||||
;; name: generic-obs-h.gc
|
;; name: generic-obs-h.gc
|
||||||
;; name in dgo: generic-obs-h
|
;; name in dgo: generic-obs-h
|
||||||
|
|
|
@ -1,5 +1,12 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/process-drawable.gc")
|
||||||
|
(require "engine/nav/navigate-h.gc")
|
||||||
|
(require "pc/util/pc-anim-util.gc")
|
||||||
|
(require "engine/level/level.gc")
|
||||||
|
(require "engine/camera/camera.gc")
|
||||||
|
|
||||||
;; name: generic-obs.gc
|
;; name: generic-obs.gc
|
||||||
;; name in dgo: generic-obs
|
;; name in dgo: generic-obs
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/game/game-h.gc")
|
||||||
|
|
||||||
;; name: nav-enemy-h.gc
|
;; name: nav-enemy-h.gc
|
||||||
;; name in dgo: nav-enemy-h
|
;; name in dgo: nav-enemy-h
|
||||||
|
|
|
@ -1,5 +1,12 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/nav/navigate.gc")
|
||||||
|
(require "engine/common-obs/process-taskable.gc")
|
||||||
|
(require "engine/anim/aligner.gc")
|
||||||
|
(require "engine/geometry/path.gc")
|
||||||
|
(require "engine/common-obs/nav-enemy-h.gc")
|
||||||
|
|
||||||
;; name: nav-enemy.gc
|
;; name: nav-enemy.gc
|
||||||
;; name in dgo: nav-enemy
|
;; name in dgo: nav-enemy
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/collectables.gc")
|
||||||
|
(require "engine/common-obs/baseplat.gc")
|
||||||
|
|
||||||
;; name: orb-cache.gc
|
;; name: orb-cache.gc
|
||||||
;; name in dgo: orb-cache
|
;; name in dgo: orb-cache
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/generic-obs.gc")
|
||||||
|
(require "engine/geometry/path.gc")
|
||||||
|
|
||||||
;; name: plat-button.gc
|
;; name: plat-button.gc
|
||||||
;; name in dgo: plat-button
|
;; name in dgo: plat-button
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/plat.gc")
|
||||||
|
(require "engine/common-obs/baseplat.gc")
|
||||||
|
|
||||||
;; name: plat-eco.gc
|
;; name: plat-eco.gc
|
||||||
;; name in dgo: plat-eco
|
;; name in dgo: plat-eco
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/generic-obs.gc")
|
||||||
|
(require "engine/geometry/path.gc")
|
||||||
|
(require "engine/util/sync-info.gc")
|
||||||
|
|
||||||
;; name: plat.gc
|
;; name: plat.gc
|
||||||
;; name in dgo: plat
|
;; name in dgo: plat
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/gfx/hw/display-h.gc")
|
||||||
|
(require "engine/anim/joint-h.gc")
|
||||||
|
(require "engine/game/game-h.gc")
|
||||||
|
|
||||||
;; name: process-drawable-h.gc
|
;; name: process-drawable-h.gc
|
||||||
;; name in dgo: process-drawable-h
|
;; name in dgo: process-drawable-h
|
||||||
|
|
|
@ -1,5 +1,14 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/engine/engines.gc")
|
||||||
|
(require "engine/gfx/merc/merc-blend-shape.gc")
|
||||||
|
(require "engine/game/game-info.gc")
|
||||||
|
(require "engine/gfx/foreground/eye-h.gc")
|
||||||
|
(require "engine/gfx/shadow/shadow-cpu-h.gc")
|
||||||
|
(require "engine/collide/collide-shape-rider.gc")
|
||||||
|
(require "engine/load/loader.gc")
|
||||||
|
|
||||||
;; name: process-drawable.gc
|
;; name: process-drawable.gc
|
||||||
;; name in dgo: process-drawable
|
;; name in dgo: process-drawable
|
||||||
|
|
|
@ -1,5 +1,12 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/geometry/path-h.gc")
|
||||||
|
(require "engine/anim/joint-mod-h.gc")
|
||||||
|
(require "engine/game/task/task-control.gc")
|
||||||
|
(require "engine/common-obs/collectables.gc")
|
||||||
|
(require "engine/game/main.gc")
|
||||||
|
|
||||||
;; name: process-taskable.gc
|
;; name: process-taskable.gc
|
||||||
;; name in dgo: process-taskable
|
;; name in dgo: process-taskable
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "kernel-defs.gc")
|
||||||
|
|
||||||
;; name: rigid-body-h.gc
|
;; name: rigid-body-h.gc
|
||||||
;; name in dgo: rigid-body-h
|
;; name in dgo: rigid-body-h
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/generic-obs.gc")
|
||||||
|
(require "engine/common-obs/water-anim.gc")
|
||||||
|
(require "engine/common-obs/rigid-body-h.gc")
|
||||||
|
|
||||||
;; name: rigid-body.gc
|
;; name: rigid-body.gc
|
||||||
;; name in dgo: rigid-body
|
;; name in dgo: rigid-body
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/generic-obs.gc")
|
||||||
|
|
||||||
;; name: ropebridge.gc
|
;; name: ropebridge.gc
|
||||||
;; name in dgo: ropebridge
|
;; name in dgo: ropebridge
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/nav-enemy.gc")
|
||||||
|
(require "engine/common-obs/water.gc")
|
||||||
|
|
||||||
;; name: sharkey.gc
|
;; name: sharkey.gc
|
||||||
;; name in dgo: sharkey
|
;; name in dgo: sharkey
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/sound/gsound.gc")
|
||||||
|
|
||||||
;; name: ticky.gc
|
;; name: ticky.gc
|
||||||
;; name in dgo: ticky
|
;; name in dgo: ticky
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/math/quaternion.gc")
|
||||||
|
(require "engine/game/game-h.gc")
|
||||||
|
|
||||||
;; name: tippy.gc
|
;; name: tippy.gc
|
||||||
;; name in dgo: tippy
|
;; name in dgo: tippy
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/camera/camera.gc")
|
||||||
|
(require "engine/common-obs/process-drawable.gc")
|
||||||
|
(require "engine/game/settings.gc")
|
||||||
|
|
||||||
;; name: voicebox.gc
|
;; name: voicebox.gc
|
||||||
;; name in dgo: voicebox
|
;; name in dgo: voicebox
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/process-drawable.gc")
|
||||||
|
(require "engine/gfx/foreground/ripple.gc")
|
||||||
|
(require "engine/common-obs/water-h.gc")
|
||||||
|
|
||||||
;; name: water-anim.gc
|
;; name: water-anim.gc
|
||||||
;; name in dgo: water-anim
|
;; name in dgo: water-anim
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/game/main-h.gc")
|
||||||
|
(require "engine/game/game-h.gc")
|
||||||
|
(require "kernel/gkernel-h.gc")
|
||||||
|
|
||||||
;; name: water-h.gc
|
;; name: water-h.gc
|
||||||
;; name in dgo: water-h
|
;; name in dgo: water-h
|
||||||
|
|
|
@ -1,5 +1,12 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/game/effect-control.gc")
|
||||||
|
(require "engine/common-obs/generic-obs.gc")
|
||||||
|
(require "engine/gfx/foreground/ripple.gc")
|
||||||
|
(require "engine/common-obs/water-h.gc")
|
||||||
|
(require "engine/geometry/vol.gc")
|
||||||
|
|
||||||
;; name: water.gc
|
;; name: water.gc
|
||||||
;; name in dgo: water
|
;; name in dgo: water
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "kernel/gcommon.gc")
|
||||||
|
|
||||||
;; name: art-h.gc
|
;; name: art-h.gc
|
||||||
;; name in dgo: art-h
|
;; name in dgo: art-h
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/util/glist-h.gc")
|
||||||
|
(require "engine/anim/aligner.gc")
|
||||||
|
|
||||||
;; name: anim-tester.gc
|
;; name: anim-tester.gc
|
||||||
;; name in dgo: anim-tester
|
;; name in dgo: anim-tester
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "kernel/gcommon.gc")
|
||||||
|
|
||||||
;; name: assert-h.gc
|
;; name: assert-h.gc
|
||||||
;; name in dgo: assert-h
|
;; name in dgo: assert-h
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/debug/assert-h.gc")
|
||||||
|
|
||||||
;; name: assert.gc
|
;; name: assert.gc
|
||||||
;; name in dgo: assert
|
;; name in dgo: assert
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "kernel-defs.gc")
|
||||||
|
|
||||||
;; name: debug-h.gc
|
;; name: debug-h.gc
|
||||||
;; name in dgo: debug-h
|
;; name in dgo: debug-h
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/math/vector-h.gc")
|
||||||
|
(require "engine/debug/debug-h.gc")
|
||||||
|
(require "engine/math/math.gc")
|
||||||
|
|
||||||
;; name: debug-sphere.gc
|
;; name: debug-sphere.gc
|
||||||
;; name in dgo: debug-sphere
|
;; name in dgo: debug-sphere
|
||||||
|
|
|
@ -1,5 +1,15 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/gfx/hw/display.gc")
|
||||||
|
(require "engine/draw/drawable-group-h.gc")
|
||||||
|
(require "engine/gfx/math-camera.gc")
|
||||||
|
(require "engine/debug/debug-sphere.gc")
|
||||||
|
(require "engine/camera/cam-debug-h.gc")
|
||||||
|
(require "engine/geometry/geometry.gc")
|
||||||
|
(require "engine/gfx/lights-h.gc")
|
||||||
|
(require "engine/math/vector.gc")
|
||||||
|
|
||||||
;; name: debug.gc
|
;; name: debug.gc
|
||||||
;; name in dgo: debug
|
;; name in dgo: debug
|
||||||
|
|
|
@ -1,5 +1,14 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/camera/cam-update.gc")
|
||||||
|
(require "engine/game/task/task-control.gc")
|
||||||
|
(require "engine/draw/drawable.gc")
|
||||||
|
(require "engine/math/euler.gc")
|
||||||
|
(require "engine/entity/entity.gc")
|
||||||
|
(require "engine/debug/memory-usage.gc")
|
||||||
|
(require "engine/debug/menu.gc")
|
||||||
|
|
||||||
;; name: default-menu.gc
|
;; name: default-menu.gc
|
||||||
;; name in dgo: default-menu
|
;; name in dgo: default-menu
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "kernel-defs.gc")
|
||||||
|
|
||||||
;; name: memory-usage-h.gc
|
;; name: memory-usage-h.gc
|
||||||
;; name in dgo: memory-usage-h
|
;; name in dgo: memory-usage-h
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/level/level.gc")
|
||||||
|
|
||||||
;; name: memory-usage.gc
|
;; name: memory-usage.gc
|
||||||
;; name in dgo: memory-usage
|
;; name in dgo: memory-usage
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/gfx/hw/display.gc")
|
||||||
|
(require "engine/gfx/font.gc")
|
||||||
|
|
||||||
;; name: menu.gc
|
;; name: menu.gc
|
||||||
;; name in dgo: menu
|
;; name in dgo: menu
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/gfx/sprite/sparticle/sparticle-launcher.gc")
|
||||||
|
(require "engine/debug/debug.gc")
|
||||||
|
|
||||||
;; name: part-tester.gc
|
;; name: part-tester.gc
|
||||||
;; name in dgo: part-tester
|
;; name in dgo: part-tester
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "kernel/gcommon.gc")
|
||||||
|
|
||||||
;; name: stats-h.gc
|
;; name: stats-h.gc
|
||||||
;; name in dgo: stats-h
|
;; name in dgo: stats-h
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/common-obs/generic-obs.gc")
|
||||||
|
(require "engine/anim/aligner.gc")
|
||||||
|
(require "engine/entity/entity.gc")
|
||||||
|
|
||||||
;; name: viewer.gc
|
;; name: viewer.gc
|
||||||
;; name in dgo: viewer
|
;; name in dgo: viewer
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/dma/dma-buffer.gc")
|
||||||
|
|
||||||
;; name: dma-bucket.gc
|
;; name: dma-bucket.gc
|
||||||
;; name in dgo: dma-bucket
|
;; name in dgo: dma-bucket
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/dma/dma.gc")
|
||||||
|
|
||||||
;; name: dma-buffer.gc
|
;; name: dma-buffer.gc
|
||||||
;; name in dgo: dma-buffer
|
;; name in dgo: dma-buffer
|
||||||
|
@ -268,65 +271,6 @@
|
||||||
(dma-send-chain chan (the-as uint (-> buf data)))
|
(dma-send-chain chan (the-as uint (-> buf data)))
|
||||||
)
|
)
|
||||||
|
|
||||||
(defmacro dma-buffer-add-gs-set-flusha (buf &rest reg-list)
|
|
||||||
"Add a gif cnt dma packet to a dma-buffer for setting GS registers. Up to 16 can be set at once.
|
|
||||||
The packet runs the flusha command which waits for GIF transfer to end and VU1 microprogram to stop.
|
|
||||||
reg-list is a list of pairs where the car is the register name and the cadr is the value to be set for that register."
|
|
||||||
|
|
||||||
(let ((reg-count (length reg-list))
|
|
||||||
(qwc (+ (length reg-list) 1))
|
|
||||||
(reg-names (apply first reg-list))
|
|
||||||
(reg-datas (apply second reg-list))
|
|
||||||
)
|
|
||||||
`(begin
|
|
||||||
;; dma tag
|
|
||||||
(dma-buffer-add-cnt-vif2 ,buf ,qwc
|
|
||||||
(new 'static 'vif-tag :cmd (vif-cmd flusha))
|
|
||||||
(new 'static 'vif-tag :cmd (vif-cmd direct) :imm ,qwc)
|
|
||||||
)
|
|
||||||
|
|
||||||
;; gif tag for editing gs regs
|
|
||||||
(dma-buffer-add-gif-tag ,buf (new 'static 'gif-tag64 :nloop 1 :eop 1 :nreg ,reg-count)
|
|
||||||
(gs-reg-list a+d a+d a+d a+d a+d a+d a+d a+d a+d a+d a+d a+d a+d a+d a+d a+d)
|
|
||||||
)
|
|
||||||
|
|
||||||
;; gs regs
|
|
||||||
(dma-buffer-add-uint64 ,buf
|
|
||||||
,@(apply2 (lambda (x) x) (lambda (x) `(gs-reg64 ,x)) reg-datas reg-names)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
||||||
(defmacro dma-buffer-add-gs-set (buf &rest reg-list)
|
|
||||||
"Add a gif cnt dma packet to a dma-buffer for setting GS registers. Up to 16 can be set at once.
|
|
||||||
reg-list is a list of pairs where the car is the register name and the cadr is the value to be set for that register."
|
|
||||||
|
|
||||||
(let ((reg-count (length reg-list))
|
|
||||||
(qwc (+ (length reg-list) 1))
|
|
||||||
(reg-names (apply first reg-list))
|
|
||||||
(reg-datas (apply second reg-list))
|
|
||||||
)
|
|
||||||
`(begin
|
|
||||||
;; dma tag
|
|
||||||
(dma-buffer-add-cnt-vif2 ,buf ,qwc
|
|
||||||
(new 'static 'vif-tag :cmd (vif-cmd nop))
|
|
||||||
(new 'static 'vif-tag :cmd (vif-cmd direct) :imm ,qwc)
|
|
||||||
)
|
|
||||||
|
|
||||||
;; gif tag for editing gs regs
|
|
||||||
(dma-buffer-add-gif-tag ,buf (new 'static 'gif-tag64 :nloop 1 :eop 1 :nreg ,reg-count)
|
|
||||||
(gs-reg-list a+d a+d a+d a+d a+d a+d a+d a+d a+d a+d a+d a+d a+d a+d a+d a+d)
|
|
||||||
)
|
|
||||||
|
|
||||||
;; gs regs
|
|
||||||
(dma-buffer-add-uint64 ,buf
|
|
||||||
,@(apply2 (lambda (x) x) (lambda (x) `(gs-reg64 ,x)) reg-datas reg-names)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
||||||
(defmacro with-cnt-vif-block (bindings &rest body)
|
(defmacro with-cnt-vif-block (bindings &rest body)
|
||||||
"Start a cnt w/ vif direct to gif dma packet setup for the dma-buffer in bindings.
|
"Start a cnt w/ vif direct to gif dma packet setup for the dma-buffer in bindings.
|
||||||
With this, you can transfer data through PATH2 without having to setup the tag yourself.
|
With this, you can transfer data through PATH2 without having to setup the tag yourself.
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/dma/dma-buffer.gc")
|
||||||
|
|
||||||
;; name: dma-disasm.gc
|
;; name: dma-disasm.gc
|
||||||
;; name in dgo: dma-disasm
|
;; name in dgo: dma-disasm
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "kernel/gcommon.gc")
|
||||||
|
|
||||||
;; name: dma-h.gc
|
;; name: dma-h.gc
|
||||||
;; name in dgo: dma-h
|
;; name in dgo: dma-h
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
;;-*-Lisp-*-
|
;;-*-Lisp-*-
|
||||||
(in-package goal)
|
(in-package goal)
|
||||||
|
(bundles "ENGINE.CGO" "GAME.CGO")
|
||||||
|
|
||||||
|
(require "engine/dma/dma-h.gc")
|
||||||
|
(require "engine/ps2/vif-h.gc")
|
||||||
|
|
||||||
;; name: dma.gc
|
;; name: dma.gc
|
||||||
;; name in dgo: dma
|
;; name in dgo: dma
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue