Page 7 of 18

Re: A New Draft

Posted: Fri Sep 09, 2022 1:33 am
by srowe
Some remaining bugs
  • Page 2, Quick Start, "Scott Adams" (single d), "Programmers Aid" (no e)
  • Page 3, Disk specifications, I'm not sure what "Metadata in sector 0" is supposed to mean. Perhaps it is referring to the BAM etc which is in Track 18, Sector 0?
  • Page 7, PETSCII column, have you checked the katakana characters? I found several mistakes in the VIC-1001 manual
  • Page 12, "DEF FN" should be "DEF FN<name>(<variable>)=<expression>"
  • Pages 30&31 and 34&35, I don't know if it's just my PDF reader but the centre rows have a different border, is that deliberate?
  • Page 39, unexpanded column, the 3K region should be blank (like BLK123 are)
  • Page 40, perhaps mention that interlace is NTSC only
  • Page 59, I know various sources suggest that 4800 (and sometimes higher) is implemented but the highest baudrate in the KERNAL table is 3600
  • Page 60, bits 3 & 5 of RSSTAT are unused
  • Page 63, VIA1PB, typo "Clear To Send"
  • Page 86, DEX and DEY set N and Z appropriately
  • Page 105, User Port, pin 9 ATN is always an output. Can the labels on this and the Game Port and Cassette Port be made consistent?
  • Page 106, same comment as Page 59
  • Page 114, again "Programmers Aid"
  • Page 118, Device Status, RS232 again bits 3 & 5 have no use on the VIC-20

Re: A New Draft

Posted: Fri Sep 09, 2022 1:45 am
by Forbidden64
This looks pretty cool! I guess the best way to find errors in the book would be to use it.

I have a comb binding machine which makes "lay flat" books a like the original programmers reference guide. Maybe, with permission from the author, I'll print one for myself? I think I even have some thick glossy paper around somewhere.

Re: A New Draft

Posted: Fri Sep 09, 2022 2:56 am
by Jeff-20
srowe wrote: Fri Sep 09, 2022 1:33 am Some remaining bugs
How did you put this together so fast??? Great notes! I'll get started on these right away! I've also noticed the PDF seems to lose borders or discolor them in some browsers. The effect goes away when I zoom in. It all looks fine when printing, but I'll double check the pages you point out. Thank you!

Re: A New Draft

Posted: Fri Sep 09, 2022 2:56 am
by Jeff-20
Forbidden64 wrote: Fri Sep 09, 2022 1:45 am This looks pretty cool! I guess the best way to find errors in the book would be to use it.

I have a comb binding machine which makes "lay flat" books a like the original programmers reference guide. Maybe, with permission from the author, I'll print one for myself? I think I even have some thick glossy paper around somewhere.
Of course! When this is all done, the PDF will be print ready hopefully.

Re: A New Draft

Posted: Fri Sep 09, 2022 6:08 am
by chysn
I have to Google the SYS for Scott Adams every. Single. Time.

Count me among those who'd pay for a physical copy.

Re: A New Draft

Posted: Fri Sep 09, 2022 7:23 am
by DarwinNE
It's a great job!!! I really like it and it is a very useful book!

Re: A New Draft

Posted: Tue Sep 13, 2022 10:13 am
by Mayhem
I do a lot of proofing, I'll try to have a look at this when I can in the next week 8)

Re: A New Draft

Posted: Wed Sep 14, 2022 10:19 pm
by Jeff-20
Mayhem wrote: Tue Sep 13, 2022 10:13 am I do a lot of proofing, I'll try to have a look at this when I can in the next week 8)
New draft below.
DarwinNE wrote: Fri Sep 09, 2022 7:23 am It's a great job!!! I really like it and it is a very useful book!
Thanks!

Ok, here's an updated draft. I found time to work on it today and fixed all of the edits srowe listed (except the katakana). Any suggestions are welcome.

