Skip to content

Add fad (Files And Directories) submodule#101

Merged
mdbergmann merged 3 commits into
masterfrom
fad-submodule
Feb 24, 2026
Merged

Add fad (Files And Directories) submodule#101
mdbergmann merged 3 commits into
masterfrom
fad-submodule

Conversation

@mdbergmann
Copy link
Copy Markdown
Owner

Wraps common AmigaDOS file system operations into simple SUB calls:

  • Existence/type checks (FadExists%, FadIsFile%, FadIsDir%)
  • File info without opening (FadSize&, FadProtect&, FadComment$, FadDate%)
  • Path manipulation (FadBaseName$, FadDirName$, FadExt$, FadJoin$, etc.)
  • Directory iteration (FadOpenDir%, FadNext%, FadCloseDir)
  • File operations (FadCopy&, FadMkDir&, FadMkDirP&, FadDeleteTree&)

No init/cleanup needed — uses auto-opened dos.library only.

mdbergmann and others added 3 commits February 23, 2026 19:24
Wraps common AmigaDOS file system operations into simple SUB calls:
- Existence/type checks (FadExists%, FadIsFile%, FadIsDir%)
- File info without opening (FadSize&, FadProtect&, FadComment$, FadDate%)
- Path manipulation (FadBaseName$, FadDirName$, FadExt$, FadJoin$, etc.)
- Directory iteration (FadOpenDir%, FadNext%, FadCloseDir)
- File operations (FadCopy&, FadMkDir&, FadMkDirP&, FadDeleteTree&)

No init/cleanup needed — uses auto-opened dos.library only.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
…DeleteTree&

- Rename reserved words in DECLARE FUNCTION params (name->nm, size->sz, len->bufLen)
- Replace SHELL with SYSTEM (SHELL is not an ACE BASIC command)
- Rewrite FadJoin$ with pure string manipulation (ALLOC/CSTR/FREE returned garbage)
- Simplify FadDeleteTree& to use SYSTEM "delete ALL" (recursive ExNext broke after re-lock)

All 5 tests pass: 59/59 assertions OK.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
@mdbergmann mdbergmann merged commit d308f12 into master Feb 24, 2026
@mdbergmann mdbergmann deleted the fad-submodule branch February 24, 2026 15:22
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

Successfully merging this pull request may close these issues.

1 participant