New Advanced User Guide (NAUG) [Remastered PDF]

avoid work duplication! collaborate on the archival of acorn literature!
User avatar
TobyLobster
Posts: 359
Joined: Sat Aug 31, 2019 7:58 am
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by TobyLobster »

The smallest of all possible errors: p129 section 8.6 refers to "IRQV2", but everywhere else this is called "IRQ2V"
User avatar
dv8
Posts: 373
Joined: Mon Jun 22, 2009 10:07 pm
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by dv8 »

TobyLobster wrote:
Tue Oct 13, 2020 11:35 am
The smallest of all possible errors: p129 section 8.6 refers to "IRQV2", but everywhere else this is called "IRQ2V"
Thanks. This will be corrected in the next release.
6502
Posts: 50
Joined: Sat Mar 17, 2018 1:04 pm
Location: London
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by 6502 »

Spotted another little boo boo.

Page 102

NVWRCH is labelled as non-vectored read character.
NVRDCH is labelled as non-vectored write character.

Fantastic work by the way. I'm really impressed. Shame I can't have it in a compact ring binder book.
User avatar
dv8
Posts: 373
Joined: Mon Jun 22, 2009 10:07 pm
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by dv8 »

6502 wrote:
Sat Nov 21, 2020 8:25 am
Spotted another little boo boo.
Thanks.
It looks like these calls are also wrong in the AUG.
I'll get it fixed in the next release of both books.
6502
Posts: 50
Joined: Sat Mar 17, 2018 1:04 pm
Location: London
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by 6502 »

What's this on page 113 about?

Code: Select all

6.5.3 OSWRSC
Call address &FFB3
Not indirected
Entry parameters:
Least significant byte of the address to be written in location &D6
Most significant byte of the address to be written in location &D7
A=value to be written
On Exit:
A, X and Y are preserved.
This call is not available from second processors.
&FFB3 in OS 1.20 is &00 BRK

It's also mention on the table on page 102.
User avatar
TobyLobster
Posts: 359
Joined: Sat Aug 31, 2019 7:58 am
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by TobyLobster »

Here's another in my small collection of "but does this really matter? I'm just being overly pedantic now" issues: there's a typo at the top of P363, 'funtions' instead of 'functions'.
User avatar
dv8
Posts: 373
Joined: Mon Jun 22, 2009 10:07 pm
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by dv8 »

Another round of corrections. The updated PDF is in the opening post.

Changes since revision 4 (April 2020):
  • p102 (110) 6.1 OS calls : NVWRCH &FFCB should be 'Non-vectored write', NVRDCH &FFC8 should be 'Non-vectored read'
  • p129 (137) 8.6 user VIA interrupts : IRQV2 should be IRQ2V
  • p159 (167) 12.2 memory use OSBYTEs : added OSBYTE &EF (239) - read/write flag used by OSBYTE &72
  • p173 (181) 13.1.6 OSBYTE &B6 : added hyperlink to Master OSBYTE &B6 - read/write use printer ignore char
  • p206 (214) 13.3.13 VIDCON general summary table : mode 7 entry should be &4B
  • p363 (371) 19.6 top paragraph : 'funtions' should be 'functions'
  • p421 (429) 24.1.5 OSBYTE &FF : call address should be &FFF4
  • p422 (430) 24.2.2 OSBYTE &F5 : section moved from page 423
  • p423 (431) 24.2.4 OSBYTE &F6 : section renumbered from 24.2.3
  • p423 (431) 24.2.5 OSBYTE &B6 : added new section for read/write use printer ignore char
  • p424 (432) 24.2.6 UPTV : section renumbered from 24.2.4
  • p425 (433) 24.2.7 OSBYTE &7B : section renumbered from 24.2.5
  • p428 (436) 24.4.1 OSBYTE &81 read machine type : US OS version should be A1.0
  • p436 (444) Appendix A : added hyperlink for Master OSBYTE &B6 - read/write use printer ignore char
  • p437 (445) Appendix A : added hyperlink for OSBYTE &EF - read/write shadow state
  • p438 (446) Appendix A : OSBYTE &F5 entry updated to page 422
User avatar
lurkio
Posts: 4184
Joined: Wed Apr 10, 2013 12:30 am
Location: Doomawangara
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by lurkio »

dv8 wrote:
Thu Jan 21, 2021 7:57 pm
Another round of corrections.
Tremendous! Thank you!

=D> =D> =D>
Coeus
Posts: 2797
Joined: Mon Jul 25, 2016 12:05 pm
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by Coeus »

6502 wrote:
Sun Nov 22, 2020 8:11 pm
What's this on page 113 about?

Code: Select all

6.5.3 OSWRSC
Call address &FFB3
Not indirected
Entry parameters:
Least significant byte of the address to be written in location &D6
Most significant byte of the address to be written in location &D7
A=value to be written
On Exit:
A, X and Y are preserved.
This call is not available from second processors.
&FFB3 in OS 1.20 is &00 BRK

