Finding Artic ZX Assembler 2

Discussion about ZX80 / ZX81 Software
User avatar
mrtinb
Posts: 987
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: Finding Artic ZX Assembler 2

Post by mrtinb » Tue Dec 13, 2016 9:48 pm

Looking at the memory contents it seems to be plain "zx81-scii" started with $EE and ended with $FF, and lines with labels are prefixed with $82.

Should be fairly easy to create a parser.
Martin
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube

User avatar
GCHarder
Posts: 222
Joined: Sat Dec 14, 2013 7:46 pm

Re: Finding Artic ZX Assembler 2

Post by GCHarder » Wed Dec 14, 2016 11:11 pm

If your using Windows, I'd recommend trying XavSnaps emulator located at

http://zx81.vb81.free.fr/.

It's much more that an emulator, it can import and export text files into ZXAS, save programs as p file or text and a bunch more stuff, no C knowledge needed.

Regards;

Greg

User avatar
mrtinb
Posts: 987
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: Finding Artic ZX Assembler 2

Post by mrtinb » Sun Mar 05, 2017 8:08 pm

The included text with ZX Assembler 2v38 states:
ZXA2.TXT wrote:* Unique: option of Self-Relocating Code generation (with ORG 0 directive);
When ORG 0 is used, JPs and CALLs are not changed, but the assembled code is prefixed with the code below. Has anyone used the relocatable code gereration in ZX Assembler 2v38?

Code: Select all

4084 E5            PUSH HL
4085 D5            PUSH DE
4086 C5            PUSH BC
4087 F5            PUSH AF
4088 ED5B0440      LD DE,(RMTP)
408C 21E1E9        LD HL,E9E1
408F 220440        LD (RMTP),HL
4092 CD0440        CALL RMTP
4095 ED530440      LD (RMTP),DE
4099 11FD7E        LD DE,7EFD
409C A7            AND A
409D ED52          SBC HL,DE
409F 11517F        LD DE,7F51
40A2 19            ADD HL,DE
40A3 7C            LD A,H
40A4 5E            LD E,(HL)
40A5 23            INC HL
40A6 56            LD D,(HL)
40A7 77            LD (HL),A
40A8 2B            DEC HL
40A9 75            LD (HL),L
40AA E5            PUSH HL
40AB A7            AND A
40AC ED52          SBC HL,DE
40AE E5            PUSH HL
40AF C1            POP BC
40B0 E1            POP HL
40B1 23            INC HL
40B2 23            INC HL
40B3 282B          JR Z REL1
40B5 5E            LD E,(HL)
40B6 23            INC HL
40B7 56            LD D,(HL)
40B8 EB            EX DE,HL
40B9 09            ADD HL,BC
40BA EB            EX DE,HL
40BB 72            LD (HL),D
40BC 2B            DEC HL
40BD 73            LD (HL),E
40BE 23            INC HL
40BF 23            INC HL
40C0 5E       REL3 LD E,(HL)
40C1 23            INC HL
40C2 56            LD D,(HL)
40C3 7A            LD A,D
40C4 B3            OR E
40C5 2816          JR Z REL2
40C7 EB            EX DE,HL
40C8 09            ADD HL,BC
40C9 EB            EX DE,HL
40CA 72            LD (HL),D
40CB 2B            DEC HL
40CC 73            LD (HL),E
40CD 23            INC HL
40CE 23            INC HL
40CF E5            PUSH HL
40D0 EB            EX DE,HL
40D1 5E            LD E,(HL)
40D2 23            INC HL
40D3 56            LD D,(HL)
40D4 EB            EX DE,HL
40D5 09            ADD HL,BC
40D6 EB            EX DE,HL
40D7 72            LD (HL),D
40D8 2B            DEC HL
40D9 73            LD (HL),E
40DA E1            POP HL
40DB 18E3          JR REL3
40DD 23       REL2 INC HL
40DE 1804          JR REL4
40E0 5E       REL1 LD E,(HL)
40E1 23            INC HL
40E2 56            LD D,(HL)
40E3 EB            EX DE,HL
40E4 F1       REL4 POP AF
40E5 C1            POP BC
40E6 D1            POP DE
40E7 E3            EX (SP),HL
40E8 C9            RET
40E9 E9            JP (HL)
40EA 40            LD B,B
40EB F3            DI
40EC 40            LD B,B
40ED 11411E        LD DE,1E41
40F0 41            LD B,C
40F1 00            NOP
40F2 00            NOP
Edit: Updated assembler with labels
Last edited by mrtinb on Mon Mar 06, 2017 7:32 pm, edited 1 time in total.
Martin
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube

