a2d/desk.acc
2017-09-29 22:51:11 -04:00
..
docs Add docs explaining HR to DHR conversion process 2017-09-08 15:54:14 -07:00
fonts DeskTop: Icon disassembly WIP 2017-09-27 19:41:40 -07:00
inc Show Image File additions/fixes 2017-09-18 19:50:16 -07:00
infos Initial disassembly snapshot for Date and Puzzle 2017-09-10 20:18:29 -07:00
orig Initial disassembly snapshot for Date and Puzzle 2017-09-10 20:18:29 -07:00
res DeskTop: Icon disassembly WIP 2017-09-27 19:41:40 -07:00
.gitignore Clean up directories, start work mapping DESKTOP2 2017-09-16 17:11:50 -07:00
a2d.inc DeskTop: Seg 1 strings 2017-09-29 22:51:11 -04:00
a2d.md Docs: Factor out drags 2017-09-24 16:26:15 -07:00
calc_fixed.s Identify 'moved' output byte from DRAG 2017-09-24 21:02:13 -07:00
calculator.s Identify 'moved' output byte from DRAG 2017-09-24 21:02:13 -07:00
date.s Identify 'next' member of window params 2017-09-24 19:59:49 -07:00
Makefile Add modified calc with bugs #33, #34 fixed 2017-09-20 19:54:19 -07:00
puzzle.s Identify 'moved' output byte from DRAG 2017-09-24 21:02:13 -07:00
README.md Clean up directories, start work mapping DESKTOP2 2017-09-16 17:11:50 -07:00
show_image_file.s Identify 'next' member of window params 2017-09-24 19:59:49 -07:00
show_text_file.s Identify 'next' member of window params 2017-09-24 19:59:49 -07:00

Disassembly of the desk accessories:

  • Show Text File - in progress! 95% complete
  • Calculator - in progress! 99% complete
  • Date - in progress! 99% complete
  • Puzzle - in progress! 99% complete
  • Sort Directory - not started

New desk accessories:

Desk Accessory Details

  • Loaded at $800 through (at least) $14FF
  • Copy themselves from Main into Aux memory (same location)
  • Can call into ProDOS MLI and A2D entry points ($4000, etc)

Files

  • Makefile - cleans/builds targets
  • orig/*.bin - original binary (type $F1, start $800)
  • infos/*.info - da65 "info" file - used to inform disassembly
  • *.s - source (originally generated using da65, now modified)

Build Instructions

On Unix-like systems (including Mac OS X) make all should build build the desk accessory files (original and new) and output files with a .F1 suffix, representing the $F1 file type required.

For the original DAs, the .F1 and .bin files can be compared using diff to ensure that no changes have been introduced by the disassembly process.

Tips:

  • While I'm disassembling (i.e. guessing what entry points do and what parameters are, converting .word to .byte, etc) I leave this running in another window:

    while true; do clear; res/go.sh; sleep 1; done

Install Instructions

Transfer the .F1 files to your Apple (real or virtual) ensuring you:

  • Drop the suffix
  • Replace . in the name with spaces
  • Ensure they have ProDOS file type $F1
  • Ensure they have start address $800

The last two are tricky, and depend on how you're copying the files. My process is to use Virtual ][ on my Mac and mount a folder as a ProDOS drive; I copy one of the original DAs into the folder which gives it the $F1 filetype as a suffix and start address as an invisible resource stream. I then unmount the folder, overwrite the DA with a newly built one, and remount the folder.

Finally:

  • Drop the files into your A2.DESKTOP\DESK.ACC folder
  • Restart so A2D picks up the new DA

Tips:

  • You can use the Sort Directory DA to order the files, which controls the menu order:
    • Open the A2.DESKTOP\DESK.ACC folder
    • Press Open-Apple and click on the each file in the desired order
    • Select Sort Directory from the Apple menu, and verify the order
    • Restart