It's also mention on the table on page 102.
It's for writing to screen memory when shadow RAM is present. Let's trace it.

Code: Select all

F402: 20 AB F3    JSR F3AB    >s
F3AB: 48          PHA
F3AC: 48          PHA
F3AD: 48          PHA
F3AE: 08          PHP
F3AF: 48          PHA
F3B0: DA          PHX
F3B1: BA          TSX
F3B2: BD 08 01    LDA 0108,X
F3B5: 9D 05 01    STA 0105,X
F3B8: BD 07 01    LDA 0107,X
F3BB: 9D 04 01    STA 0104,X
F3BE: A9 F3       LDA #F3     ; This sets the address our caller will return to (1)
F3C0: 9D 07 01    STA 0107,X 
F3C3: A9 D6       LDA #D6
F3C5: 9D 06 01    STA 0106,X
F3C8: AD 34 FE    LDA FE34    ; Fetch the current value of ACCCON which controls some memory mapping.
F3CB: 9D 08 01    STA 0108,X
F3CE: A9 08       LDA #08     ; map out the 8K filing system RAM - see Master Ref Manual Pt1, Page F2-3, bit Y
F3D0: 1C 34 FE    TRB FE34    >s
F3D3: FA          PLX
F3D4: 68          PLA
F3D5: 28          PLP
F3D6: 60          RTS

F405: 4C 5F DB    JMP DB5F
Note that this address DB5F is within the area of the OS that gets overlaid by this filing system RAM which is why we had to make sure that RAM was paged out. But this area also has another special property in that hardware detects when the instruction is fetched from this area and, when it is, makes sure an access to the shadow screen area goes to the bank being displayed.

Code: Select all

DB5F: 91 D6       STA (D6),Y  ; So this is doing the actual write.  Note that Y is included and the documentation said nothing about that.
DB61: 60          RTS         >s

F3D7: 08          PHP         ; Note we're now at the address put on the stack at (1) +1
F3D8: 48          PHA
F3D9: DA          PHX
F3DA: BA          TSX
F3DB: BD 04 01    LDA 0104,X ; get the saved value of ACCON back.
F3DE: 20 B0 ED    JSR EDB0
EDB0: 29 08       AND #08     ; isolate bit Y (8K filing system RAM).
EDB2: D0 08       BNE EDBC    ; if it was set previously...
EDBC: 0C 34 FE    TSB FE34    ; set it.
EDBF: 60          RTS
F3E1: BD 03 01    LDA 0103,X
F3E4: 9D 04 01    STA 0104,X
F3E7: FA          PLX
F3E8: 68          PLA
F3E9: 28          PLP
F3EA: 28          PLP
F3EB: 60          RTS
So just a documentation bug here in failing to mention that Y is added as an offset to the address in &D6/&D7.

And another documentation bug on page 102 - while OSRDSC will read from the ROM of your choice (it was OSRDRM on the BBC B), OSWRSC does nothing with paged ROMs or sideways RAM - the code clearly shows it does nothing with &F4 and &FE30.

Then looking down the set of addresses, I wonder what is at &FFBC and &FFB6.
SteveF
Posts: 1391
Joined: Fri Aug 28, 2015 9:34 pm
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by SteveF »

Coeus wrote:
Mon Mar 08, 2021 1:32 am

Code: Select all

DB5F: 91 D6       STA (D6),Y  ; So this is doing the actual write.  Note that Y is included and the documentation said nothing about that.
So just a documentation bug here in failing to mention that Y is added as an offset to the address in &D6/&D7.
I just stumbled across this myself and came here to report it only to find this post a few days ago, quite a coincidence. BeebWiki had this wrong too, I've just fixed the page there: http://beebwiki.mdfs.net/OSWRSC
SteveF
Posts: 1391
Joined: Fri Aug 28, 2015 9:34 pm
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by SteveF »

Very small typo: on page 298 (according to the page numbers at the bottom)/306 (according to my PDF viewer):
An OWORD call with A=7 (equivalent to the SOUND command in BASIC) which has been given an unrecognised channel will also generate this service call.
(My emphasis)
dp11
Posts: 1475
Joined: Sun Aug 12, 2012 9:47 pm
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by dp11 »

Small error on page 30
The number of instruction cycles taken for the
execution of the instruction in each addressing mode is also given (1
instruction cycle=0.5µs in a BBC model B, 0.33µs in Master or 6502 2nd
processor, 0.25µs in a Master Turbo 2nd processor)
should be :
The number of instruction cycles taken for the
execution of the instruction in each addressing mode is also given (1
instruction cycle=0.5µs in a BBC model B or Master, 0.33µs in a 6502 2nd
processor, 0.25µs in a Master Turbo 2nd processor)
User avatar
roland
Posts: 4706
Joined: Thu Aug 29, 2013 9:29 pm
Location: Born (NL)
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by roland »

