Thanks. Remind me what the option to disable save States from command again? It was long ago and I cant recall. For retro run I meancrashoverride wrote: ↑Tue Jun 02, 2020 7:39 amThere are no dependencies that I am aware of. The kernel and uboot should be capable of running any modern Linux distribution (Ubuntu, Fedora, Arch, etc).
See also:
https://wiki.odroid.com/odroid_go_advance/build_uboot
https://wiki.odroid.com/odroid_go_advance/build_kernel
(Note that I do not package uboot/kernel/bootini. They are provided by HardKernel.)
Development Resources
-
- Posts: 284
- Joined: Tue Jul 16, 2019 12:30 am
- languages_spoken: English, French
- ODROIDs: XU4, N2, N2+, C2, C4, OGA, OGA-BE, H2+, OGS, OGST
- Location: Canada
- Has thanked: 23 times
- Been thanked: 72 times
- Contact:
Re: Development Resources
-
- Posts: 284
- Joined: Tue Jul 16, 2019 12:30 am
- languages_spoken: English, French
- ODROIDs: XU4, N2, N2+, C2, C4, OGA, OGA-BE, H2+, OGS, OGST
- Location: Canada
- Has thanked: 23 times
- Been thanked: 72 times
- Contact:
Re: Development Resources
The question is can I do it in a way that's not on the hard kernel wiki. Meaning can I build and install the kernel on the device, or do I have to use my linux VM and cross compile then put it onto the SD? The wiki only shows cross compiling steps, and my VM hates my SD reader
- meveric
- Posts: 11512
- Joined: Mon Feb 25, 2013 2:41 pm
- languages_spoken: german, english
- ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go, H2 (N4100), N2, H2 (J4105), GoA, C4, GoA v1.1, H2+, HC4, GoS
- Has thanked: 67 times
- Been thanked: 471 times
- Contact:
Re: Development Resources
I always compile directly on the ODROIDs.
In fact it's much easier than cross compiling, but might be a little bit more time consuming, aside from that compiling natively should always be better.
But didn't you say, you just want to use the existing Kernel instead of compiling again?
In fact it's much easier than cross compiling, but might be a little bit more time consuming, aside from that compiling natively should always be better.
But didn't you say, you just want to use the existing Kernel instead of compiling again?
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.
-
- Posts: 5323
- Joined: Tue Dec 30, 2014 8:42 pm
- languages_spoken: english
- ODROIDs: C1
- Has thanked: 0
- Been thanked: 438 times
- Contact:
Re: Development Resources
The options are here:
https://github.com/OtherCrashOverride/r ... pp#L71-L80
Use "--restart" or "-r" on the command line.
- These users thanked the author crashoverride for the post:
- Slaminger (Sat Jun 06, 2020 11:01 pm)
-
- Posts: 5323
- Joined: Tue Dec 30, 2014 8:42 pm
- languages_spoken: english
- ODROIDs: C1
- Has thanked: 0
- Been thanked: 438 times
- Contact:
Re: Development Resources
In the past, I have encountered issues building uboot and needed to use the same version of GCC that is used in the wiki. The GCC version will also affect kernel compilation as newer versions may detect errors that prior versions did not.
- These users thanked the author crashoverride for the post:
- Slaminger (Sat Jun 06, 2020 11:01 pm)
-
- Posts: 284
- Joined: Tue Jul 16, 2019 12:30 am
- languages_spoken: English, French
- ODROIDs: XU4, N2, N2+, C2, C4, OGA, OGA-BE, H2+, OGS, OGST
- Location: Canada
- Has thanked: 23 times
- Been thanked: 72 times
- Contact:
Re: Development Resources
Well I got the kernel and uboot from the links above into Ubuntu 19 but it didn't get the on board WiFi working
-
- Posts: 5323
- Joined: Tue Dec 30, 2014 8:42 pm
- languages_spoken: english
- ODROIDs: C1
- Has thanked: 0
- Been thanked: 438 times
- Contact:
-
- Posts: 284
- Joined: Tue Jul 16, 2019 12:30 am
- languages_spoken: English, French
- ODROIDs: XU4, N2, N2+, C2, C4, OGA, OGA-BE, H2+, OGS, OGST
- Location: Canada
- Has thanked: 23 times
- Been thanked: 72 times
- Contact:
Re: Development Resources
are we sure that those links are to the new kernel? because it didn't seem to enable l2 r2 or the on board wifi, I feel like it might have been the ubuntu 19 one
-
- Posts: 5323
- Joined: Tue Dec 30, 2014 8:42 pm
- languages_spoken: english
- ODROIDs: C1
- Has thanked: 0
- Been thanked: 438 times
- Contact:
Re: Development Resources
This likely indicates you are using the device tree for rev1.0 instead of the one for rev1.1.
https://github.com/hardkernel/linux/blo ... ux-v11.dts
The boot.ini file in the reference image automatically selects the device tree based on hardware revision.
-
- Posts: 284
- Joined: Tue Jul 16, 2019 12:30 am
- languages_spoken: English, French
- ODROIDs: XU4, N2, N2+, C2, C4, OGA, OGA-BE, H2+, OGS, OGST
- Location: Canada
- Has thanked: 23 times
- Been thanked: 72 times
- Contact:
Re: Development Resources
I confirmed that by looking at the boot.ini, it seems the instructions HK provided are for model 1 ubuntu 19 kernel and have not been updated for oga v11 yet, I do see the dts you referenced in the git clone tho, im just going to try swapping the boot.ini and see what I getcrashoverride wrote: ↑Mon Jun 08, 2020 2:08 amThis likely indicates you are using the device tree for rev1.0 instead of the one for rev1.1.
https://github.com/hardkernel/linux/blo ... ux-v11.dts
The boot.ini file in the reference image automatically selects the device tree based on hardware revision.
-
- Posts: 284
- Joined: Tue Jul 16, 2019 12:30 am
- languages_spoken: English, French
- ODROIDs: XU4, N2, N2+, C2, C4, OGA, OGA-BE, H2+, OGS, OGST
- Location: Canada
- Has thanked: 23 times
- Been thanked: 72 times
- Contact:
Re: Development Resources
I got it working, the button layout is messed up but I can fix that, l2 r2 and wifi now work in my ubuntu 19 image 

