Soft Config of vLA81

Discussions about Sinclair ZX80 and ZX81 Hardware
User avatar
Erm
Posts: 225
Joined: Thu Jun 20, 2019 7:07 pm
Contact:

Soft Config of vLA81

Post by Erm »

I've tried to get my head round it, but I can't. All I can do is take stuff apart and put things together (more or less successfully). I lack the basic computer innards knowledge, something needs to click, maybe it will one day!

With the wonderful vLA81, how do I configure the soft config mode variables? I know that both the USR switches (the last 2 of the 4) both have to be on. The manual shows this chart (attached) with reference to port 231/E7h and the various things that can be changed.

How do I, for example, invert the screen colours? Is there a poke or is there something I can enter in a basic prog, or is it more complicated than that?

Thanks.
vla81Soft.jpg
I'm Chris, a Brit in Germany (Chr$ on the QL forum). https:\\QXL.WIN < QL related collection.
User avatar
Paul
Posts: 1511
Joined: Thu May 27, 2010 8:15 am
Location: Germanys west end

Re: Soft Config of vLA81

Post by Paul »

Due to the lack of in and out commands you need machine code for switching vLA81 modes.
I have prepared a little basic program for you to enter that will create a machine code program in a REM line.
It's not tested yet as I have to open my TS1000 and unscrew the PCB in order to change my vLA81 to soft config mode.
What loading options do you have?
list.jpg
list.jpg (19.82 KiB) Viewed 4651 times
vla81.p
(1.45 KiB) Downloaded 259 times

Kind regards Paul
In theory, there is no difference between theory and practice. But, in practice, there is.
User avatar
1024MAK
Posts: 5101
Joined: Mon Sep 26, 2011 10:56 am
Location: Looking forward to summer in Somerset, UK...

Re: Soft Config of vLA81

Post by 1024MAK »

I'm not sure how Paul was trying to do what I think he was trying to do...

But I suggest the following changes to his program:

Code: Select all

15 LET A=16514
20 POKE A,62
25 POKE A+1,3
30 POKE A+2,211
35 POKE A+3,231
40 POKE A+4,201
The assembly / machine code is:

Code: Select all

HEX DEC Code          Comments
=== === ============  ================================================
 3E 062 LD A,3        ; load 3 into register A
 03 003               ; data for above instruction
 D3 211 OUT (231),A   ; output contents of register A to port 231 / 0xE7
 E7 231               ; data for above instruction
 C9 201 RET           ; return to BASIC
Mark
ZX81 Variations
ZX81 Chip Pin-outs
ZX81 Video Transistor Buffer Amp

:!: Standby alert :!:
There are four lights!
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :!:
Looking forward to summer later in the year.
User avatar
Erm
Posts: 225
Joined: Thu Jun 20, 2019 7:07 pm
Contact:

Re: Soft Config of vLA81

Post by Erm »

Thanks very much Paul and Mark. I'll convert the .p to a wav, load it, make the changes and see how I get on.
I'm Chris, a Brit in Germany (Chr$ on the QL forum). https:\\QXL.WIN < QL related collection.
User avatar
Paul
Posts: 1511
Joined: Thu May 27, 2010 8:15 am
Location: Germanys west end

Re: Soft Config of vLA81

Post by Paul »

Sorry, Mark is of course right.
I forgot to load c with 231.
I will change the program in my previous post.
Which I have now done.
Thanks Mark.
In theory, there is no difference between theory and practice. But, in practice, there is.
User avatar
Erm
Posts: 225
Joined: Thu Jun 20, 2019 7:07 pm
Contact:

Re: Soft Config of vLA81

Post by Erm »

Thanks so much for that insight, both of you. I feel I've learnt something again, something very basic, but it has clicked (I think) and is my mini revelation for today.

Those pokes, which end up at the beginning of the REM statement, due to them being at addresses 16514 onwards, are assembly language to put a '3' (11 in binary) into the E7 port. And those 2x '1' bits = inverse video and black border, as I can see on the chart on the vLA81 manual!
I'm Chris, a Brit in Germany (Chr$ on the QL forum). https:\\QXL.WIN < QL related collection.
Its1982again
Posts: 78
Joined: Tue Aug 04, 2020 6:26 pm

Re: Soft Config of vLA81

Post by Its1982again »

Paul wrote: Wed Nov 13, 2019 8:21 am Due to the lack of in and out commands you need machine code for switching vLA81 modes.
I have prepared a little basic program for you to enter that will create a machine code program in a REM line.
It's not tested yet as I have to open my TS1000 and unscrew the PCB in order to change my vLA81 to soft config mode.
What loading options do you have?

list.jpg


vla81.p


Kind regards Paul
Hi guys.

Set my vla81 to soft configuration and ran the program (inverse screen and border in UK)

Works perfect but is there any code to set my memory 8k -40k as once the vla is switched to soft configuration it defaults to 16k - 48k.
I'm on internal 32k so I switch the memory using the hard configure switches depending on software.