Points to address (I will use the PDF page number with actual page numbers in parathesis):
1. Cover - map now uses 2 digits per cell. Is it legible? Or is an empty grid preferred?
2. 36 (33) - I made a smaller hex screen map. Legible? Is there anything I can put in the blank space created?
3. 78 (75) - There's plenty of space left in the memory location listing. Can the listing be expanded or the space used?
4. 109- 115 (106-112) - Is it preferrable to have a split block map or the smaller sideways maps which are harder to see due to resolution?
5. 127 (124) - Originally a space filler, this section is something I would like to expand... Maybe 2 pages.
6. 128 (125) - I am guessing with music section here. Could someone with more experience comment on this?
7. with the block map style resolved, I will have 2 to 4 free pages. How could the space be used?

Re: A New Draft

Posted: Thu Sep 15, 2022 1:51 pm
by srowe
A few more corrections:
  • Page 31, I see a pair of vertical bars between 7935 and 7936
  • Page 37, 8K+EXP, SCREEN MAP should be $1000-$11FF
  • Page 80, CLC and CLD each clear one bit
  • Page 81, LDY should just have N, Z; LSR should have N, Z, C; PHA doesn't modify Z
  • Page 87, DEX & DEY modify N & Z (not V)
  • Page 88, NOP does not modify C
  • Page 99, PLOT has different behaviour depending on C (like MEMBOT, MEMTOP);TKSA should have SA/$60 in .A

Re: A New Draft

Posted: Fri Sep 16, 2022 1:05 am
by huffelduff
Jeff-20 wrote: Thu Sep 08, 2022 1:35 pm new draft of my book project...
Hi Jeff-20,

The layout and presentation of the book is fantastic. I have a question:
While perusing the book I came upon some small applications. On p121 there is game called UFO rush.
Who wrote the game? Did you write it? For its size its really good.

Greetings

H

Re: A New Draft

Posted: Fri Sep 16, 2022 1:17 pm
by Jeff-20
Updated PDF... I don't want to waste anyone's time finding the same corrections.

Thank you! Great notes:
srowe wrote: Thu Sep 15, 2022 1:51 pm [*]Page 31, I see a pair of vertical bars between 7935 and 7936
I put it there to separate the first block of 255 spaces. I use that when PRINTing, but I will likely remove it if it's distracting.
srowe wrote: Thu Sep 15, 2022 1:51 pm [*]Page 80, CLC and CLD each clear one bit
[*]Page 81, LDY should just have N, Z; LSR should have N, Z, C; PHA doesn't modify Z
[*]Page 87, DEX & DEY modify N & Z (not V)
[*]Page 88, NOP does not modify C
The cycles and registers were all messed up. After copying and pasting to build the table, I must have forgotton to go back and correct it. Everything should be fixed in this draft.
srowe wrote: Thu Sep 15, 2022 1:51 pm [*]Page 99, PLOT has different behaviour depending on C (like MEMBOT, MEMTOP);TKSA should have SA/$60 in .A
I am not sure if I understand this. Could you demonstrate how it should look?
huffelduff wrote: Fri Sep 16, 2022 1:05 am The layout and presentation of the book is fantastic. I have a question:
While perusing the book I came upon some small applications. On p121 there is game called UFO rush.
Who wrote the game? Did you write it? For its size its really good.
Thanks for checking it out!

I wrote the game. I made some tiny type-in games as a space filler, but I will likely keep this one. I would still like one more "useful" app in that section.

If there are any suggestions or additions you'd like to see, please tell me. I have 4 more pages to reach the 128 page count goal. I am running out of ideas.

Re: A New Draft

Posted: Sat Sep 17, 2022 1:20 am
by srowe
Jeff-20 wrote: Fri Sep 16, 2022 1:17 pm
I put it there to separate the first block of 255 spaces. I use that when PRINTing, but I will likely remove it if it's distracting.
No, showing the page boundary makes sense.
srowe wrote: Thu Sep 15, 2022 1:51 pm [*]Page 99, PLOT has different behaviour depending on C (like MEMBOT, MEMTOP);TKSA should have SA/$60 in .A
I am not sure if I understand this. Could you demonstrate how it should look?
With C=1 PLOT returns the current row/column, C=0 sets it. So following your convention for other rows this would be

