Appears to be based on the 1983 version. All "STA $CFFF" bank select statements are replaced by "JSR $0101", pointing to a small subroutine that maps the Axlon bank number to and XE bank in PORTB.
Port B | FF | EF | EB | E7 | E3 | AF | AB | A7 | A3 | 8F | 8B | 87 | 83 | FF | FF | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Model | 800/XL | 130 XE | 130 XE | 130 XE | 130 XE | RAMBO | RAMBO | RAMBO | RAMBO | RAMBO | RAMBO | RAMBO | RAMBO | n/a | n/a | |
Total RAM (k) | 48/64 | 128 | 128 | 128 | 128 | 192 | 192 | 192 | 192 | 256 | 256 | 256 | 256 | n/a | n/a |
See also http://atariage.com/forums/topic/208094-who-can-crack-this-one.
From p. 9 of the documenation:
"NOTE: The memory indicator will be nnn/NNN where nnn = amount of memory used in K bytes and NNN = total amount of memory available in K bytes (1 K byte is equal to 1024 characters). When you notice that the memory indicator shows that the worksheet is becoming full, you should save the worksheet to disk and then reload it. This may free up additional memory space. The amount of memory will vary according to the configuration of your computer."
Hardware | Base RAM | Expansion | Free Memory in 1983 Version | Free Memory in 1985 Version | Free Memory in 1993 Version |
---|---|---|---|---|---|
Atari 800 | 48k | none | 21k | 21k | n/a |
Atari 800 | 52k | none | 25k | 25k | n/a |
Atari 800 | 48k | 64k Axlon | 69k | 69k | n/a |
Atari 800 | 48k | 128k Axlon | 133k | 133k | n/a |
Atari 800 | 48k | 256k Axlon | 245k | 245k | n/a |
Atari 800 | 48k | 512k Axlon | 245k | 245k | n/a |
Atari 800 | 48k | 1024k Axlon | 245k | 245k | n/a |
Atari 800 | 48k | 2048k Axlon | 245k | 245k | n/a |
Atari 800 | 48k | 4096k Axlon | 245k | 245k | n/a |
Atari 800 XL | 64k | none | 21k | 21k | 21k |
Atari 800 XL | 64k | 256k Rambo | 21k | 84k | 213k |
Atari 800 XL | 64k | 256k Compy | 21k | 84k | 149k |
Atari 800 XL | 64k | 512k Rambo | 21k | 84k | 213k |
Atari 800 XL | 64k | 512k Compy | 21k | 84k | 149k |
Atari 800 XL | 64k | 1024k Rambo | 21k | 84k | 213k |
Atari 130 XE | 64k | 64k Atari | 21k | 84k | 85k |
The disk contains a boot loader in the sectors 1-8 and two versions of the program. The first version starts at sector 18 ($12) supports the Axlon compatiable memory expansions with the banking register $CFFF. The second version starts at sector 62 ($3E) and supports the XE compatible memory expansions with the banking register $D301 (PORTB). In both cases, the extended memory is banked in at $4000. If an extended memory bank at $4000 is available for the banking value $E3 during the boot process, the second version is loaded.
1B3B: LDY #$EF
1B3D: LDA #$E3
1B3F: STA PORTB
1B42: TXA
1B43: STA $4000,X
1B46: STY PORTB
1B49: EOR #$FF
1B4B: STA $4000,X
1B4E: INX
1B4F: BPL $1B3D
1B51: LDX #$00
1B53: LDA #$E3
1B55: STA PORTB
1B58: TXA
1B59: CMP $4000,X
1B5C: BNE $1B6C
1B5E: INX
1B5F: BPL $1B58
1B61: LDA #$3E
1B63: STA $84
1B65: LDA #$00
1B67: STA $85
1B69: JMP $1B74
1B6C: LDA #$12
1B6E: STA $84
1B70: LDA #$00
1B72: STA $85
... load main part