#and if u have any questions on how to emulate/get it set up PLEASE come talk to me. just remember to get a jp bios for the emulator ok :)
Explore tagged Tumblr posts
volfoss · 11 months ago
Text
Final version of the Volfoss guide/unit guide download link here (dropbox, if you need an alt download just message me :]).
The guide includes:
Full, line by line, translation/transcription of the story and 5 endings
An in depth character list with image descriptions for each character and the in game gallery descriptions (as well as some of my own for the characters that were either very minor or did not have them in the gallery for spoiler reasons) translated and transcribed
An in depth unit list with image descriptions for each unit as well as the in game gallery description translated and transcribed
Full, in depth descriptions of each menu and battle strategies
Every single side quest (over 50!) with full information and strategies on most of them (the only ones that don't have them are the ones that are very easy and self-explanatory)
A 5 page table of contents that will navigate to any quest, any side quest with ease
A complete list of every item, taken straight from the manual
A complete list of locations with the in game descriptions translated and transcribed, as well as a handy table to show which locations are under which government system
A (very long) gem combination table that makes the otherwise complicated system a lot simpler to use
The unit guide transcribed into a handy spreadsheet from the physical in game format, so it's very easy to see what enemies do what and which units you may want on your team
Misc Links:
Manual and Map scans here (not including the unit guide scans as they scanned in pretty badly)
The .cue/.bin files to run it on Retroarch (or any emulator of your choice, just scroll down to get the files labelled Volfoss (Japan), it's an archive.org link)
50 notes · View notes
glutaminase · 3 years ago
Note
Is there any advice you’d give to other writers if you don’t mind? I love your style and the pacing is spectacular, especially for keeping me personally hooked on the prose
first of all thank u this is so kind!! sorry this took me so long to answer i read it and then for the next 24 hours i was like Who Am I To Give Advice? so take this all with a grain of salt. but!
on a broader level: i know everyone is always like "read a lot:)" but honestly when it comes to figuring out your own personal style and voice it is tremendously helpful to not only read a lot but also to specifically read with the intent of like, really trying to get under the hood of a story and figure out exactly what works (to you) and why (or what doesnt work!). personally i love rereading stuff that has really moved me & that has some element i would like to try to emulate my own writing, and seeing if i can pinpoint what specifically an author did - in terms of story structure, characters, or more granular sentence level stuff, etc - to evoke that reaction in me. and then figuring out how to apply those observations to whatever im trying to achieve in my own writing.
this is all very individual so dont take this as prescriptive advice by any means, but you mentioned my style and pacing so just in case u wanted advice more specific to my own writing - in prose, i really love textured, clear images that are as specific and detailed as possible, and i think i'm getting better as i write at recognizing which details and aspects of imagery are interesting and add to a scene vs which ones feel pointless or excessive. also helps a lot with pacing to tie scenery/setting/etc details to the characters, or the narrative voice, or the action/movement of the scene. eg you can have a static description of a sunny day or you can slot that in with a character shielding their eyes from the sun or putting on sunscreen or whatever (awful example. i am so sorry. just spitballing) and often the latter is more interesting!
BUT ALSO!! sometimes there are works where you're reading like ok this all very pretty and all but i have completely lost the thread of what is physically going on in this scene. And i know i said i dont like prescriptive advice but im comfortable saying that when that happens its generally bad. so i try to have a mix of description thats just straightforward and There + observations that are both descriptive and also relevant to the pov character + action. that helps with pacing too lmfao like if 2 people are talking and i need to imply a pause but i don't want to write "She paused." for the millionth time in a row, thats when im like Ok its time for a few lines of Walking And Observing Our Surroundings In Great Detail:)
also something that helps me is once i know what i want to happen in a scene & have some dialogue and action in mind, i honestly just let it play out visually in my mind like its a movie lol. and then when i actually go to write it feels more like im just observing and recording it. i think doing that helps a lot with both clear imagery and pacing! at least in my head it forces me to consider pacing on a more concrete level than if im just directly coming up w shit and immediately putting it on the page.
but also there are tons of writers i love who i do not attempt to emulate at all in terms of voice or style! so like. again i think its much more important to identify what You like to read & what kind of voice you personally want in ur writing than it is to try to adhere to someone elses advice if it doesnt work for you!
if theres something more specific u were wondering about/if i did not address your question in any useful way please feel free to shoot me another ask hahaha but hopefully at least some of this rambling was useful to u! and thank you again!:D
4 notes · View notes
hollowedskin · 5 years ago
Photo
Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media
Expressions of interest - portrait commissions
Hey there art fans, if you’re interested in commissioning a portrait, here is how, it’s a little different to how I know most other artists work so please take the time to read. Due to my fluctuating health I’ve found that I can’t have a set of ‘commission slots’. Because what ends up happening is that when my shitty health kicks in I end up having to cancel on people who have booked in. So what I’m doing instead is an expression of interest list!
What is this and how is it different to commission slots?
Basically putting an expression of interest down means I’ll add you to a list of people who are interested in organising a commission with me. When I’m able to take a commission I will contact people in chronological order, if you are still interested, we will organise it (what you’re looking for, reference images, prices etc) and I will paint it, doing one commission at a time. If when I have finished that painting and I’m still able to work, I will contact the next person and start the process again.
If you’re on the list and you’ve changed your mind or no longer want it,  thats ok! Its just a list of people who are interested, you’re not locked in and there’s no deposit that needs to be paid to be on the list. If you decline i’ll just contact the next person, and you can stay on the list or get taken off it, whatever you want.
Why do it this way?
I have a chronic illness that flares up unpredictably, for indeterminite amounts of time which makes it difficult to commit to long term projects, this is why I haven’t opened commissions for years (and also why i’m not working my dream job). If i agree to do 5 commissions and get sick halfway though one its going to screw over everyone and I might not be able to start work on them for weeks or months, there are multiple people who have paid deposits and are expecting work who are going to get impatient and disappointed.  I also tend to panic when I have too many things on the go, because I’m always afraid something will come up and I won’t be able to do them all. doing things one at a time like this helps me stay on top of it.
What can I commission and how much is it?
Realistic portraits of anyone you want! It can be you, your favourite character, an OC, even Jeff Goldblum if you have a craving.
gender affirming portraits: if u want stubble or anything you want to do with a self portrait, just talk with me about it, i love doing this.
Portraits start at US$150 and increase with complexity or additional characters.   
All portraits will be bust sized (shoulders and up, see examples), and basic portraits come with a basic coloured background (first four), basic clothing (like the tshirts) and you can also have a tattoo!
If you would like something more detailed like the Sombra portrait with her glove, multiple, intricate tattoos, or items, we can discuss that and add it onto the price. 
official artwork for bands and book covers: happy to do it, but we will need to negotiate a price for reproductive and commercial licences. 
Detailed costuming is negotiable, but not my speciality. 
More complex backgrounds negotiable, but not my speciality.
What won’t you do?
Everyone has their nopes, these are mine
emulating someone else’s style, I paint like me.
super complex backgrounds or cityscape bacgrounds: if it has to look like a place and not just the impression of a place then I’m not the right artist for that job
Super complex outfits: to be honest I’m rubbish at designing clothes, You’ll notice that all my clothing is either very basic or made up of folds of cloth.
Furry art: not that i don’t like furries but I’m just not good at it, you’re better off asking a different artist. Nonhumans are ok! but like, humanoid. Please talk to me about it so we can figure out if its something i can do.
porn: again, not my thing. I can do like, romancy stuff but if I have to look at porn to reference it I don’t want to do that.
hate or hate symbols: this is pretty much like... look i’m not going to do any nazis or donald trump or anyone like that. I’m not going to do anyone’s historical nazi oc either. Real world hate groups are a hard no. Anything depicting a hate crime is also a no.
And i think thats it! please contact me if there is anything else you want to ask, no question is a bad question and i’m happy to chat.
64 notes · View notes
monamour3 · 5 years ago
Text
VPN Proxy Master Download for PC
VPN Master is an app that permits you to browse any internet site in any part of the arena irrespective of where you're or the restrictions that is probably there on your USA. There is no want of your identifying yourself or having an account for you with a purpose to use the app.
The most effective component you need to do is simply deciding on the app that you wish to apply with VPN and begin browsing. It is feasible so that you can exchange u. S. Of the server, you want to get connected to, wherein you may easily do it inside the settings.
With the loose VPN Master version you may easily navigate 200 megabytes, however, it is also viable if you want to grow this number by using putting in other apps or providing the VPN Master with a rating so one can have extra megabytes to browse.
You can as nicely use actual cash to shop for more megabytes. VPN Master is a first-rate VPN device which may be used without problems, along with the fact it functions an intuitive consumer interface.
VPN Master is one of the great VPN apps to be had without cost for Android users. The cause at the back of its recognition is because of its quality services and it's far very clean to use. The desirable news is that now with the assist of Android Emulators we also can download VPN Master For PC on both Windows and Mac Operating System. Before we move in the direction of the guide on the way to use Android App VPN Master For PC permit me to tell you some capabilities and specification of the app.
Tumblr media
VPN Proxy Master is one of the best manners to pass geo-limited websites and apps. Basically, this utility connects the device with Proxy IP place and in the end result, you can easily surf blocked web sites and apps. Actually, it connects the tool with the IP region of other countries so you can get entry to blocked things at the internet without problems. Another crucial gain of this app is security. VPN Master secures all net searches and records from hackers. As it hides Actual IP Address so it turns into difficult for hackers to hint the IP.
Talking about the capabilities of VPN Master, this utility is completely loose to download. No registration and login process is required to begin operating. Just Open the app and click on at the connect button. It will robotically connect with Proxy IP area. By default, it connects you to the satisfaction to be had proxy but you can select any place of your preference. It comes with a variety of locations. No hidden fees are required it gives you rapid velocity with limitless bandwidth. So to finish we will say that it's miles one of the first-rate VPN application by using which you could effortlessly pass geo-limited apps and websites and at ease your records from hackers.
Also, Download Turbo VPN for PC
This software is to be had to download totally free on Android gadgets. But here we are able to inform you how you may download and deploy VPN Master for PC. Initially, there is no manner thru which you can get this app for your PC however now with the assist of the Android Emulators, you may easily use VPN Master on PC. If you're seeking out a manual on the way to download VPN Master for PC walking Windows and Mac Operating System then you want to follow these steps beneath.
VPN Master For PC – Free Download
Frequently, it will describe the way to download and deploy also, use the software for any PC (OS). Firstly, it has to be sharing the hints to the use of it on the worlds maximum used emulator BlueStacks.
How to use with BlueStacks
Superbest manner is the use of with BlueStacks. You want to put in BlueStacks firstly on your PC. Be it any OS like Windows, Linux or Mac. Then comply with those clean 7 steps beneath. But earlier than start perspectives the approach of Turbo VPN PC Edition.
Download the setup file (.Exe) of the emulator from the reliable download hyperlink above. The download link will read your OS kind and robotically provide you with the right version on your PC.
Install the downloaded software on PC. Normally, It took no less than five minutes. But absolutely relying on RAM and Processor size. But minimal 2GB Ram is needed. Due to effective and more potent capability, My personal recommendation is minimum respectively- 4GB RAM, Core i5 processor, and 1 Terabyte HDD.
Maybe you've got successfully set up BlueStacks. So open it and login along with your Google Account.
Open the Google Play Store and seek “VPN Master”.
Identify the real software by means of its reliable emblem.
Click at the call and logo of the software program.
Finally, set up VPN Master on PC.
Also, Download Astrill VPN for PC
Use VPN Master on PC by means of BlueStacks
Open the VPN Master Software via the BlueStacks emulator. Connect on the loose proxy server. Also, you could choose the united states-wise proxy too! After effectively linked to the proxy server then open any net browser.
Start using the application and enjoy it! If have you any question approximately this technique, please inform us by using a comment.
Our writers are awaiting help you approximately any trouble of VPN Master for Windows. So why late?
Windows Edition
There are a few opportunity routes to install the software on a Windows PC. Because I even have already let you know approximately the issues. I endorse the use of the BlueStacks software participant. Otherwise, you may deploy a tiny extension to your browser. Which browser you are the usage of? Chrome or Firefox? Don’t fear, Please see the segment of them in this article. I’m positive you could to begin using this VPN software without difficulty.
But in case you select the BlueStacks for your PC. So please maintain your eye at the phase of BlueStacks. All the proper manner now sharing.
Chrome Extention
Google Chrome one of the famous browser within the planet of the civilization of human. In 2019 the Chrome is the number one used software program for surfing the Internet. By the manner, my subject matter is for VPN using on Chrome by installing a free extension. By installing the extension in your Chrome, you can use the proxy internet.
Go to the Chrome Web Store and search VPN Master For PC. Find out the authentic extension. And, click on the “Add to Chrome” button. Give permission to put it in your PC. Wait for some seconds. Finally, have to be set up inside only 5 seconds.
But, perhaps in the store of chrome has absent the authoritative extension. So please simplest follow the BlueStacks manner to using it on a Desktop PC. But you may download VPN for PC for free! We provide you quite a few loose VPN services. Check the link above. And, discover your first-rate VPN for PC.
The VPN grasp app will offer to the high-velocity internet connection for your smartphone tool or pill
You can free up any website or app and use worldwide free VPN proxy server at any time
Enjoy a couple of proxies for skip blocked internet site out of your u. S . A.
Bypass net filters, area regulations at excessive speed
Keep relaxed your connection while you are beneath WiFi hotspot cowl
Hiding your authentic IP
It works on the mobile records vendors and wifi
It will keep protecting your records and privateness with private records
Bypass firewalls of college wifi whilst you are at paintings or faculty
Also, Read How to Get iMessage on PC
Result
I’m hopeful about clearing the routes of download and installing VPN Master for Mac. But I again encouraged for the emulator. Get any emulators and without problems use VPN Master on Windows or Mac. Use chain-free internet. Enjoying the proxy net on a laptop without costing an unmarried penny. Wishing happy proxy browsing with VPN grasp software program.
More info Clicks Topforpc.com
0 notes
chaos2go · 8 years ago
Note
Ramble about the Deku Tree and Alden >U
Okay. Finally getting around to finishing this ramble. Sorry it took so long ;w; I had one of those times of “wow I really want to do this //does everything else” orz.
Just as a reminder, the stuff below is following my ‘headcanon’ of junk. So please don’t take it literally XD And I apologize for length. This is way too long haha.
So I’ve pretty much stated in my LoH lore before that I believe the Deku Tree can create life. It’s never really stated what he can do so I just roll with it given it makes explaining stuff a lot easier. And he’s supposed to be a deity of sorts anyway. He is a ‘spirit of nature’ after all so why not organic things? His specialty beyond ‘simple’ plants are forest fairies (aka guardian fairies), koroks, and his newest/most proud creations the kokiri (the intended form of the koroks).
Now even if he is a deity, it had taken him quite a few decades if not centuries to ‘perfect’ every sentient creation. He is proud of them and he enjoys watching them live their lives. They bring about a harmony he loves. They are not savage but rather innocent creatures. They have bouts of anger but they never outright really try to hurt anyone beyond survival needs. These creatures are his children. In all due respect, he wants to protect them beyond just his magic because he understands that his magic isn’t unstoppable. In fact, his magic is mostly that relating to creation of life.
Given legends of the past, the Deku Tree is worried about something bad eventually happening in his forest. This means that his creations will die in bloodshed rather than natural causes (not to say they can’t die to monsters or creatures in the forest in general). Not to mention his control over the Lost Woods is only so much. It has a strange magic of its own and the way to navigate it seems to change from time to time. The only way to protect his children is to create something unlike them.
The legends of the past speak of heroes. This would be something he would believe in but there are other things that stood out too. Robots, machines, and even of swords that have spirits. A lot of his interest went into these ‘mechanical’ aspect but the resources to make a machine let alone an understanding on how to make one was just outright lost. A sword spirit however was more in his field given his magic. It sounded a lot more organic than trying to make a machine. He put many fairies to work to try and find information on creating a sword spirit but not a lot of information was returned. Still it was enough for him to make an attempt and a chance at extra protection for his organic creations.
It took a lot of tries to actually create Alden properly. Creating life was pretty simple in comparison to making a metal statue mostly made of magic live. For a time he gave up and thought about perhaps making a new race to protect the forest. But then what to give them? He didn’t want to create any sort of monsters or have the creature(s) turn into them. And what if they died for some reason? There were so many variables that he wanted a constant. It needed to have a little consistency like he did. Having a protector of the forest meant sacrificing some things that made organic life better in his opinion. Plus it couldn’t die as easily.
A few more tries were given with more success but nothing solid. At times he’d end up with metal lumps, other times a spirit that only survived until the gem collapsed, or just a spirit that died for no reason. Eventually Alden was created using pieces of these spirits (in terms of metal body, not gems) and there is a celebratory moment. However the moment is somewhat shattered when he realizes Alden isn’t anywhere near what he expected. The spirit is outright confused upon creation and doesn’t know what to do. Even though he’s seen others have this problem, the fact Alden doesn’t shatter right away brings some pain. He’s lifeless compared to the organic creations. There is little will beyond asking for instruction on what to do. This really makes the Deku Tree regret his decision. Thankfully the fairies (and a few koroks) step in on the Deku Tree’s silence to make Alden start to ‘live’.
The Deku Tree gives Alden a simple purpose of protecting the forest before instructing him to meet the kokiri he will be protecting. Given Alden is just outright do and ask only simple -if not stupid- questions, he just pops out and gets scared by the reaction he got. Just backlash. He was told not to fight them yet he got rocks and sticks thrown at him. His instinct did want him to fight back. Instead he retreats and asks what he did wrong. The fact Alden couldn’t come up with making a disguise is actually somewhat troubling for the Deku Tree despite there being some promise given how he reacted to the event. There was a little hurt in how he acted which was a good sign of life.
From there the Deku Tree instructs him to make a disguise to fit in amongst the kokiri. The actual disguise takes a lot of work and quite a few attempts before he fits in enough for the kokiri to let him be. He actually had to observe -alongside getting feedback from his partner fairy- and choose. Thing is, even with a disguise to fit in he still lacked basic things others could do. He couldn’t emulate eating, sleeping, he ‘cheated’ at games, etc. He had to learn how to be a child and fitting in became a priority. In all honesty, it was part of his purpose whether or not it was intended.
Alden’s frustrations with fitting in became apparent to most in the forest. It actually became a bit of a joke and he didn’t mind playing to it to fit in. However being laughed at still stung him. Thankfully during his existence thus far the Deku Tree tried to teach him through stories. It was a thing he did every night with Alden when the kokiri were sleeping in order for Alden to learn more about the world he was in, the kokiri, and just how to ‘live’. Stories of heroes and such became Alden’s favorite as he could relate to them more because of what he is. Every once in a while a kokiri came too which meant Alden could observe a bit.
All in all, this was a big effort. More than the Deku Tree wanted to do. He honestly felt awful for creating Alden to be so lifeless at first but was so hopeful with how much he was growing. Even if he was a bully from time to time, he still was trying to live. Still he was a spirit with little soul. Alden wasn’t completely stupid or extremely smart. And he didn’t have a large range of emotions but rather a collection of emulations and reactions he understood for certain situations. He could be angry at the right moments or emulate happy at the right moments. Very little things were genuine unless it involved his purpose, a wrongdoing, or a chance to show off his powers. Really the only plus of anything there too was his speed, magical abilities (at the time due to the Tree’s power), and his skill with the sword. Unlike most others (including most people he’s met), the Deku Tree sees that Alden is mostly a machine of reaction at the proper times. And honestly, that is how I see him too. A very well studied one that goes to extremes. But back to the tree who wishes he could make Alden ‘real’.
The arrival of Link to the forest didn’t help Alden grow at all either. Especially when the Deku Tree could observe how little Alden changed. He was confused by the baby (as were many kokiri) but Link just had an understanding of everything so much easier. For a time, Alden even distanced himself from the kokiri as Link was growing because he couldn’t understand what the heck a baby was or what it was doing. The baby was annoying as far as he was concerned and he didn’t want to break Link either. He was more fragile than a fairy and cried every time he was forced to interact. If anything, he only got more confused on Link growing up. Despite knowing how Link got there and bringing him to the Deku Tree in the first place, Alden never once mentions this to Link. And in fact, he ends up being on of Link’s bullies given he chooses to be with Mido due to Mido’s status as leader.
Upon Ganondorf doing his crap in OoT, he honestly hoped that Alden would have died in that attack in some respect. Alden wasn’t a strong spirit but rather a mostly innocent one that had a hard time understanding how to ‘live’. Destroying him would be a good thing in that respect. At the same time, Alden was a great creation and he didn’t want him to die. Alden was dutiful and did everything in his power despite being bested. Alden chose to defend when he clearly could have easily stayed out of the situation. The lack of a real choice and the obligation to do his purpose is what could have saved the Deku Tree. Ultimately it would help shape Alden further though.
Skipping through Alden blaming Link for the Deku Tree’s death, revealing himself to Link, and outright continuing bullying, we get through the Forest Temple. The sprout emerges from the ground and isn’t exactly the same one as before. However it still carries some regret about Alden. It was partly saddened to see Alden still existed but glad to see he was still trying to do what he was created for. There was a sense of relief that he at least did one thing right with Alden. On the other hand, Alden didn’t consider the new sprout to be the same tree but wanted to listen.
The sprout specifically tells him that the old tree wanted to give him new purpose. Those being 1- Continue to protect the forest to the best of your abilities, 2- Do what you can to help Link, and 3 - Live your own life. The last one having the most emphasis which only confuses Alden. His entire ‘life’ has been fitting in and protecting the forest. So really he puts the second job as his priority. And that only leads to more issues given he is set on his duties and he is a spirit of reaction.
But that about sums it up without jumping to other games or LoH. Sorry it turned into more about the overall arc of his story. But eeeeh lemme just state this. There is a deep regret the Deku Tree carries about Alden. Alden however is a creature of reaction and learned behaviors rather than his own being. Given enough time, he would assimilate into another culture. Fitting in is his ‘life’ and little things do confuse him. Why a certain way of dressing? Why are some actions more preferred than others? He has many questions but refuses to ask them and instead just tries things in hopes of positive reactions when able. Otherwise he will observe unless he feels brave. As I said, Alden isn’t smart or dumb. He reacts. His entire character is about proper reaction rather than being him. His entire emotional range goes from extremely angry to extremely happy or extremely sad in a matter of seconds. There is very little inbetween so it can be as if he is hyperactive. The only time he tends to sound mature is when he feels there is nothing to react to and can state what he wants. It is confounding to him to be outside of the forest until he realizes that children can get away with certain things. He uses his childlike nature to Link’s advantage when the adult Link cannot do things. Fi has her smarts, Ghira has his emotions, Alden has a mix in terms of just reacting in the proper way at the proper time (which can be messed up!). So more or less he understands to an extent when to be happy, sad, etc.
To quickly jump to another games since I rambled about the rest, Alden’s second purpose becomes a major focus for the MM game. Especially since he becomes even weaker. Alden’s focus is broken to a point and he has a loss of powers. At times he is a hindrance to Link. At the same time, it also allowed him to speak his mind more freely. If anything he sounds a tad more intelligent than before if not emotional. He thinks about things and realizes why people might enjoy it. He’s seen a lot more in life than he ever would have in the forest. Being lost in these thoughts become is downfall however. There are joys/fears/etc. he’ll never understand and it kinda scares him a little. And it scares him even more that he won’t be able to protect Link from it. In the end he fulfillshis third purpose before he is ultimately destroyed. He spends time with Linkdespite time travel and enjoys things he hasn’t before. And as an upgraded sword, he can continue to protect Link. But that’s for that version.
Come LoH, the Deku Tree gets to meet Alden once again. There isgreat disappointment in knowing that Alden was left behind by Link but also ahappiness in seeing that he’s trying so hard to help someone else. Alden has chosen to continue his job and his reactions give more ‘life’. He seesKalla has rubbed off on him and he’s actually happy to hear Alden reject himwhen he states that he should stay. Still Alden is a lost cause as he seesgiven he is so strung to his purpose that living will never really happen. He’s still attaching himself to a forest dweller despite wanting to be outside of the forest. And the only reason Alden states he wants to stay outside is to protect the forest. Sothere will always be a loss for this magical life he created rather thanbiological. Little does the Deku Tree understand though that if Alden was to stay, he’d try to leave. Alden does want to protect the forest but understanding others to some degree might help. He in no way wants to be like them (he believes himself a kokiri after all) but it means a possible means to an end if he has to fight them.
2 notes · View notes
planetarduino · 6 years ago
Text
Hands-On with New Arduino FPGA Board: MKR Vidor 4000
Hackaday brought you a first look the Arduino MKR Vidor 4000 when it announced. Arduino sent over one of the first boards so now we finally have our hands on one! It’s early and the documentation is still a bit sparse, but we did get it up and running to take the board through some hello world exercises. This article will go over what we’ve been able to figure out about the FPGA system so far to help get you up and running with the new hardware.
Just to refresh your memory, here’s what is on the Vidor board:
8 MB SRAM
A 2 MB QSPI Flash chip — 1 MB allocated for user applications
A Micro HDMI connector
An MIPI camera connector
Wi-Fi and BLE powered by a U-BLOX NINA W10 Series device
MKR interface on which all pins are driven both by SAMD21 (32-bit ARM CPU) and FPGA
Mini PCI Express connector with up to 25 user programmable pins
The FPGA (an Intel/Altera Cyclone 10CL016) contains 16K Logic Elements, 504 KB of embedded RAM, and 56 18×18 bit HW multipliers
Sounds good. You can get more gory technical details over at Arduino and there’s even a schematic (.zip).
Documentation
Documentation is — so far — very hard to come by but the team is working to change that by the day. Here are the resources we’ve used so far (in addition to the schematic):
A getting started guide
A GitHub site with three repositories: An example for general I/O in the FPGA, an example for video, and a stripped down example that loads an unknown — possibly default — bitstream
A very generic document about FPGA coding
The forum for the MKR 4000
In addition, Arduino just released an example FPGA project for Quartus. I’ll explain what that means in a bit.
Get Up and Running with the Arduino Desktop IDE
Despite the getting started guide, it doesn’t appear the libraries are usable from the cloud-based IDE, so we followed the instructions to load the beta board support for the MKR 4000 into our desktop IDE. Be aware that the instructions show the “normal” SAMD board package, but you actually want the beta which says it is for the MKR 4000. If you search for SAMD in the Boards Manager dialog, you’ll find it (see the second entry in the image below).
  The libraries we grabbed as ZIP files from GitHub and used the install library from ZIP file option with no problems.
Tumblr media
What’s the Code Look Like?
The most interesting part of this board is of course the inclusion of the FPGA which left us wondering what the code for the device would look like. Browsing the code, we were a bit dismayed at the lack of comments in all but the JTAG code. We decided to focus first on the VidorPeripherals repository and dug into the header file for some clues on how everything works.
Looking at VidorPeripherals.h, you can see that there’s a few interesting I/O devices include SPI, I2C, UART, reading a quadrature encoder, and NeoPixel. There’s also a few headers that don’t exist (and presumably won’t get the define to turn them on) so don’t get too excited by some of the header file names until you make sure they are really there.
Then we decided to try the example test code. The library provides a global FPGA object that you need to set up:
// Let's start by initializing the FPGA if (!FPGA.begin()) { Serial.println("Initialization failed!"); while (1) {} } // Let's discover which version we are running int version = FPGA.version(); Serial.print("Vidor bitstream version: "); Serial.println(version, HEX); // Let's also ask which IPs are included in this bitstream FPGA.printConfig();
The output of this bit of code looks like this:
Vidor bitstream version: 1020107 number of devices 9 1 01000000 MB_DEV_SF 1 02000000 MB_DEV_GPIO 4 04000000 MB_DEV_I2C 6 05000000 MB_DEV_SPI 8 06000000 MB_DEV_UART 1 08000000 MB_DEV_SDRAM 4 09000000 MB_DEV_NP 11 0A000000 MB_DEV_ENC 0 0B000000 MB_DEV_REG
In many cases, the devices provided by the FPGA are pretty transparent. For example, here’s another snip from the example code:
// Ok, so we know now that the FPGA contains the extended GPIO IP // The GPIO pins controlled by the FPGA start from 100 // Please refer to the online documentation for the actual pin assignment // Let's configure pin A0 to be an output, controlled by the FPGA FPGA.pinMode(33, OUTPUT); FPGA.digitalWrite(33, HIGH); // The same pin can be read by the SAMD processor :) pinMode(A0, INPUT); Serial.print("Pin A0 is "); Serial.println(digitalRead(A0) == LOW ? "LOW" : "HIGH"); FPGA.digitalWrite(33, LOW); Serial.print("Pin A0 is "); Serial.println(digitalRead(A0) == LOW ? "LOW" : "HIGH");
That’s easy enough and it is nice that the pins are usable from the CPU and FPGA. We couldn’t find the documentation mapping the pins, but we assume it is coming.
Using, say, an extra serial interface is easy, too:
SerialFPGA1.begin(115200); while (!SerialFPGA1); SerialFPGA1.println("test");
Bitstream
So where’s the FPGA code? As far as you can tell, this is just a new Arduino with a lot of extra devices that connect through this mysterious FPGA object. The trick is that the FPGA code is in the library. To see how it works, let’s talk a little about how an FPGA operates.
When you write a program in C, that’s not really what the computer looks at, right? The compiler converts it into a bunch of numbers that tell the CPU to do things. An FPGA is both the same and different from that. You write your program — usually in a hardware design language like Verilog or VHDL. You compile it to numbers, but those numbers don’t get executed like a CPU does.
The best analogy I’ve been able to think of is that an FPGA is like one of those old Radio Shack 100-in-1 electronic kits. There are a bunch of parts on a board and some way to connect them with wires. Put the wires one way and you have a radio. Put them another way and you have a burglar alarm. Rewire it again and you have a metal detector. The numbers correspond to wires. They make connections and configure options in the FPGA’s circuitry. Unless you’ve built a CPU, there’s nothing in there examining and acting on the numbers like there would be with a CPU.
The numbers that come out of an FPGA tool is usually called a bitstream. Someone has to send that bitstream to an FPGA like the Cyclone onboard the Arduino every time it powers up. That someone is usually a memory device on the board, although the CPU can do it, too.
So that leads to two questions: Where is the bitstream? How does it get to the FPGA?
The answer to the first question is easy. If you look on Github, you’ll see in the library there is a file called VidorBase.cpp. It has the following lines:
__attribute__ ((used, section(".fpga_bitstream"))) const unsigned char bitstream[] = { #include "app.ttf" };
What this means if there is an array called bitstream that the linker will put it in a specially marked section of memory. That array gets initialized with app.ttf which is just an ASCII file full of numbers. Despite the name, it is not a TrueType font. What do the numbers mean? Hard to say, although, in theory, you could reverse engineer it just like you can disassemble binary code for a CPU. However, it is the configuration required to make all the library calls we just talked about work.
The second question about how it gets to the FPGA configuration is a bit of a mystery. As far as we can tell, the bootloader understands that data in that section should get copied over to the FPGA configuration memory and does the copying for you. It isn’t clear if there’s a copy in the main flash and a copy in the configuration flash but it seems to work transparently in any event.
There’s a checksum defined in the code but we changed it and everything still worked. Presumably, at some point, the IDE or the bootloader will complain if you have the wrong checksum, but that doesn’t appear to be the case now.
By the way, according to the Arduino forum, there are actually two bitstreams. One that loads on power-up that you would rarely (if ever) change. Then there is another that is the one included with the library. You can double-click the reset button to enter bootloader mode and we suspect that leaves the FPGA initialized with the first bitstream, but we don’t know that for sure. In bootloader mode, though, the red LED onboard has a breathing effect so you can tell the double click works.
What about my FPGA Code?
This isn’t great news if you were hoping for an easy Arduino-like way to do your own FPGA development in Verilog or VHDL. Intel will give you a copy of Quartus Prime which will generate bitstreams all day for you. We think — but we aren’t sure — that the ASCII format is just a raw conversion from binary of the bitstream files.
Very recently, Arduino provided a Quartus project that would create a bitstream. This provides a few key pieces of the puzzle, like the constraint file that lets the FPGA compiler find the different parts on the board.
However, even with that project, you still have some reverse engineering to do if you want to get started. Why? Here’s what Arduino says about loading your own FPGA code (we added the emphasis):
Quartus will produce a set of files under the output_files directory in the project folder. In order to incorporate the FPGA in the Arduino code you need to create a library and preprocess the ttf file generated by Quartus so that it contains the appropriate headers required by the software infrastructure. Details of this process will be disclosed as soon as the flow is stable.
Programming the FPGA is possible in various ways:
Flashing the image along with Arduino code creating a library which incorporates the ttf file
Programming the image in RAM through USB Blaster (this requires mounting the FPGA JTAG header). this can be done safely only when SAM D21 is in bootloader mode as in other conditions it may access JTAG and cause a contention
Programming the image in RAM through the emulated USB Blaster via SAM D21 (this component is pending release)
In addition, the repository itself says that some key pieces are missing until they can work out licensing or clean up the code. So this gets us closer, but you’d still need to reverse engineer the header from the examples and/or figure out how to force the processor off the JTAG bus. The good news is it sounds like this information is coming, it just isn’t here yet.
Of course, you are going to need to understand a lot more to do anything significant. We know the FPGA is set in the AS configuration mode. We also asked Arduino about the clock architecture of the board and they told us:
[The CPU] has its own clock which is used to generate a 48 MHz reference clock that is fed to the FPGA (and that can be removed at any time to “freeze” fpga). In addition to this reference clock, [the] FPGA has an internal RC oscillator which can’t be used as [a] precise timing reference for tolerance issues but can be used in case you don’t want [the CPU] to produce the reference clock.
Of course, the FPGA has a number of PLLs onboard that can take any valid clock and produce other frequencies. For example, in the vision application, Arduino demonstrated, the 48 MHz clock is converted into 24 MHz, 60 MHz, 100 MHz, and 120 MHz clocks by PLLs.
Mix and Match?
One thing that is disappointing is that — at least for now — you won’t be able to mix and match different FPGA libraries. There is exactly one bitstream and you can’t just jam them together.  Although FPGAs can often be partially configured, that’s a difficult technique. But we were a little surprised that the IDE didn’t understand how to take libraries with, for example, EDIF design files for IP that would all get compiled together. That way I could pick the Arduino UART and mix it with the Hackaday PWM output module along with my own Verilog or VHDL.
The way things are structured now you will have one bitstream that is precompiled by another tool (probably Quartus for the foreseeable future). It will match up with a particular C++ library. And that’s it. Doesn’t matter how much of the FPGA is left over or how much of it you really use, you will use it all for the one library.
Of course, you can load another library but it is going to replace the first one. So you only get one set of functions at a time and someone else gets to decide what’s in that set. If you roll your own, you are going to have to roll your own all the way.
What’s Next?
It is still early for the Arduino Vidor. We are hopeful we’ll get the tools and procedures necessary to drop our own FPGA configurations in. It would be great, too, if the stock libraries were available in source format including the Verilog HDL. The recent GitHub release shows quite a bit, although it isn’t all of the examples, it is probably enough if we get the rest of the information.
As for a more intuitive interface, we don’t know if that’s in the cards or not. We don’t see much evidence of it, although posts on the Arduino forum indicate they will eventually supply an “IP Assembler” that will let you compose different modules into one bitstream. We don’t know if that will only work with “official” modules or not. However, we know the Arduino community is very resourceful so if we don’t get a good ecosystem it will not surprise us if someone else makes it happen. Eventually.
For now, we will continue to play with the existing bitstreams that become available. There are some neat new features on the CPU, too. For example, you can map two of the unused serial modules.  There’s a hardware-based cooperative multitasking capability. As more details on the FPGA emerge, we’ll keep you posted and if you learn something, be sure to leave word in the comments so everyone can benefit.
Hands-On with New Arduino FPGA Board: MKR Vidor 4000 was originally published on PlanetArduino
0 notes