Any help, as always, is appreciated.

David
ZX80 (white psu)
Issue 1 ZX81
32k comp mod ZX81 filesixty keyboard
Issue 1 Spectrum
Issue 2 Specrum
Toastrack
Issue 3 in Lo-Profile keyboard
Harlequin 128
DivMMC future
vdrive
TZXduino
ZX printer
Alphacom printer
User avatar
1024MAK
Posts: 5101
Joined: Mon Sep 26, 2011 10:56 am
Location: Looking forward to summer in Somerset, UK...

Re: Soft Config of vLA81

Post by 1024MAK »

The table in the first post shows the various soft configurations available. For each column, you will see labelled as BIT7 to BIT0, it will have either a 0 or a 1 in line with the description on the right hand column.

BIT5 and BIT6 should be 0 (zero). BIT0 is the lowest significant bit. BIT7 is the highest significant bit.

Combine this all eight bits and you have a eight bit binary number. Convert to decimal. Now load or type in the BASIC program. You only need lines 10 to 50. The rest of the program is not needed. Next edit line 25 and change the last value on the line (3) to your decimal number that you converted from binary. Now run the program.

Alternatively use lines 10 to 220. But remove line 50 and 199. You don’t need lines 230 to 430.

Edit line 210. For line 210 include the variables for the features that you want, each added up (hence the +). The available settings/variables are shown in lines 100 to 170.

Mark
ZX81 Variations
ZX81 Chip Pin-outs
ZX81 Video Transistor Buffer Amp

:!: Standby alert :!:
There are four lights!
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :!:
Looking forward to summer later in the year.
Its1982again
Posts: 78
Joined: Tue Aug 04, 2020 6:26 pm

Re: Soft Config of vLA81

Post by Its1982again »

1024MAK wrote: Tue Oct 26, 2021 8:19 am The table in the first post shows the various soft configurations available. For each column, you will see labelled as BIT7 to BIT0, it will have either a 0 or a 1 in line with the description on the right hand column.

BIT5 and BIT6 should be 0 (zero). BIT0 is the lowest significant bit. BIT7 is the highest significant bit.

Combine this all eight bits and you have a eight bit binary number. Convert to decimal. Now load or type in the BASIC program. You only need lines 10 to 50. The rest of the program is not needed. Next edit line 25 and change the last value on the line 3) to your decimal number that you converted from binary. Now run the program.

Alternatively use lines 10 to 220. But remove line 50 and 199. You don’t need lines 230 to 430.

Edit line 210. For line 210 include the variables for the features that you want, each added up (hence the +). The available settings/variables are shown in lines 100 to 170.

Mark
I get it now Mark. I'd seen the MEM values and really should of twigged! I'll try it later after work. Thanks a bunch!
ZX80 (white psu)
Issue 1 ZX81
32k comp mod ZX81 filesixty keyboard
Issue 1 Spectrum
Issue 2 Specrum
Toastrack
Issue 3 in Lo-Profile keyboard
Harlequin 128
DivMMC future
vdrive
TZXduino
ZX printer
Alphacom printer
Its1982again
Posts: 78
Joined: Tue Aug 04, 2020 6:26 pm

Re: Soft Config of vLA81

Post by Its1982again »

Its1982again wrote: Tue Oct 26, 2021 10:03 am
1024MAK wrote: Tue Oct 26, 2021 8:19 am The table in the first post shhows the various soft configurations available. For each column, you will see labelled as BIT7 to BIT0, it will have either a 0 or a 1 in line with the description on the right hand column.

BIT5 and BIT6 should be 0 (zero). BIT0 is the lowest significant bit. BIT7 is the highest significant bit.

Combine this all eight bits and you have a eight bit binary number. Convert to decimal. Now load or type in the BASIC program. You only need lines 10 to 50. The rest of the program is not needed. Next edit line 25 and change the last value on the line 3) to your decimal number that you converted from binary. Now run the program.

Alternatively use lines 10 to 220. But remove line 50 and 199. You don’t need lines 230 to 430.

Edit line 210. For line 210 include the variables for the features that you want, each added up (hence the +). The available settings/variables are shown in lines 100 to 170.

Mark
I get it now Mark. I'd seen the MEM values and really should of twigged! I'll try it later after work. Thanks a bunch!
Perfect! Although I'm setting the display to USA as for some reason it just seems crisper on my LCD moniter than the UK setting. I did run a long AV lead to the big TV and even better although my Mrs wasn't all that impressed at Alan Turver's new @hightower new Space Invaders game being played on a 50"!!!

Ran all kinds of software in various memory settings, also with an original Zon x-81 and each one works as it should.

Thanks again Mark, every day's a school day!
ZX80 (white psu)
Issue 1 ZX81
32k comp mod ZX81 filesixty keyboard
Issue 1 Spectrum
Issue 2 Specrum
Toastrack
Issue 3 in Lo-Profile keyboard
Harlequin 128
DivMMC future
vdrive
TZXduino
ZX printer
Alphacom printer
Post Reply