mirror of
https://github.com/a2-4am/4live.git
synced 2024-06-16 14:29:46 +00:00
Compare commits
50 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
0528bef255 | ||
|
058ad84ca0 | ||
|
ed27b90a7f | ||
|
093776ae8a | ||
|
c3238a4002 | ||
|
1b8e0e3083 | ||
|
e479eac6af | ||
|
30af162c18 | ||
|
f7f330b6e3 | ||
|
d93528716b | ||
|
1a16365dc5 | ||
|
652f6e5b21 | ||
|
c12611251a | ||
|
43bfa0a80d | ||
|
d100bf17b3 | ||
|
0666fd5af0 | ||
|
b22f6a5dc8 | ||
|
de691da719 | ||
|
4e5f2c0cf3 | ||
|
e0a89cf88e | ||
|
ff6e099b31 | ||
|
be7c7e431a | ||
|
7239f37a2c | ||
|
1c1541a1a7 | ||
|
bf6d9450ed | ||
|
a092630ed0 | ||
|
63e8b7a8f5 | ||
|
dc19f8f8ec | ||
|
1606caf407 | ||
|
5e33176d29 | ||
|
3782dc9a1c | ||
|
829b9ae9f5 | ||
|
282d890abd | ||
|
e8002eb5f8 | ||
|
e4477f8499 | ||
|
541e284e20 | ||
|
204f20ec40 | ||
|
641c243d6a | ||
|
e2c3423df1 | ||
|
1986f5ce04 | ||
|
ba3580516c | ||
|
715fca1992 | ||
|
fdb73d566e | ||
|
259726d507 | ||
|
90833f5a69 | ||
|
1f0514a2cb | ||
|
3b3672e249 | ||
|
021e6e6ada | ||
|
b55382049e | ||
|
89bb91a19c |
8
Makefile
8
Makefile
|
@ -22,6 +22,7 @@ SRC=src
|
|||
# project files
|
||||
BLANKDISK=$(RES)/work.dsk
|
||||
BUILDDISK=$(BUILD)/$(PGM).dsk
|
||||
TEMPDISK=$(BUILD)/temp.dsk
|
||||
|
||||
# third-party tools required to build
|
||||
# https://sourceforge.net/projects/acme-crossass/
|
||||
|
@ -37,7 +38,10 @@ clean:
|
|||
|
||||
$(PGM):
|
||||
mkdir -p $(BUILD)
|
||||
$(ACME) -o $(BUILD)/$(PGM) $(SRC)/$(PGM).a
|
||||
cd $(SRC) && $(ACME) -o ../$(BUILD)/$(PGM) $(PGM).a && cd -
|
||||
cp $(BLANKDISK) $(BUILDDISK)
|
||||
java -jar $(AC) -p $(BUILDDISK) $(A2PGM) B 0x8000 < $(BUILD)/$(PGM)
|
||||
java -jar $(AC) -cc65 $(BUILDDISK) $(A2PGM) B < $(BUILD)/$(PGM)
|
||||
rsync -a $(BUILDDISK) $(TEMPDISK)
|
||||
(xxd -p -c256 $(TEMPDISK)| head -49; xxd -p -c256 $(BUILD)/$(PGM) | head -1; xxd -p -c256 $(TEMPDISK)| tail -510) | xxd -r -p > $(BUILDDISK)
|
||||
rm -f $(TEMPDISK)
|
||||
osascript $(BIN)/V2Make.scpt "`pwd`" $(BUILDDISK)
|
||||
|
|
40
README.md
40
README.md
|
@ -1,34 +1,48 @@
|
|||
# 4live
|
||||
# 4LIVE
|
||||
|
||||
4live is a scratchpad for keeping notes while you're working on your Apple II under DOS 3.3 or a compatible third-party DOS. The current version allows you to keep a 40x23 screen of freeform text, accessible at any time that DOS is in memory by hitting a global hotkey.
|
||||
4LIVE is a scratchpad for keeping notes while you're working on your Apple II under DOS 3.3. The current version ("revision 03") allows you to keep up to 99 separate screens of freeform text, accessible at any time that DOS is in memory.
|
||||
|
||||
## System requirements
|
||||
|
||||
* Apple II+ or later
|
||||
* 64K memory
|
||||
* DOS 3.3 or compatible third-party DOS (tested with Pronto-DOS, Diversi-DOS, and Diversi-DOS 64K)
|
||||
|
||||
### Memory usage
|
||||
|
||||
When you first run 4LIVE, it will load only a small code stub in low memory, at $0232. This stub will load the rest of 4LIVE directly into LC RAM bank 1. Thereafter, 4LIVE uses $0309-$03CF in main memory and $D000-$DFFF in LC RAM bank 1. 4LIVE never uses LC RAM bank 2, auxiliary memory, or any other region in main memory.
|
||||
|
||||
## For users
|
||||
|
||||
Install 4live by typing `BRUN _4LIVE` from the BASIC prompt, or by executing it in your `HELLO` program.
|
||||
Install 4LIVE by typing `BRUN _4LIVE` from the BASIC prompt, or by executing it in your `HELLO` program.
|
||||
|
||||
```10 PRINT CHR$(4);"BRUN _4LIVE"```
|
||||
|
||||
Now you can press `<Ctrl-@>` at any time to enter the 4live editor. This works from the BASIC prompt or the monitor -- even in the middle of typing a command -- as long as DOS is in memory and connected. (If you can do a `CATALOG`, DOS is connected.)
|
||||
Now you can press `<Ctrl+@>` at any time to enter the 4LIVE editor. This works from the BASIC prompt or the monitor -- even in the middle of typing a command -- as long as DOS is in memory and connected. (If you can do a `CATALOG`, DOS is connected.)
|
||||
|
||||
Keyboard commands within the 4live editor:
|
||||
Keyboard commands within the 4LIVE editor:
|
||||
|
||||
* `<Ctrl-@>` or `<Esc>` exits the 4live editor.
|
||||
* Arrows move freely up, down, left, and right. On an Apple II Plus, you can use `<Ctrl-K>` and `<Ctrl-J>` in place of up and down arrows.
|
||||
* `<Ctrl+@>` or `<Esc>` exits the 4LIVE editor.
|
||||
* Arrows move freely up, down, left, and right. On an Apple II+, you can use `<Ctrl+K>` and `<Ctrl+J>` in place of up and down arrows.
|
||||
* `<Return>` moves the cursor to the beginning of the next line. It does not erase any text on the current line. It will wrap around from the bottom of the screen to the top.
|
||||
* `<Ctrl-N>` clears the editor screen and erases all your data.
|
||||
* `<Ctrl-I>` imports the "real" text screen you were looking at before you entered the editor (like taking a text screenshot). This overwrites the entire scratchpad and erases all your data.
|
||||
* `<Ctrl+B>` toggles highlighting of the current line.
|
||||
* `<Ctrl+T>` creates a new 4LIVE screen and switches to it.
|
||||
* `<Ctrl+R>` switches to the previous 4LIVE screen.
|
||||
* `<Ctrl+Y>` switches to the next 4LIVE screen.
|
||||
* `<Ctrl+C>` clears the current 4LIVE screen.
|
||||
* `<Ctrl+^>` imports the "real" text screen you were looking at before you entered the 4LIVE editor (like taking a text screenshot).
|
||||
|
||||
4live will automatically save the contents of your scratchpad on exit. (Currently it saves to the file `_4LIVE DATA`. You will see this file in the disk catalog.)
|
||||
4LIVE will automatically save the contents of your screen whenever you switch screens or exit the 4LIVE editor. It saves everything to the file `_4LIVE DATA`. You will see this file in the disk catalog.
|
||||
|
||||
# 4live for developers
|
||||
## For developers
|
||||
|
||||
4live is written in 100% 6502 assembly language, but it is developed on modern PCs (not in a "classic" IDE like Merlin-8). The source code is stored and managed in text files. These text files are assembled to executable code with [ACME](https://sourceforge.net/projects/acme-crossass/), then transferred to a disk image (`.dsk` file) with [AppleCommander](http://applecommander.sourceforge.net/). You can mount this disk image in any Apple II emulator.
|
||||
4LIVE is written in 100% 6502 assembly language, but it is developed on modern PCs (not in a "classic" IDE like Merlin-8). The source code is stored and managed in text files. These text files are assembled to executable code with [ACME](https://sourceforge.net/projects/acme-crossass/), then transferred to a disk image (`.dsk` file) with [AppleCommander](http://applecommander.sourceforge.net/). You can mount this disk image in any Apple II emulator.
|
||||
|
||||
If you are on Mac OS X and have the [Virtual II](http://virtualii.com/) emulator, you can use the included Applescript to mount the `.dsk` file and reboot the emulator automatically. The included `Makefile` does this by default (after running ACME and AppleCommander).
|
||||
|
||||
Thus, during development, my testing cycle goes like this:
|
||||
|
||||
1. Edit `.a` source code file in modern editor
|
||||
1. Edit `.a` source code file in any modern text editor
|
||||
2. Run `make`
|
||||
3. Test in Virtual II
|
||||
4. GOTO 1
|
||||
|
|
BIN
bin/V2Make.scpt
BIN
bin/V2Make.scpt
Binary file not shown.
1934
src/4live.a
1934
src/4live.a
File diff suppressed because it is too large
Load Diff
4
src/lcase.a
Normal file
4
src/lcase.a
Normal file
|
@ -0,0 +1,4 @@
|
|||
!to "lcase.ct", plain
|
||||
*=0
|
||||
!for i, 128 {!byte i+127}
|
||||
!for i, 256-128 {!byte i+127}
|
1
src/lcase.ct
Normal file
1
src/lcase.ct
Normal file
|
@ -0,0 +1 @@
|
|||
€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<EFBFBD><EFBFBD><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<EFBFBD><EFBFBD><EFBFBD><EFBFBD>€亗儎厗噲墛媽崕彁憭摂晼棙櫄洔潪煚、¥ウЖ┆<EFBFBD><EFBFBD><EFBFBD>辈炒刀犯购患骄坷谅媚牌侨墒颂臀闲岩釉罩棕仝圮蒉哙徕沅彐玷殛腱眍镳耱篝貊鼬<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
Loading…
Reference in New Issue
Block a user