Vickit 4+5 Assembler
Moderator: Moderators
Vickit 4+5 Assembler
Hello all.
I've just got hold of the Penultimate+ cartridge after spending ages wrestling with the VicMon Machine Code Monitor.
I've found a pdf manual online, and feel like I'm getting somewhere, but still have a few questions, if anyone knows how Vickit 5 works.
I've input a really simple 'hello world', which appears to be assembling ok when I type SYS45045.
I ask it to relocate the code, and then SYS that address. No 'Hello World'.
I get a #B: prompt before it assembles, and have no idea what that is (can't find mention in the manual).
Does anyone have any experience with this ROM that could possibly offer me a pointer?
Many Thanks,
Robbie
I've just got hold of the Penultimate+ cartridge after spending ages wrestling with the VicMon Machine Code Monitor.
I've found a pdf manual online, and feel like I'm getting somewhere, but still have a few questions, if anyone knows how Vickit 5 works.
I've input a really simple 'hello world', which appears to be assembling ok when I type SYS45045.
I ask it to relocate the code, and then SYS that address. No 'Hello World'.
I get a #B: prompt before it assembles, and have no idea what that is (can't find mention in the manual).
Does anyone have any experience with this ROM that could possibly offer me a pointer?
Many Thanks,
Robbie
Re: Vickit 4+5 Assembler
Page 6 of the manual says
The first thing that will happen after you give the <-E or <-B command is that a
message will appear asking how many B(blocks)(multiples of 256) you require for your
object code to which you may answer from 0 to 9. This will reserve a block of memory
with the end of the object code buffer equal to the top of memory($37/38 minus 1).
Re: Vickit 4+5 Assembler
Thanks srowe. I stupidly assumed the page titled "printed output" would just be about "printed output".
I need to remember I'm back in the 80s when manuals were real manuals!
That page answers all of my other questions too.
Robbie
I need to remember I'm back in the 80s when manuals were real manuals!
That page answers all of my other questions too.
Robbie
Re: Vickit 4+5 Assembler
Do you have a Rom Dump to share and a link from the online document to share for Vickit 4+5 Assembler?
Valid rule today as earlier: 1 Byte = 8 Bits
-._/classes instead of masses\_.-
-._/classes instead of masses\_.-
Re: Vickit 4+5 Assembler
Re: Vickit 4+5 Assembler
Thanx! Rom found. What‘s about the instructions?
Valid rule today as earlier: 1 Byte = 8 Bits
-._/classes instead of masses\_.-
-._/classes instead of masses\_.-
- chysn
- Vic 20 Scientist
- Posts: 1205
- Joined: Tue Oct 22, 2019 12:36 pm
- Website: http://www.beigemaze.com
- Location: Michigan, USA
- Occupation: Software Dev Manager
Re: Vickit 4+5 Assembler
I burned this ROM back-to-back onto a 2764, because I like to have all the assemblers, and ran it at $b000. I can't make anything of it right away. The #B? prompt is as mysterious as its output. I'd love to see a manual if anyone can dig one up.Noizer wrote: ↑Tue Aug 11, 2020 9:17 amThanx! Rom found. What‘s about the instructions?
Edit: I then burned VICKIT4 and VICKIT 5 onto the same 2764. VICKIT 4 runs okay, but it doesn't seem to do much beyond memory dump, register display, and loading. Oh, and it appears to include a left-arrow wedge for doing fast save/load operations. And the world's least-usable hex/decimal converter.
VIC-20 Projects: wAx Assembler, TRBo: Turtle RescueBot, Helix Colony, Sub Med, Trolley Problem, Dungeon of Dance, ZEPTOPOLIS, MIDI KERNAL, The Archivist, Ed for Prophet-5
WIP: MIDIcast BASIC extension
he/him/his
WIP: MIDIcast BASIC extension
he/him/his
- Mike
- Herr VC
- Posts: 4849
- Joined: Wed Dec 01, 2004 1:57 pm
- Location: Munich, Germany
- Occupation: electrical engineer
Re: Vickit 4+5 Assembler
Actually I also spared a look at those tools before I started out with my own you-know-what project (FYI, Robbie - look here).
Tinymon itself fits into less than 1 KB and I'd expect the monitor of VICKIT 4 to be about the same size, so the people at Stack wasted a lot of the remaining ROM space just for a turbo tape and those base converter routines? Ahem.
In the code I could identify the commands M, R, G, X, ":", ";", L and S, which pretty much coincides with the feature set of Tinymon.chysn wrote:VICKIT 4 runs okay, but it doesn't seem to do much beyond memory dump, register display, and loading. [...]
Tinymon itself fits into less than 1 KB and I'd expect the monitor of VICKIT 4 to be about the same size, so the people at Stack wasted a lot of the remaining ROM space just for a turbo tape and those base converter routines? Ahem.
Re: Vickit 4+5 Assembler
Hope this helps
Example from Vickit 4&5 from Multi Rom Carrier Manual
for unexpanded Vic or Vic +3k
10 .O 4596
20 PRINT = $E742
30 LDX 0
40 LOOP TXA
45 JSR PRINT
50 DEX
60 BNE LOOP
70 RTS.
Press
<-E (left arrow E)
WHEN B?
TYPE l
if no errors
Type Y
Sys 4596
This prints out the character set.
Stop with RUNSTOP/RESTORE
for Vic with greater than 3K expansion
If the Vic contains extra memory move the origin to 8194
i.e. line 10 .O (oh not zero)
and to start the program
sys 8194
Example from Vickit 4&5 from Multi Rom Carrier Manual
for unexpanded Vic or Vic +3k
10 .O 4596
20 PRINT = $E742
30 LDX 0
40 LOOP TXA
45 JSR PRINT
50 DEX
60 BNE LOOP
70 RTS.
Press
<-E (left arrow E)
WHEN B?
TYPE l
if no errors
Type Y
Sys 4596
This prints out the character set.
Stop with RUNSTOP/RESTORE
for Vic with greater than 3K expansion
If the Vic contains extra memory move the origin to 8194
i.e. line 10 .O (oh not zero)
and to start the program
sys 8194
Vic20-Ian
The best things in life are Vic-20
Upgrade all new gadgets and mobiles to 3583 Bytes Free today! Ready
The best things in life are Vic-20
Upgrade all new gadgets and mobiles to 3583 Bytes Free today! Ready
- chysn
- Vic 20 Scientist
- Posts: 1205
- Joined: Tue Oct 22, 2019 12:36 pm
- Website: http://www.beigemaze.com
- Location: Michigan, USA
- Occupation: Software Dev Manager
Re: Vickit 4+5 Assembler
Thanks! That's interesting. Are there commands other than <-E?
VIC-20 Projects: wAx Assembler, TRBo: Turtle RescueBot, Helix Colony, Sub Med, Trolley Problem, Dungeon of Dance, ZEPTOPOLIS, MIDI KERNAL, The Archivist, Ed for Prophet-5
WIP: MIDIcast BASIC extension
he/him/his
WIP: MIDIcast BASIC extension
he/him/his
Re: Vickit 4+5 Assembler
http://www.nemetzpower.de/Denial/VICKIT-II.pdf
http://www.nemetzpower.de/Denial/VICKIT-4.pdf
http://www.nemetzpower.de/Denial/VICKIT-5.pdf
http://www.nemetzpower.de/Denial/VICKIT-4.pdf
http://www.nemetzpower.de/Denial/VICKIT-5.pdf
Vic20-Ian
The best things in life are Vic-20
Upgrade all new gadgets and mobiles to 3583 Bytes Free today! Ready
The best things in life are Vic-20
Upgrade all new gadgets and mobiles to 3583 Bytes Free today! Ready
- chysn
- Vic 20 Scientist
- Posts: 1205
- Joined: Tue Oct 22, 2019 12:36 pm
- Website: http://www.beigemaze.com
- Location: Michigan, USA
- Occupation: Software Dev Manager
Re: Vickit 4+5 Assembler
Thanks again!
I played around with it on a real VIC. Several things about this are absurd, like the way you differentiate between immediate and zero page addressing modes, and the intermediate low-memory assembly process, and the blunt 1972-inspired UX sensibility. But it's interesting from a historical standpoint.
I played around with it on a real VIC. Several things about this are absurd, like the way you differentiate between immediate and zero page addressing modes, and the intermediate low-memory assembly process, and the blunt 1972-inspired UX sensibility. But it's interesting from a historical standpoint.
VIC-20 Projects: wAx Assembler, TRBo: Turtle RescueBot, Helix Colony, Sub Med, Trolley Problem, Dungeon of Dance, ZEPTOPOLIS, MIDI KERNAL, The Archivist, Ed for Prophet-5
WIP: MIDIcast BASIC extension
he/him/his
WIP: MIDIcast BASIC extension
he/him/his
- Mike
- Herr VC
- Posts: 4849
- Joined: Wed Dec 01, 2004 1:57 pm
- Location: Munich, Germany
- Occupation: electrical engineer
Re: Vickit 4+5 Assembler
IMO, the non-use of '#' to specify immediate address mode disqualifies this assembler. Small constant symbols for magic values need to mis-use '<' so they are identified as immediate, otherwise these values get mistaken for zero page addressing.chysn wrote:Several things about this are absurd, like the way you differentiate between immediate and zero page addressing modes, [...]
Only if there was any significant body of source files around using this assembler. Even then, it would be advisable to port those sources over to a more recent assembler with MOS conformant mnemonic syntax.But it's interesting from a historical standpoint.
Re: Vickit 4+5 Assembler
I've cleaned up these manuals and sent them off to David to host on Bombjack.
- chysn
- Vic 20 Scientist
- Posts: 1205
- Joined: Tue Oct 22, 2019 12:36 pm
- Website: http://www.beigemaze.com
- Location: Michigan, USA
- Occupation: Software Dev Manager
Re: Vickit 4+5 Assembler
This assembler is the worst. It doesn't seem to assemble anything properly. This code
gets assembled as
The only way to accurately assemble absolute (including ,x and ,y) instructions is to use a label. Otherwise it chooses another addressing mode, and sometimes a totally different mnemonic.
And occasionally, if you answer "N" to Move?, it will delete your BASIC program and cause LIST to emit ?FORMULA TOO COMPLEX.
It's less functional than VICMon, and that's saying a lot.
Code: Select all
10 .O 6144
20 JMP $1200
30 RTS
Code: Select all
48 PHA
00 BRK
60 RTS
And occasionally, if you answer "N" to Move?, it will delete your BASIC program and cause LIST to emit ?FORMULA TOO COMPLEX.
It's less functional than VICMon, and that's saying a lot.
VIC-20 Projects: wAx Assembler, TRBo: Turtle RescueBot, Helix Colony, Sub Med, Trolley Problem, Dungeon of Dance, ZEPTOPOLIS, MIDI KERNAL, The Archivist, Ed for Prophet-5
WIP: MIDIcast BASIC extension
he/him/his
WIP: MIDIcast BASIC extension
he/him/his