User avatar
XavSnap
Posts: 644
Joined: Sat May 10, 2008 4:23 pm

Re: Finding Artic ZX Assembler 2

Post by XavSnap » Sun Mar 05, 2017 11:31 pm

mrtinb wrote:
Tue Dec 13, 2016 8:54 am
There seems to be 2 versions of Artic ZX Assembler.

Code: Select all

    <<<< ZX - ASSEMBLER 2 >>>> 
    
    BY D.P.AKNAI  M.STREETON 
  (C) 1982 ARTIC COMPUTING LTD 
  REVISED BY CARLO DELHEZ, 1991 
Where can I find this?
Was include in « Xtender » emulator by Carlos DELHEZ : http://www.delhez.demon.nl (404)

archive: http://web.archive.org/web/201503090024 ... .demon.nl/
(DOS/WIN95/W98)

ASM2v38:
http://web.archive.org/web/201503090024 ... XA2V38.ZIP
[EDIT] >>>> Siggi suggestion.

'P' file (included in VB81 as a Z81 memory image file)
vb81.jpg
vb81.jpg (109.16 KiB) Viewed 1660 times
Last edited by XavSnap on Mon Mar 06, 2017 9:33 am, edited 1 time in total.

User avatar
mrtinb
Posts: 987
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: Finding Artic ZX Assembler 2

Post by mrtinb » Mon Mar 06, 2017 7:19 am

XavSnap wrote:
Sun Mar 05, 2017 11:31 pm
Was include in « Xtender » emulator by Carlos DELHEZ : http://www.delhez.demon.nl (404)

archive: http://web.archive.org/web/201503090024 ... .demon.nl/
(DOS/WIN95/W98)

ASM2v38:
http://web.archive.org/web/201503090024 ... XA2V38.ZIP

'P' file (included in VB81 as a Z81 memory image file)
Thanks again XavSnap.

But I already have the ZX Assembler 2 by now.

I have used both ZX Assembler 2 build into Vb81, and I have used ZX Assembler 2v38. They seem to differ:
  • ZX Assembler 2 build into Vb81 - does not have the V command, to display version
  • ZX Assembler 2 build into Vb81 - does not support relocatable code via ORG 0
So ZX Assembler 2 build into Vb81 must be an earlier version than ZX Assembler 2v38.

But back to the real question: Has anyone used the option to create relocatable code in ZX Assembler 2v38?
Martin
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube

User avatar
XavSnap
Posts: 644
Joined: Sat May 10, 2008 4:23 pm

Re: Finding Artic ZX Assembler 2

Post by XavSnap » Mon Mar 06, 2017 9:37 am

mrtinb wrote:
Mon Mar 06, 2017 7:19 am
But back to the real question: Has anyone used the option to create relocatable code in ZX Assembler 2v38?
Sorry for my too low-level message...
What is a "ORG 0" in you mind ?
relocatable to the "0" address ? ... in the ZxBasic monitor ROM ...
:evil:

User avatar
mrtinb
Posts: 987
Joined: Fri Nov 06, 2015 5:44 pm
Location: Denmark
Contact:

Re: Finding Artic ZX Assembler 2

Post by mrtinb » Mon Mar 06, 2017 11:02 am

mrtinb wrote:
Sun Mar 05, 2017 8:08 pm
The included text with ZX Assembler 2v38 states:
ZXA2.TXT wrote:* Unique: option of Self-Relocating Code generation (with ORG 0 directive);
The above is qouted from text file for ZX Assembler 2v38.

ZX Assembler 2v38 has a new option to create self-relocating code. This feature is activated by using the statement ORG 0.
  • For ZX Assembler in Vb81 - ORG 0 will create code for the BASIC ROM, like you stated.
  • For ZX Assembler 2v38 - ORG 0 will turn on creation of relocatable code.
Martin
ZX81, Lambda 8300, Commodore 64, Mac G4 Cube

Post Reply