Code: Select all

PLOT  FFF0  C=0  row  col  C=1  row  col
A suggestion for this table: it is useful to know which calls are through a RAM vector. Could you use bold or italics on the label to indicate that?

The op codes all look right now, there's just an extra row for BCS on page 84.

Edit: just noticed: Page 85 BVS section says "REL BVC OPER ..."

Re: A New Draft

Posted: Sat Sep 17, 2022 12:51 pm
by JonBrawn
I think your description for VIC 6560 register $9005 may be wrong.

Bits 7:4 correspond to bits !15,12:10 of the video address. Bit 9 of the video address comes from $9002 bit 7.
Bits 3:0 correspond to bits !15,12:10 of the character generator's address.

The full functionality of this one register looks like this (I'm not certain how I'd condense this to half a dozen lines, though):

Code: Select all

                  $9002[7]=0 $9002[7]=1
0000xxxx => video   $8000,     $8200  \ Not useful (ROM)
0001xxxx => video   $8400,     $8600  | Not useful (ROM)
0010xxxx => video   $8800,     $8A00  | Not useful (ROM)
0011xxxx => video   $8C00,     $8E00  \ Not useful (ROM)
0100xxxx => video   $9000,     $9200  / Not useful (I/O)
0101xxxx => video   $9400,     $9600  | Not useful (I/O)
0110xxxx => video   $9800,     $9A00  | Not useful (I/O)
0111xxxx => video   $9C00,     $9E00  / Not useful (I/O)
1000xxxx => video   $0000,     $0200  - $0000 Watch page 0 and stack
                                      - $0200 Watch KERNAL/BASIC workspace
1001xxxx => video   $0400,     $0600  \
1010xxxx => video   $0800,     $0A00  | Not useful (random, no access to RAM)
1011xxxx => video   $0C00,     $0E00  /
1100xxxx => video   $1000,     $1200  - RAM, $1000 Used with 8K+ expansion
1101xxxx => video   $1400,     $1600  - RAM
1110xxxx => video   $1800,     $1A00  - RAM
1111xxxx => video   $1C00,     $1E00  - RAM, $1E00 Used with no or 3K expansion

xxxx0000 => chargen $8000   -   Useful (ROM Chargen)
xxxx0001 => chargen $8400   -   Useful (ROM Chargen)
xxxx0010 => chargen $8800   -   Useful (ROM Chargen)
xxxx0011 => chargen $8C00   -   Useful (ROM Chargen)
xxxx0100 => chargen $9000   -   Not useful (I/O)
xxxx0101 => chargen $9400   -   Not useful (I/O)
xxxx0110 => chargen $9800   -   Not useful (I/O)
xxxx0111 => chargen $9C00   -   Not useful (I/O)
xxxx1000 => chargen $0000   -   Sort of useful, watch page zero flickering away
xxxx1001 => chargen $0400   -   Not useful (random, no access to RAM)
xxxx1010 => chargen $0800   -   Not useful (random, no access to RAM)
xxxx1011 => chargen $0C00   -   Not useful (random, no access to RAM)
xxxx1100 => chargen $1000   -   Useful  (User Chargen in RAM)
xxxx1101 => chargen $1400   -   Useful  (User Chargen in RAM)
xxxx1110 => chargen $1800   -   Useful  (User Chargen in RAM)
xxxx1111 => chargen $1C00   -   Useful  (User Chargen in RAM)

Re: A New Draft

Posted: Tue Sep 20, 2022 3:07 pm
by rhurst
Can this PDF format support bookmarks? PDF exports often have as an option off any header style formatting.
For example, its cover does not offer me to click on any TOC entry to jump to that page.

Re: A New Draft

Posted: Tue Sep 20, 2022 3:12 pm
by rhurst
Someone sees this hardcopy laying about and will likely ask, "What's a VIC 20?" :P
Suggest moving the technical screen map off the cover and replace it with an image, such as:
Image

And I see page 30 + 31 offers a nicer screen map already.