On page 423 is Phi2 assigned to pin A8 of the Electron cartridge. However in the original user guide that pin is Phi0. What is the correct one?
(I could open a Plus 1 and follow the trace but that's to much work for now :mrgreen: )
FPGAtom: 512 KB RAM, Real Time Clock and 64 colours
MAN WOMAN :shock:
paulb
Posts: 1118
Joined: Mon Jan 20, 2014 9:02 pm
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by paulb »

roland wrote:
Sun Jun 05, 2022 7:47 pm
On page 423 is Phi2 assigned to pin A8 of the Electron cartridge. However in the original user guide that pin is Phi0. What is the correct one?
(I could open a Plus 1 and follow the trace but that's to much work for now :mrgreen: )
This was covered in a previous discussion about flash memory interfacing.
User avatar
KenLowe
Posts: 3099
Joined: Mon Oct 18, 2004 5:35 pm
Location: UK
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by KenLowe »

The table on page 154 is missing a reference to the Econet Station ID register (&FE18) for the Model B. See here for further details:

viewtopic.php?p=360408#p360408
User avatar
dv8
Posts: 373
Joined: Mon Jun 22, 2009 10:07 pm
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by dv8 »

The PDF in the opening post has been updated to revision 6.

Changes since revision 5 (January 2021):
  • p30 (38) 5.2 Assembler Mnemonics, 2nd to last para : should be 0.5µs for BBC model B or Master
  • p102 (110) 6.1 OS Calls : OSWRSC does not write to paged ROM
  • p113 (121) 6.5.3 OSWRSC : Y register is added to base address in &D6/D7
  • p121 (129) 7.2 OSBYTE &0D/&0E : removed Y=0 from entry parameters
  • p154 (162) 11 SHEILA table : added &18 Econet station number for Model B/B+
  • p158 (166) 12.2 OSBYTE &70 : removed Y=0 from entry parameters
  • p159 (167) 12.2 OSBYTE &71/&72 : removed Y=0 from entry parameters
  • p162 (170) ACCCON &FE34 IFJ : 1 = cartridge at &FC00-&FDFF
  • p178 (186) 13.1.8 OSBYTE &09 : removed Y=0 from entry parameters
  • p179 (187) 13.1.8 OSBYTE &0A : removed Y=0 from entry parameters
  • p224 (232) 14.7 OSBYTE &0B : removed Y=0 from entry parameters
  • p224 (232) 14.8 OSBYTE &0C : removed Y=0 from entry parameters
  • p225 (233) 14.9.1 OSBYTE &04 : removed Y=0 from entry parameters
  • p241 (249) 15.3.2 OSBYTE &03 : removed Y=0 from entry parameters
  • p298 (306) 17.4.1 reason code &08 : 'An OWORD call with A=7' should be 'An OSWORD call'...
  • p347 (355) 18.9 OSWORD &05/06 : &FFFExxxx writes to 12K paged/sideways RAM on B+
  • p386 (394) 22.3.2 Addressable latch B4,5 : 20K screen should be B5=1,B4=0 ; 10K should be B5=1,B4=1
  • p413 (421) 23.7 OSBYTE &6B : removed Y=0 from entry parameters
  • p415 (423) 23.7.2 Cartridge bus signal definitions : added hyperlinks to descriptions
  • p415 (423) 23.7.2 Cartridge bus signal definitions : PHI2 (A-8) is PHI0 on the Electron
  • p416 (424) 23.7.2 Cartridge bus signal definitions : PHI2 is PHI0 on the Electron
  • p418 (426) 23.7.2 Cartridge bus signal definitions : AGND is pulled up to 5V with a 4K7 resistor on the Electron
  • p418 (426) 23.7.2 Cartridge bus signal definitions : ADIN is n/c on the Electron
  • p429 (437) 24.5.1 : added new section for NETV vector
  • p431 (439) 24.5.2 : added new section for KEYV vector
  • p442 (450) Index, under BRK : 'ERK vector' should be 'BRK vector'
Thanks to everyone who submitted corrections.
Deleted User 13004

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by Deleted User 13004 »

Thank you for update to this oh-so-useful PDF version of the NAUG
User avatar
TobyLobster
Posts: 359
Joined: Sat Aug 31, 2019 7:58 am
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by TobyLobster »

Just a couple of minor formatting consistency things around OSBYTE calls:

1. All OSBYTE calls show parameter A formatted like this "A=&B5 (181)", except:

p241 "A=&02 (*FX2)"
p241 "A=&03 (*FX3)"
p242 "A=&07 (*FX7)"
p242 "A=&08 (*FX8)"

2. p109, OSBYTE call 236 has:

"Read/write output stream flag OSBYTE call
A=&EC (236) Read/write output stream flag OSBYTE call"

It's correct but doesn't need the second "Read/write output stream flag OSBYTE call" comment.
User avatar
TobyLobster
Posts: 359
Joined: Sat Aug 31, 2019 7:58 am
Contact:

Re: New Advanced User Guide (NAUG) [Remastered PDF]

Post by TobyLobster »

p145 "the instructions “LDA (&FA),Y” will be required" -> should be "instruction" singular.
Post Reply

Return to “scanning of books, magazines, ads and letters”