Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
 Welcome to our latest new user Båtsman ! (Registered 2018-06-21) You are not logged in 
CSDb User Forums


Forums > C64 Coding > VICE (x64) hot reloading
2018-02-21 20:03
Digger

Registered: Mar 2005
Posts: 276
VICE (x64) hot reloading

Does anyone know a way to pass a .prg file to already running x64 instance on macOS?

I am trying to optimize the launch time after compilation, killing and respawning x64 takes some time, even with memory injection enabled.
 
... 8 posts hidden. Click here to view all posts....
 
2018-02-23 16:58
soci

Registered: Sep 2003
Posts: 386
I use this in Makefiles usually. It does an autostart through remote monitor or starts a new VICE if it's not listening yet. Of course everything is directly runnable or can be compiled so for testing.
XFLAGS := -autostartprgmode 1 -autostart-warp +truedrive +cart -remotemonitor

all: demo
        -echo 'autostart "$(PWD)/$<"' | nc 127.0.0.1 6510 -q 1 2>/dev/null >/dev/null || (x64 $(XFLAGS) $< </dev/null 2>/dev/null >/dev/null) &
2018-02-23 17:44
Groepaz

Registered: Dec 2001
Posts: 8548
noone made a codenet clone for the remote binary interface yet? why?
2018-02-23 19:16
Frantic

Registered: Mar 2003
Posts: 1339
My guess is that this is because you sort of have to be a VICE developer to even be aware of it. With that said I guess it may be a really good idea though.

Also, a bit off topic as it doesn't relate to VICE, but I just wanna mention that there is a special version of the 1541U2 firmware out there somewhere that allows you to send code straight into C64 ram, and do things like remotely resetting the C64, over ethernet. I find it very useful so I just wanted to mention that, as I guess people aren't widely aware of it. I use it from macOS.
2018-02-25 07:02
Fred

Registered: Feb 2003
Posts: 182
Quoting Perplex

# Load new program file into memory
send "load "$PROGRAM" 0"


@Perplex: Thanks for your post. In order to load a program that loads at address $D000-$DFFF you need to set the bank to ram before loading it, like:

send "bank ram"
send "load "$PROGRAM" 0"
send "bank rom"
2018-02-25 07:21
oziphantom

Registered: Oct 2014
Posts: 174
Quote: noone made a codenet clone for the remote binary interface yet? why?

Because the Binary interface only has 1 thing in it. And it lets you grab data from VICE not put data into VICE. To which our remote debuggers are probably the only thing to use it at the moment. Once Hunters Moon is done, I have a list of things to add the binary interface so I can improve the debugger. If you have anything in particular you want let me know.

Binary Upload
Binary Register
Binary Memory trace
Binary Breakpoint setting
Binary Breakpoint triggered
Binary Breakpoint control
Binary Bank

Is the current list.
2018-02-25 08:30
Martin Piper

Registered: Nov 2007
Posts: 386
Yeah, at the moment we have to have a nasty mixture of binary query and the other mostly text based monitor commands to be able to do useful stuff. Plus the weird connection problems causing lots of slow down and flickering of the windows don't help.
2018-02-25 11:01
MagerValp

Registered: Dec 2001
Posts: 923
Quoting oziphantom
Binary Upload
Binary Register
Binary Memory trace
Binary Breakpoint setting
Binary Breakpoint triggered
Binary Breakpoint control
Binary Bank


Trigger reset.
Jump to address.
Read I/O state without side effects like acking IRQs.
2018-02-26 20:35
Groepaz

Registered: Dec 2001
Posts: 8548
Quote:
Because the Binary interface only has 1 thing in it. And it lets you grab data from VICE not put data into VICE.

sure. and it'd take almost a couple minutes to add binary upload?

making a list doesnt help btw. i also already know exactly what it would need, it wouldnt be the first remote debugger thing i am writing :)
2018-02-27 10:51
oziphantom

Registered: Oct 2014
Posts: 174
The list isn't for you, the list is for me ;)
2018-02-27 12:37
Perplex

Registered: Feb 2009
Posts: 208
Quote: Quoting Perplex

# Load new program file into memory
send "load "$PROGRAM" 0"


@Perplex: Thanks for your post. In order to load a program that loads at address $D000-$DFFF you need to set the bank to ram before loading it, like:

send "bank ram"
send "load "$PROGRAM" 0"
send "bank rom"


@Fred: Good call, thanks!
Previous - 1 | 2 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
Didi/Laxity
Mr. SID
Menace/Spaceballs
Compyx/Focus
Comos/Calico/Angels
Pushead/Hokuto Force
Paul Bearer
Guests online: 29
Top Demos
1 Uncensored  (9.7)
2 Comaland 100%  (9.7)
3 Edge of Disgrace  (9.7)
4 Coma Light 13  (9.6)
5 The Shores of Reflec..  (9.6)
6 Wonderland XII  (9.6)
7 We Come in Peace  (9.6)
8 Lunatico  (9.6)
9 Incoherent Nightmare  (9.5)
10 Wonderland XIII  (9.5)
Top onefile Demos
1 Daah, Those Acid Pil..  (9.6)
2 FMX Music Demo  (9.5)
3 Pandemoniac Part 2 o..  (9.5)
4 Dawnfall V1.1  (9.5)
5 Treu Love [reu]  (9.5)
6 Arok 20 Invitation  (9.5)
7 Merry Xmas 2017  (9.4)
8 In Memoriam BHF  (9.4)
9 Dawnfall  (9.4)
10 Synthesis  (9.4)
Top Groups
1 Oxyron  (9.4)
2 Booze Design  (9.4)
3 Censor Design  (9.4)
4 Finnish Gold  (9.4)
5 Crest  (9.3)
Top Fullscreen Graphicians
1 Joe  (9.9)
2 Veto  (9.8)
3 Mirage  (9.7)
4 Jailbird  (9.6)
5 Hein  (9.5)

Home - Disclaimer
Copyright © No Name 2001-2018
Page generated in: 0.058 sec.