Thanks for the interesting conversation folks, really informative.
I'm having trouble again though, with the simplest 'Hello World' program I can think of:
10 .O $33C
20 LDA $51
30 JSR $FFD2
40 RTS
All I get is a display of the registers, albeit with the correct value of $51 in A.
If I put the same into VICMON:
A 033C LDA #$51
JSR $FFD2
BRK
then I get a Q on the screen as expected.
...I wonder if Vickit is using the Tape Buffer for something... I'll try a different address. Unless anyone can suggest a better assembler.
Vickit 4+5 Assembler
Moderator: Moderators
Re: Vickit 4+5 Assembler
Last edited by Robbie on Wed Aug 26, 2020 2:18 pm, edited 1 time in total.
- 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
The code that you put in memory disassembles as:
You're getting a display of registers because $1c is an illegal instruction that functions as an absolute,x NOP (a.k.a. TOP or SKW), which considers $d2 and your RTS as part of its operand, and you're falling through to a BRK afterward.
You're correct that if you use a label for $ffd2, it assembles properly
This isn't really an acceptable way to do it. And here we're even overlooking the non-standard LDA $51 syntax, which is by itself a good reason to steer clear of this product. I'm not going to say that there are better assemblers than Vickit 4+5 out there. I'm going to say that there are probably no worse ones.
Code: Select all
$033c LDA #$51
$033e .byte $1c
$033f .byte $d2
$0340 RTS
You're correct that if you use a label for $ffd2, it assembles properly
Code: Select all
10 .O 828
20 LDA $51
25 PRINT=$FFD2
30 JSR PRINT
40 RTS
wAx is crafted to be the finest native VIC-20 assembler that no-money can buy. https://github.com/Chysn/wAx/wiki
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
Thanks. What an ordeal!
I've just placed an order, and look forward to having a go with Wax.
I've just placed an order, and look forward to having a go with Wax.
- Mike
- Herr VC
- Posts: 4842
- Joined: Wed Dec 01, 2004 1:57 pm
- Location: Munich, Germany
- Occupation: electrical engineer
Re: Vickit 4+5 Assembler
I am beginning to suspect that the ROM dump of VICKIT 4+5 as linked to in the thread here is faulty. Maybe it's just a single bit flipped in the EPROM programmed more than 10 years ago.chysn wrote:This isn't really an acceptable way to do it. And here we're even overlooking the non-standard LDA $51 syntax, which is by itself a good reason to steer clear of this product. I'm not going to say that there are better assemblers than Vickit 4+5 out there. I'm going to say that there are probably no worse ones.
It is just not imaginable, that such a simple thing as absolute address mode with a literal address is broken - even the most basic form of quality control would have catched that.
Without another, independent copy of the ROM dump to compare against, confirming that suspicion requires a thorough look into the object code, but the time needed for this is probably better spent elsewhere, given that there are working alternatives available.
Re: Vickit 4+5 Assembler
The version I'm using is on the Penultimate+ Cartridge. Perhaps they used the same ROM dump source though.
I'm currently having a mess with Wax. I have to say chysn, everything is working exactly as I'd expect so I'm very impressed - and also not worried that I'm losing my mind (which was happening with the Vickit assembler!). Did you put any extra RAM in the cartridge? Mind you, where would be the fun in having more than 3.5k to play with?
I'm currently having a mess with Wax. I have to say chysn, everything is working exactly as I'd expect so I'm very impressed - and also not worried that I'm losing my mind (which was happening with the Vickit assembler!). Did you put any extra RAM in the cartridge? Mind you, where would be the fun in having more than 3.5k to play with?
- 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
Happy to hear that! No, there's no extra RAM in the cartridge. But, like VICMON, it can be used in conjunction with expansion cartridges with a port expander. The problem with adding additional memory in a commercial product is that you never know what people are using, and the expansion permutations for the VIC-20 are... dizzying...Robbie wrote: ↑Thu Aug 27, 2020 6:30 am I'm currently having a mess with Wax. I have to say chysn, everything is working exactly as I'd expect so I'm very impressed - and also not worried that I'm losing my mind (which was happening with the Vickit assembler!). Did you put any extra RAM in the cartridge? Mind you, where would be the fun in having more than 3.5k to play with?
I've got my own copy stashed in a 3K cartridge with an extra 2K at $a000. Mike helped me out with reworking the PCB slots, and this topic recounts my saga viewtopic.php?f=11&t=9497. I started with VICMON for this project, but ultimately VICMON became more of an opponent than a tool
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