-
- Posts: 102
- Joined: Thu Oct 18, 2018 4:01 am
- languages_spoken: english
- ODROIDs: ODROID-GO
- Has thanked: 27 times
- Been thanked: 1 time
- Contact:
Re: Development Resources
Hi CrashOverride,crashoverride wrote: ↑Fri Dec 27, 2019 5:12 pmRetroRun
https://github.com/OtherCrashOverride/retrorun-go2
I've just cloned your retrorun-go2, and changed it to use four function keys to control brightness and volume instead of F4 then the dpad; but when I looked to copy it into /usr/bin, there was "retrorun" and "retrorun32". The make file built me "retrorun", so what's "retrorun32" and how do I build it?
Thanks
-
- Posts: 5323
- Joined: Tue Dec 30, 2014 8:42 pm
- languages_spoken: english
- ODROIDs: C1
- Has thanked: 0
- Been thanked: 438 times
- Contact:
Re: Development Resources
"retrorun32" is a 32bit (armhf) version of "retrorun". This is required since 64bit applications can not load 32bit shared libraries (libretro cores) and vice versa. It is build exactly the same as "retrorun" except in a 32bit environment instead of a 64bit one. The resulting binary is then renamed from "retrorun" to "retrorun32".
-
- Posts: 102
- Joined: Thu Oct 18, 2018 4:01 am
- languages_spoken: english
- ODROIDs: ODROID-GO
- Has thanked: 27 times
- Been thanked: 1 time
- Contact:
Re: Development Resources
Thanks for the reply. I'm building directly on the OGA, and I think I read in one of your other posts that there was a chroot to 32bit. Sorry if this is a dumb question, I know some basic linux stuff (and I've heard of a chroot), but could you (or anyone else) walk me through building the 32bit version over SSH?
-
- Posts: 5323
- Joined: Tue Dec 30, 2014 8:42 pm
- languages_spoken: english
- ODROIDs: C1
- Has thanked: 0
- Been thanked: 438 times
- Contact:
Re: Development Resources
It is not a trivial task. It requires using debootstrap to generate the 32bit environment (its another copy of the OS compiled for 32bit). Then, required dependencies and headers (libgo2, librga, build-essential, git, libopenal, libevdev, libdrm) need to be installed or copied into the environment. Optionally, mount point remapping is established to provide access to hardware devices like GPU.
I really would like to get the process documented, but I currently do not have the time. As previously stated, it is non-trivial.
-
- Posts: 102
- Joined: Thu Oct 18, 2018 4:01 am
- languages_spoken: english
- ODROIDs: ODROID-GO
- Has thanked: 27 times
- Been thanked: 1 time
- Contact:
Re: Development Resources
Yeah, it sounds it... Okay, I'll leave it for now, and see which cores i use don't use my new retrorun. If all the ones i use do, then i guess it's not really a problem
Thanks again
Thanks again
-
- Posts: 10
- Joined: Wed Jul 11, 2018 3:36 am
- languages_spoken: english spanish
- ODROIDs: GO, GO ADV (1.1)
- Has thanked: 23 times
- Been thanked: 2 times
- Contact:
Re: Development Resources
To create a quick chroot for odroid go adv, and enable qemu user emulation I am using this:
https://github.com/aplanas/chrootctl
You can now install the compiler and the headers commented by @crashoverride, still missing the part about remapping the hardware, does any one have a pointer about how to do this? I would like to complete this chrootctl script.
https://github.com/aplanas/chrootctl
You can now install the compiler and the headers commented by @crashoverride, still missing the part about remapping the hardware, does any one have a pointer about how to do this? I would like to complete this chrootctl script.
-
- Posts: 5323
- Joined: Tue Dec 30, 2014 8:42 pm
- languages_spoken: english
- ODROIDs: C1
- Has thanked: 0
- Been thanked: 438 times
- Contact:
Re: Development Resources
Code: Select all
mount --rbind /dev YOUR_ROOT/dev
Note that the chroot needs the same user/group IDs that match those set in /dev. Normally the "root" user is sufficient.
-
- Posts: 10
- Joined: Wed Jul 11, 2018 3:36 am
- languages_spoken: english spanish
- ODROIDs: GO, GO ADV (1.1)
- Has thanked: 23 times
- Been thanked: 2 times
- Contact:
Re: Development Resources
Ah cool! That was already in place then (https://github.com/aplanas/chrootctl/bl ... ootctl#L68). At least I am able to see the same devices inside the chroot and outside.
Thanks!
Thanks!
-
- Posts: 286
- Joined: Thu Mar 14, 2019 8:34 pm
- languages_spoken: english and norwegian
- Has thanked: 15 times
- Been thanked: 133 times
- Contact:
Re: Development Resources
Actually, there's no difference at all. The same compiler version will output the same binaries if you are running it natively or using a cross compiler. I build the entire OS in about 3 hours on my NUC8, how long does it take you to compile the kernel?

-
- Posts: 46
- Joined: Sat Nov 10, 2018 10:40 pm
- languages_spoken: english
- ODROIDs: Go, Go Advance
- Has thanked: 19 times
- Been thanked: 23 times
- Contact:
Re: Development Resources
I tried this script but I'm not sure what base environment it's based to run from. I tried a Lubuntu 16.04 X64 and it didn't work. I tried a ubuntu armv71 install on an Raspberry pi and I got a little further but it still failed to create the chroot. Any advice on this? My goal is to create a 32bit dev environment so I can build a 32 bit version of retroarch 1.8.9.apd wrote: ↑Tue Jul 07, 2020 2:28 amTo create a quick chroot for odroid go adv, and enable qemu user emulation I am using this:
https://github.com/aplanas/chrootctl
You can now install the compiler and the headers commented by @crashoverride, still missing the part about remapping the hardware, does any one have a pointer about how to do this? I would like to complete this chrootctl script.
Thanks
A jack of all trades is a master of none, but oftentimes better than a master of one
-
- Posts: 10
- Joined: Wed Jul 11, 2018 3:36 am
- languages_spoken: english spanish
- ODROIDs: GO, GO ADV (1.1)
- Has thanked: 23 times
- Been thanked: 2 times
- Contact:
Re: Development Resources
My env is openSUSE Tumbleweed, but I do not see anything that depends on it. Should work on any Linux distribution. Try again with the Lubuntu and show me the error. Be sure that you installed this:Christian_Haitian wrote: ↑Wed Jul 29, 2020 9:20 amI tried this script but I'm not sure what base environment it's based to run from. I tried a Lubuntu 16.04 X64 and it didn't work. I tried a ubuntu armv71 install on an Raspberry pi and I got a little further but it still failed to create the chroot. Any advice on this? My goal is to create a 32bit dev environment so I can build a 32 bit version of retroarch 1.8.9.
> apt-get install curl kpartx rsync qemu binfmt-support qemu-user-static
The process is very simple, download the official odroid go advance ubuntu image, extract the content via rsync, and register the qemu-static in a way that if an ARM (32 or 64) is detected, it will execute the command through qemu.
-
- Posts: 46
- Joined: Sat Nov 10, 2018 10:40 pm
- languages_spoken: english
- ODROIDs: Go, Go Advance
- Has thanked: 19 times
- Been thanked: 23 times
- Contact:
Re: Development Resources
I will try this thank you for sharing the required dependencies as well. How do I set it up so that this chroot is a 32bit only environment?apd wrote: ↑Wed Jul 29, 2020 8:33 pmMy env is openSUSE Tumbleweed, but I do not see anything that depends on it. Should work on any Linux distribution. Try again with the Lubuntu and show me the error. Be sure that you installed this:Christian_Haitian wrote: ↑Wed Jul 29, 2020 9:20 amI tried this script but I'm not sure what base environment it's based to run from. I tried a Lubuntu 16.04 X64 and it didn't work. I tried a ubuntu armv71 install on an Raspberry pi and I got a little further but it still failed to create the chroot. Any advice on this? My goal is to create a 32bit dev environment so I can build a 32 bit version of retroarch 1.8.9.
> apt-get install curl kpartx rsync qemu binfmt-support qemu-user-static
The process is very simple, download the official odroid go advance ubuntu image, extract the content via rsync, and register the qemu-static in a way that if an ARM (32 or 64) is detected, it will execute the command through qemu.
A jack of all trades is a master of none, but oftentimes better than a master of one
-
- Posts: 10
- Joined: Wed Jul 11, 2018 3:36 am
- languages_spoken: english spanish
- ODROIDs: GO, GO ADV (1.1)
- Has thanked: 23 times
- Been thanked: 2 times
- Contact:
Re: Development Resources
The official Ubuntu image for OGA mix 32 and 64 versions of libraries. Use apt-get to install the libraries of 32 bits that you require.Christian_Haitian wrote: ↑Wed Jul 29, 2020 11:57 pmHow do I set it up so that this chroot is a 32bit only environment?
Enable the chroot env (see the chrootctl doc for more help)
> sudo chrootctl shell
You can see that already the official image is multiarch, nothing to do here.
# dpkg --print-architecture
arm64
# dpkg --print-foreign-architectures.
armhf
To learn more about multiarch in debian:
https://wiki.debian.org/Multiarch/HOWTO
Install the compiler;
# apt install build-essential
Now you need to pass to GCC the appropriate flags to generate 32 bits executable, for example:
https://github.com/OtherCrashOverride/m ... ild.sh#L36
- These users thanked the author apd for the post:
- Christian_Haitian (Thu Jul 30, 2020 5:43 am)
-
- Posts: 46
- Joined: Sat Nov 10, 2018 10:40 pm
- languages_spoken: english
- ODROIDs: Go, Go Advance
- Has thanked: 19 times
- Been thanked: 23 times
- Contact:
Re: Development Resources
This is the error I get once I've verified I have installed all of the dependencies on Lubuntu 16.04.03 X64. This is when I attempt to do sudo ./chrootctl create
- Attachments
-
- Capture.PNG (7.56 KiB) Viewed 3135 times
A jack of all trades is a master of none, but oftentimes better than a master of one
-
- Posts: 10
- Joined: Wed Jul 11, 2018 3:36 am
- languages_spoken: english spanish
- ODROIDs: GO, GO ADV (1.1)
- Has thanked: 23 times
- Been thanked: 2 times
- Contact:
Re: Development Resources
IMAGE="ubuntu-20.04-4.4-es-odroid-goA-20200514.img"
# De-register the partitions, ignore the error
kpartx -vd "${IMAGE}"
# Register again the partitions
kpartx -va "${IMAGE}"
What is the output of the last command? Please, ignore the errors of the first one, is there to make sure that you start from scratch.
# De-register the partitions, ignore the error
kpartx -vd "${IMAGE}"
# Register again the partitions
kpartx -va "${IMAGE}"
What is the output of the last command? Please, ignore the errors of the first one, is there to make sure that you start from scratch.
-
- Posts: 46
- Joined: Sat Nov 10, 2018 10:40 pm
- languages_spoken: english
- ODROIDs: Go, Go Advance
- Has thanked: 19 times
- Been thanked: 23 times
- Contact:
Re: Development Resources
I get the following.apd wrote: ↑Fri Jul 31, 2020 4:43 pmIMAGE="ubuntu-20.04-4.4-es-odroid-goA-20200514.img"
# De-register the partitions, ignore the error
kpartx -vd "${IMAGE}"
# Register again the partitions
kpartx -va "${IMAGE}"
What is the output of the last command? Please, ignore the errors of the first one, is there to make sure that you start from scratch.
A jack of all trades is a master of none, but oftentimes better than a master of one
-
- Posts: 10
- Joined: Wed Jul 11, 2018 3:36 am
- languages_spoken: english spanish
- ODROIDs: GO, GO ADV (1.1)
- Has thanked: 23 times
- Been thanked: 2 times
- Contact:
Re: Development Resources
This seems to be OK. Christian, I am not able to reproduce your issue. The post with the first error suggested that kpartx was to able to detect the partitions, but this output from this last post shows that is not the case.
I suggest to retry, or use set -x to have some insight of what is happening. I any case I recommend you to move the debugging session outside the forum. Maybe create an issue in the github project?
-
- Posts: 102
- Joined: Thu Oct 18, 2018 4:01 am
- languages_spoken: english
- ODROIDs: ODROID-GO
- Has thanked: 27 times
- Been thanked: 1 time
- Contact:
Re: Development Resources
To use the hardware acceleration from libgo2, do you need to use the EGL context? At the minute I'm just using memory bitmaps and go2_presenter_post.
Would any kind soul be willing to do a small 3D rotating cube GLES example using libgo2 please?
Would any kind soul be willing to do a small 3D rotating cube GLES example using libgo2 please?
-
- Posts: 5323
- Joined: Tue Dec 30, 2014 8:42 pm
- languages_spoken: english
- ODROIDs: C1
- Has thanked: 0
- Been thanked: 438 times
- Contact:
Re: Development Resources
The "go2_presenter_post" function uses RGA2 (instead of GLES) for hardware acceleration of rotation and scaling.
To use GLES, a 3D "context" is created that provides surfaces to "go2_presenter_post".
1) Create a 3D context. Note the "major" and "minor" fields denote the version of GLES to use.
https://github.com/OtherCrashOverride/e ... p#L87-L100
2) Perform any GLES operations for drawing.
3) Display the surface:
https://github.com/OtherCrashOverride/e ... #L280-L288
- These users thanked the author crashoverride for the post:
- pmprog (Thu Aug 27, 2020 11:54 pm)
-
- Posts: 102
- Joined: Thu Oct 18, 2018 4:01 am
- languages_spoken: english
- ODROIDs: ODROID-GO
- Has thanked: 27 times
- Been thanked: 1 time
- Contact:
Re: Development Resources
Sorry, another probably dumb question, but which GLES versions are supported?
-
- Posts: 5323
- Joined: Tue Dec 30, 2014 8:42 pm
- languages_spoken: english
- ODROIDs: C1
- Has thanked: 0
- Been thanked: 438 times
- Contact:
Re: Development Resources
All of them!
1.0, 2.0, 3.0, 3.1, 3.2
- These users thanked the author crashoverride for the post:
- pmprog (Mon Sep 14, 2020 6:16 am)
-
- Posts: 46
- Joined: Sat Nov 10, 2018 10:40 pm
- languages_spoken: english
- ODROIDs: Go, Go Advance
- Has thanked: 19 times
- Been thanked: 23 times
- Contact:
Re: Development Resources
Greetings,
I was able to setup a 64 bit and 32 bit chroot dev environment on a Lubuntu 16.04 Virtualbox VM. I decided to package it and make available for others in case others encounter similar initial struggles like I did.
Helpful tools already preinstalled in both chroot instances:
build-essential git wget libdrm-dev python3 python3-pip python3-setuptools python3-wheel ninja-build libopenal-dev premake4 autoconf libevdev-dev ffmpeg libsnappy-dev libboost-tools-dev magics++ libboost-thread-dev libboost-all-dev
File Manager: PCManFM version 1.2.4 with Open as Root configured
User: osboxes.org
Pass: password
From terminal session like lxterminal:
sudo chroot /mnt/data/armhf/ #for 32 bit Arm environment
sudo chroot /mnt/data/arm64/ #for 64 bit Arm environment
It can be downloaded from the Mega link below
11/1/2020 Update -- I was able to create an updated virtual box vm development environment using a variant of Debian Dog called Buster Dog. It's a much smaller distro, it's based on the newer Debian Buster release, has PCManFM version 1.3.1, boots directly into root and has both 32 bit and 64 bit Arm environments included. This download is only a little over 2.7GBs and expands to a little under 8GBs but is configured to grow up to 50GBs to allow space for various development needs. Virtualbox guest additions have already be preinstalled as well for Virtual Box version 6.1.12. I've also created 2 shortcuts for the chroots on the vm's desktop named Arm32 and Arm64. If you double click into them, they will open a terminal directly into the respective environments so you can begin your various builds. Filezilla is also included.
01/05/2021 Update -- I've received a couple of reports that internet from within the chroots may not work out of the box. What has fixed this is to connect to the internet outside of the chroot (like ping google.com from a regular terminal session in the VM) then move the resolv.conf from /etc to the chroot /etc folders (/mnt/data/arm64/etc) and (/mnt/data/armhf/etc) then internet will work within them.
More info about Buster Dog is available here: https://debiandog.github.io/doglinux/zz03busterdog.html
The actual download link of the vm: https://mega.nz/file/ucw3DQ7C#wO1biH-zn ... 65bNFz63R8
Hopefully this is helpful for others.
I was able to setup a 64 bit and 32 bit chroot dev environment on a Lubuntu 16.04 Virtualbox VM. I decided to package it and make available for others in case others encounter similar initial struggles like I did.
Helpful tools already preinstalled in both chroot instances:
build-essential git wget libdrm-dev python3 python3-pip python3-setuptools python3-wheel ninja-build libopenal-dev premake4 autoconf libevdev-dev ffmpeg libsnappy-dev libboost-tools-dev magics++ libboost-thread-dev libboost-all-dev
File Manager: PCManFM version 1.2.4 with Open as Root configured
User: osboxes.org
Pass: password
From terminal session like lxterminal:
sudo chroot /mnt/data/armhf/ #for 32 bit Arm environment
sudo chroot /mnt/data/arm64/ #for 64 bit Arm environment
It can be downloaded from the Mega link below
11/1/2020 Update -- I was able to create an updated virtual box vm development environment using a variant of Debian Dog called Buster Dog. It's a much smaller distro, it's based on the newer Debian Buster release, has PCManFM version 1.3.1, boots directly into root and has both 32 bit and 64 bit Arm environments included. This download is only a little over 2.7GBs and expands to a little under 8GBs but is configured to grow up to 50GBs to allow space for various development needs. Virtualbox guest additions have already be preinstalled as well for Virtual Box version 6.1.12. I've also created 2 shortcuts for the chroots on the vm's desktop named Arm32 and Arm64. If you double click into them, they will open a terminal directly into the respective environments so you can begin your various builds. Filezilla is also included.
01/05/2021 Update -- I've received a couple of reports that internet from within the chroots may not work out of the box. What has fixed this is to connect to the internet outside of the chroot (like ping google.com from a regular terminal session in the VM) then move the resolv.conf from /etc to the chroot /etc folders (/mnt/data/arm64/etc) and (/mnt/data/armhf/etc) then internet will work within them.
More info about Buster Dog is available here: https://debiandog.github.io/doglinux/zz03busterdog.html
The actual download link of the vm: https://mega.nz/file/ucw3DQ7C#wO1biH-zn ... 65bNFz63R8
Hopefully this is helpful for others.
- These users thanked the author Christian_Haitian for the post (total 4):
- notime2d8 (Tue Sep 15, 2020 11:19 am) • apd (Tue Sep 15, 2020 4:20 pm) • sm_1 (Thu Feb 04, 2021 8:54 am) • southoz (Sat Apr 03, 2021 11:41 am)
A jack of all trades is a master of none, but oftentimes better than a master of one
Who is online
Users browsing this forum: No registered users and 1 guest