Latest Visual Studio updates now bring official ARM/ARM64 support for Desktop Apps, little hidden, but here is how to enable it.
Being able to compile Windows ARM apps, I wanted to try to actually run them, but … on what exactly? There are some developer evaluation boards. Apparently someone managed to run it on Raspberry PI. Most importantly however you can run Windows 10 ARM64 on QEMU. This is some serious Fun With Virtualization!
I’m not claiming to be the first. Clever people have already done it. I just wanted to make it little easier for the lazier of us. Here is how.
Follow the link above but skip the shady UUP business in step #3 and download ready made iso instead. You can google the iso image from windows.cmd and it will take you to this link. You need the rest of the files like UEFI firmware and virtio drivers.
For the even more impatient here is a ready to run image with Windows pre-installed. Because QEMU now comes with DLL HELL I’m not including it in the archive. You will have to install it separately.
Go have fun and port some apps to ARM64 with free community edition of Visual Studio. I’m going to start with Aclock 🙂
(This is a guest post by Antoni Sawicki aka Tenox)
In a recent blog post Wanted: Console Text Editor for Windows I lamented the lack of a good console/cmd/PowerShell text editor for Windows. During the process I made a rather interesting discovery, that in a fact there IS a “native” Windows, 32bit, console based text editor and it was available since earliest days of NT or even before. But let’s start from…
…in the beginning there was Z editor. Developed by Steve Wood for TOPS20 operating system in 1981. Some time after that, Steve sold the source code to Microsoft, which was then ported to MS-DOS by Mark Zbikowski (aka the MZ guy) to become the M editor.
The DOS-based M editor was included and sold as part of Microsoft C 5.1 (March 1988), together with the OS/2 variant, the MEP editor (perhaps M Editor Protected-mode). The official name of M/MEP was simply Microsoft Editor. The same editor was also available earlier (mid-1987) as part of the MS OS/2 SDK under a different name, SDKED. Note that normally SDKED insists in operating in full screen mode. Michal Necasek generously spent his time and patched it up so that it can be run in windowed mode for your viewing pleasure.
However my primary interest lies with Windows. The NT Design Workbook mentions that an early days self-hosting developer workstation included compiler, some command line tools and a text editor – MEP. In fact these tools including MEP.EXE can be found on Windows NT pre-release CD-ROMs (late 1991) under MSTOOLS. It was available for both MIPS and 386 as a Win32 native console based application.
MEP.EXE was later also available for Alpha, i386, MIPS, and PowerPC processors on various official Windows NT SDKs from 3.1 to 4.0. It survived up to July 2000 to be last included in Windows 2000 Platform SDK. From time perspective it was rather unfortunate that it was buried in the SDK and overshadowed by Visual Studio instead of being included on Windows NT release media.
The Win32 version of MEP also comes with an icon and a file description which calls it Microsoft Extensible Editor.
But that’s not the end of the story. The editor of many names survives to this day, at least unofficially. If you dig hard enough you can find it on OpenNT 4.5 build. For convenience, this and other builds including DOS M, OS/2 MEP and SDKED, NT SDK MEP can be downloaded here.
Digging in through the archive I found not one but two copies of the editor code are lurking in the source tree. One under the name MEP inside \private\utils\mep\ folder and a second copy under name Z (which was the original editor for TOPS) in \private\sdktools\z folder. Doing a few diffs I was able to get some insight on he differences. Looks like MEP was initially ported from OS/2 to NT and bears some signs of being an OS/2 app. The Z editor on the other hands is a few years newer and has many improvements and bug fixes over MEP. It also uses some specific NT features.
Sadly it looks like the Z editor for Win32 was never released anywhere outside of Redmond. All the versions outlined so far had copyrights only up to 1990, while Z clearly has copyright from 1995. Being a few years newer and more native to NT I wanted to see if a build could be made. With some effort I was able to separate it from the original source tree and compile stand alone. Being a pretty clean source code I was able to compile it for all NT hardware platforms, including x64, which runs comfortably on Windows 10. You can download Z editor for Windows here.
Last but not least there is a modern open source re-implementation of Z editor named K editor. It’s written from scratch in C++ and LUA and has nothing to do with the original MEP source code. K is built only for x64 using Mingw. There are no ready to run binaries so I made a fork and build.
The author Kevin Goodwin has kindly included copies of original documentation if you actually want to learn how to use this editor.
(This is a guest post by Antoni Sawicki aka Tenox)
Since 2012 or so Microsoft is pushing concept of running Windows Server headless without GUI and administering everything through PowerShell. I remember sitting through countless TechEd / Ignite sessions year after year and all I could see were blue PowerShell command prompts everywhere. No more wizards and forms, MMC and GUI based administration is suddenly thing of a past. Just take a look at Server Core, WinPE, Nano, PS Remoting, Windows SSH server, Recovery Console and Emergency Management Services. Even System Center is a front end for PowerShell. Nowadays everything seems to be text mode.
This overall is good news and great improvement since previous generations of Windows, but what if you need to create or edit a PowerShell, CMD script or some config file?
Oooops, looks like you are screwed. Seems that Redmond forgot to include most crucial tool in sysadmin’s job – a simple text mode editor. WTF Microsoft?
So, are there any 3rd party alternatives? Yes, and there are and quite a lot of them! Unfortunately none are perfect and most are old and unmaintained. This article aims to be a grand tour of whatever is available out there.
Note that throughout the article I will be repeatedly referring to a “portable” editor, that for me means single .exe file that can be carried around on a USB pen drive or network share. I also cry a lot about 64-bit Windows builds because I work a lot in WinPE and other environments where syswow64 is not available.
First lets start with most obvious choices well known through intertubes. If you search for a Windows Console Editor VIMand Emacswill naturally pop up first.These editors don’t need any introduction or praising. I use VIM every day and Emacs every now and then. These two had ports to Windows for as long as I can remember and in terms of quality and stability definitely up top. The problem is that both are completely foreign and just plain unusable to a typical Windows user and learning curve is pretty steep. Also portability suffers a lot at least for Emacs. Both editors come with hundreds of supporting files and are massive in size. Emacs.exe binary is whopping 83 MB in size and the zip file contains two of them just in case. Whole unpacked folder is 400 MB.
VIM is fortunately much much better you can extract single vim.exe binary from the package and use it without much complaints.
When talking about about VI and Emacs hard not to mention some more historical versions. Emacs’ little brother MicroEmacs has been available for Windows since earliest days. I’m not going to attempt to link to any particular one since there are so many flavors.
VIM little brother VI also comes in different shapes and forms. Lets take look at a few.
Stevie is a very special case. Rumor has it, this editor played crucial role in development of Windows NT itself or has been used since earliest days of NT as part of the private SDK. If you could ever look at Windows source code I’d bet you could probably find it buried inside. Because it was ported by folks at Redmond the quality should be pretty good. Unfortunately README states “this is an incomplete VI that has not been fully tested. Use at your own risk.”. For a historical note according to Wikipedia, Stevie port to Amiga has been used by Bram Moolenaar as a base source code for VIM.
One particularly interesting case is VI editor from Watcom compiler suite. It has very nice TUI known from MS-DOS editors, syntax highlighting and online help. One of nicest versions of VI available for Windows. Small portable and just all around handy editor. This is probably my main to go text editor when working on WinPE or Server Core. Unfortunately not very well known. I hope it can gain some popularity it deserves.
Thanks to Federico Bianchi just learned that there is a BusbyBox port to Windows having both 32bit and 64bit builds, 100% portable as just a single exe file! Most importantly it contains a working vi editor that understands window resizing and Win32 paths. I’m going to be keeping this one around. Awesome job Busybox! As a last thought I wish they also included Nano.
I don’t want this article to be all about VI and Emacs clones. Let this nice color menus be a segue to more native Windows / DOS editors at least departing from hardcore keystrokes and Unix.
For a change in theme lets look at SemWare TSE Pro, the editor that originally started as QEDIT for DOS and OS/2. It has most advanced features one could ever imagine for a text mode editor. Including resizable windows, hex editor, macros and spell checker. I really wish I could use it in everyday’s life. Unfortunately TSE has some drawbacks, it lacks portable version and install is little cumbersome. Currently no x64 build but the author is working on it. TSE is not free, the license is $45 but it allows to install on as many machines as you need.
Next one up is Brief. It used to be very popular in it’s own time and sparked quite bit of following as there are numerous of editors being “brief style”. It’s a nice and small console based text editor. It comes in two versions basic (free) and professional (paid). The pro version supports splitting in to multiple windows regexp and unicode. Unfortunately it runs at $120 per user and there is no 64bit build or a portable edition.
There also is an open source clone of Brief called GRIEF. Flipping through the manual it has very impressive set of features including $120 windowing feature and macros. Unfortunately it’s rather unportable due to large amount of dll and other files. 64bit build could probably be made if someone wanted.
As we talk about less costly options there is Kinesics Text Editor aka KIT. It’s more well known if you search on google, completely free and after installing you can find and a x64 binary file! This makes it somewhat portable and able to run in WinPE for instance. Until recently the editor did not have 64bit version so I did not have chance to use it much in practice but the TUI appears to have a well rounded easy to use (F1 or right mouse click brings menus). It does’t seem to have any advanced features but it’s very stable and actively maintained. And frankly this is what matters for editing on the console. It may actually be the right missing Windows console editor.
Another one is Minimum Profit. It’s fully open source and it supports a lot of platforms in both windowing and text mode. It has a lot of interesting features such as syntax highlighting, spell checked and menus. It can’t be easily made portable as it needs a lot of files of it’s own scripting language. There is no Win64 build by default but one could probably make it with Mingw64. I also find that screen refresh is somewhat funky.
Lets look at somewhat well known FTE. It’s a very nice text editor available on many platforms such QNX, OS/2 and of course Windows. It has nice TUI, split windows, syntax highlighting, folding, bookmarks and tools for HTML authoring etc. Overall awesome editor falling short only to TSE. Support for NT console has been available since 1997. I have recently fixed couple of bugs and built a 64bit portable version.
One could also not forget Borland Turbo C IDE. Apparently there is an open source clone of the IDE as a regular editor called SETEdit. It’s multi platform editor with MS-DOS style windows and menus. Syntax highlighting macros and all regular amenities. Looks like DOS version can play MP3 songs while you code. There is a native WinNT build made with BCPP. To run on Windows you install the DOS version then overwrite dos exe file win NT exe. The editor is absolutely awesome, unfortunately currently doesn’t work in a portable manner and there is no x64 binary. However as it’s open source it could be probably made.
When talking about MS-DOS style windows, Norton Commander like file managers come to mind. There is one particular built specifically for Windows – FAR Manager. Written by author of WinRAR, originally shareware, but since 2007 it has been released under BSD license. FAR does come with a built in text editor hence it’s featured here. It’s actively supported and developed, and because it’s designed from ground up for Windows, it’s probably most stable and trustworthy of all applications in this post. I normally don’t use it that much, but I do keep a copy of it lying around when I need to do some more heavy lifting from Windows console. There is a 64bit binary by default but unfortunately FAR can be hardly made portable as it comes with 400 files.
When talking about Norton Commander clones lets not forget Midnight Commander, which does have an unofficial native Windows console build called mcwin32. Similar to FAR, MC has a very nice built-in text editor. MC overall seems far nicer than FAR but because it’s multi platform rather than WIndows specific and not officially supported I don’t trust it as much for day to day use.
When on topic of Unix, lets talk about GNU Nano. In it’s native habitat, it’s very popular and stable editor making it a perfect choice for a text mode console. Unfortunately Windows port is lacking quite a lot, especially for things like resizing Window or handling file names. The official build looks like a fusion of cygwin, mingw, pdcurses and other horrible stuff. Version that comes with Mingw/MSYS is not portable and so far I failed in attempts to build a static windows binary by hand. Nano predecessor UW Pico unfortunately never did have console terminal Windows port. Authors of Pine decided to make it semi graphical application with it’s own window, menus and buttons. Sad story for both Pico and Nano. Hopefully one day someone will make a 100% native Windows port.
Another non-vi and non-emacs Unix editor with Windows console port is JED. Frankly I have not used JED that much in the past although I did play with it in the 90s. This is the original web page of Jed editor. It does seem to have menus and multi windows. Unfortunately doesn’t look like it can be easily made in to a portable image.
Yet another more obscure editor is ED-NT which is DEC EDT clone. Unfortunately seems to be completely dead an unmaintained. Sources are still available through archive.org so perhaps it could be still looked after if someone wanted EDT editor on Windows.
When going through obscurities via archive.org one can also mention ZABED and more specifically Z95 which is a 32bit console version. I don’t know anything about the editor and I’m little too lazy to play with it extensively although pdf manual is available. Probably little too old and too obscure for every day use.
Perhaps even more obscure to a mere mortal is The Hessling Editor aka THE. It’s based on VM/CMS editor XEDIT. I did briefly use VM/CMS and XEDIT in early ’90 but I never liked it so much. THE comes in as a native Win32 binary. Not easily portable as it requires some additional files. Also no 64bit binary but source code is available.
Thanks to Andreas Kohl I have learned about X2 Programmers Editor which also has NT console version. The editor seems very nice and has extensive help, syntax highlighting, etc. Unfortunately I have never used this editor before. Last version has been released in 2008 which is not loo long ago but sadly there has been no update since. I hope the author will continue to maintain it.
Andreas also brought up Personal Editor, which comes as PE32 and PE64. Looks like really well maintained and stable editor designed and developed specifically for Windows. 64bit bit version is really cool however the editor doesn’t seem to be portable and $40 license will probably prevent me from using it professionally in environments where I would need it. Never the less looks like a very fine editor!
Another find is e3 editor. Pretty interesting stuff. It’s written in assembler and available on many operating systems including DOS and Windows. Looks like it’s still maintained as last version was released in 2016. It supports multiple modes, Wordstar, Emacs, Vi, Pico and Nedit by renaming or linking the main executable. It’s definitely portable as it doesn’t need any extra files and the exe is just 20KB (take that emacs!). Unfortunately because of assembler I don’t think there will be a 64bit release any time soon. Overall seem to be really cool to keep this one around.
A really cool last minute find is public domain TDE – Thomson-Davis Editor. Released not so long ago in 2007 it has 16, 32bit DOS and 32bit Windows console executable. It has DOS style menus,syntax highlighting, resizable windows and bunch of other features. Looks like a very handy editor. I don’t know how did I miss it. Since source code was available so I was able to make a x64 build. This is really untested so use at your own risk!
Also a recent find – shareware editor called Aurora. I never had a chance to use it in the past but after taking it for a quick spin I fell in love. The text mode UI it feels like it’s own windowing operating system! Originally for DOS, Unix and OS/2, Win32 port is relatively new. Unfortunately it’s no longer maintained or even sold. This is very sad because the editor is extremely cool. I hope the author may be willing to release the source code so it could be maintained.
Thanks to Richard Wells I have learned about OSPlus Text Editor. It’s a really cool little editor with Borland style TUI and multi windows. It doesn’t seem to have any advanced features but it does have a built in calculator and allows background play of WAV and MID. Also allows format conversion of various formats like Word, Write or RTF in to text using Microsoft Office converters. Pretty cool if you need to read Word based documentation on the text console. Sadly looks like the application is no longer maintained. I guess with little bit of luck a 64bit version could be compiled using Mingw64 or MSVC.
Also recently learned about HT. This is more intended as a binary/exe/hex editor and analyzer. However it seems to have an excellent plain text editor with HTML and C syntax highlighting. It doesn’t have very advanced features but one that stands out is a very detailed change log, much like Photoshop History. It shows you what exactly has been changed and in what order. This is pretty cool when doing heavy editing of some important files. The latest version is from 2015 and it’s 100% portable single exe. Unfortunately no x64 but I guess it should be easy enough to build one with Mingw64.
Just in freshly “re-discovered” – Microsoft Editor. This editor is a Win32 port of Mark Zbikowski’s port of Z editor to MS-DOS. It has been widely used with Microsoft C as M, MEP and and OS/2 SDK as SDKED. Shockingly looks like Windows NT did actually have a console mode text editor since it’s earliest days or even earlier. Included in Windows NT pre-release CDs and later on the official Windows NT/2000 SDKs, hiding in plain sight, was a Win32 console mode MEP.EXE. Only if Microsoft included this editor with Windows itself the world would be a different place. I have recently dug it out of SDK and made available here. There also are additional builds (including x64) here. There is a dedicated blog post about it.
As with many commercial editors there is an open source edition of Z named K_Edit. It is a modern re-implementation from scratch written in C++ and LUA. It builds only on 64bit Windows and there probably is no chance for any other version. As of today author of K doesn’t provide ready binaries but I was able to make one myself.
Reader brdlph pointed me to a pretty fresh editor named Textadept. It’s a cross platform, both GUI and TUI editor. Windows console version uses Curses, but it performs remarkably well. It has a look and feel of a modern programmer’s text editor with syntax highlighting, line numbers, etc. The zip archive comes with over 400 files so it’s rather not portable. Also there seem to be no Windows 64bit build although there is one for Linux. The application seem to be very well maintained and the latest release is from January 2018!
Reader Andreas Kohl mentioned SlickEdit, which was a text mode editor for DOS, OS/2 and Windows console (before Visual SlickEdit stole it’s name). According to the company’s employee an OS/2 version of the editor was used by some Windows NT team members to develop their operating system. In early days, SlickEdit CTO traveled to Redmond to port the application to a barely yet functioning NT console system so that the developers could use native dev environment. SlickEdit was most likely the very fist commercial application for Windows NT. It was available in 386, Alpha, MIPS and PowerPC editions. I’m hoping to obtain old evaluation copies. So far I was able to get this screenshot:
Last but not least, a new kid on the block, is Micro. It’s a modern times editor for all platforms including Windows. It looks really cool and seem to have all recent amenities from editors such as Sublime Text or Atom. Multi windows, syntax highlighting and even it’s own built in terminal emulator for running a subshell. Micro is 100% portable and comes in as a single x64 exe file. It’s 10 MB size but I think well worth keeping around. Unfortunately it doesn’t have built-in file browser. Yes, there is a plugin for it but I don’t know how to use it. Also seems to have issues with Windows style path names. However I’m really happy that a new editor has been developed in recent times. It has a great chance of becoming the missing Windows text mode editor for the future! Definitely worth keeping an eye on it.
With this positive news it’s time to wrap up. To summarize there currently is no perfect text mode editor for Windows. I hope that Microsoft can one day step up and provide one. In the mean time I usually stick around to OpenWatcom VI and FAR Manager. For people who do not wish to learn VI, Kinesics KIT may probably be the most perfect editor in short term and Micro in the future. I also hope someone can make a good GNU Nano port using native Win32 APIs without going to pdcurses and cygwin.
Thank you for all suggestions! Have I forgotten or missed any editor? Please let me know and I will promptly add it to the list! Note: please do not include editors that work under Cygwin.
(This is a guest blog post by Antoni Sawicki aka Tenox)
A Christmas gift for those who run Windows NT on Alpha AXP, MIPS or PowerPC. These ports of Windows are really lacking some good applications. Yes, there are utilities and games, Alpha even has Microsoft Word, Excel and Oracle DB, but apart from that there are just no serious apps available.
Calamus is a professional DTP (Desktop Publishing) software. It’s still actively developed and sold by German company Invers. If you want to play around with the latest version you can download a 30 day trial and even purchase the Lite version for 99 Euro on calamus.net. There are versions for Windows, Mac and Atari ST.
I had pleasure of using Calamus professionally on Atari for several years in early 90s. At the time when 486 could have max 64MB RAM and 640×480 VGA, a high end Atari TT packed 256MB Magnum card and 1280×1024 framebuffer and it was much cheaper than Mac. The memory and high resolution displays were really needed to process large images and complex page layouts. You can read more about my Atari TT restoration efforts.
In the mid ’90s DMC decided to port Calamus to Windows in order to expand to other hardware platforms. An interesting fact is that the port isn’t really a full source code rewrite, which would be impossible due codebase size. Even that Calamus has 100% native Windows GUI and a lot of functionality has been rewritten, inside the software lives a small embedded Atari ST emulator that does on fly translation of some of the Atari/m68k ABI. You can read a bit about it here.
At the time of the port, Windows NT was still being actively developed on RISC platforms, so thankfully Calamus has been compiled on all of the available NT CPUs. Alpha version was probably the most popular choice because of performance. High end Alphas were the fastest machines capable of running Windows among all hardware. When publishing firms were thinking about upgrades they naturally looked at DEC as a first choice as regular PCs weren’t powerful enough.
And this is how I finally found a copy Calamus NT with support for RISC CPUs. It took me quite a lot of time and resources to track down and obtain copy of surviving media from owner of a publishing studio. This is how it looks when you first install it:
Note that there were separate builds for 386/485 and Pentium CPUs. Also as you can see the disk contains a demo version which now Santa is delivering to you. This is a fully functional trial that expires after some time. If you ever lacked serious apps for your RISC NT machine, you can how play with one! The demo version is distributed with permission of Invers Software.
If you don’t have one of these machines you can still run Windows NT MIPS on Qemu:
And finally to the goods. You can download following files:
(this is a guest post from Antoni Sawicki aka Tenox)
I was little busy and I didn’t process new binary submissions for over three years. Here they are, more or less in order of appearance.While not a lot for 3 years they are very important historically! Also almost all contributed, thank you all!
AmigaOS bootable floppy disk by Jason Stevens.
Androidport by Adam Gutman. See below, it also runs on a watch!
MVME PowerPC Linuxby Plamen Mihaylov.
ELKS by Lorenzo Gatti. This also includes a boot image! It’s hard to believe I somehow missed ELKS in my own efforts. Also there is a boot image available.
MVME M68kNetBSDby Plamen Mihaylov. Thank you for collecting all these beautiful and rare Motorola MVME machines!
HeliOSon Transputerby Michael Bruestle. Oh boy I have been looking for this for quite some time! Unless you started 30 years ago, transputters are rather hard to get into from scratch. This port should also work on Atari ATW800. I wish I had one to test 🙂
BSDI 1.1 by Dima Naumov. This is very cool because of all the flavors of BSD I somehow missed this one! I’m still trying to figure out BSDi, BSD/OS and BSD/386 naming convention. Someone please help.
VxWorks by myself. While VxWorks port existed before it was only compiled for a simulated Pentium (SIMPENTIUM) rather than actual target CPUs. I have came across a set of compilers and built it for ARM, MIPS, PowerPC, SH and Xscale. I still don’t have SPARC. See this post about how to run your own target on VMware.
ReactOSby Dima Naumov. While it’s expected that native Win32 aclock will run on ReactOS, this is a build targeting the OS specifically. Sharp X68000 running Human68k OS, by Jason Stevens. That’s a nice surprise! I’ve been looking for this one for a while. No screenshot for but hopefully Jason will be able to produce one. Human68k has a very cool looking GUI!
I happen to own the original set of floppy disks that Microsoft produced and shipped to various OEMs such as IBM, Radio Shack, Intel, SCO, etc.
The set comes with a development kit which now you can run on a VM. You can read some more about efforts to virtualize Microsoft/IBM Xenix on Michal’s Blog.
Venix/86 on AT/286 by Jim Carpenter. This port was delivered as part of a virtualization challenge, which was won by Jim. Thank you and congratulations again! There also is a runner up entry by Mihai Gaitos which has some fascinating details including about Aurora software that came with the system.
Cisco 1700 (PPC) emulated via Dynamips by Jason Stevens. This one is also very close to my heart because of my networking past and present. I will definitely want to try load it on a physical device! Jason is also working on MIPS version so hopefully this will run on Cisco 2500 and up.
Android Wear. Parker Reed send me this photo of Aclock Android by Adam Gutman running on an actual watch! Wow this is so cool!
BSD/OS 4.1 aka BSDI for SPARC by Plamen Mihaylov. Also thanks to Cory Smelosky for releasing the images!
EFI firmware on various platforms, such as x86, x64, ia64, arm32 and 64 by Natalia Portillo aka Claunia. This aclock can be launched from UEFI Shell or by running EFI standalone application if EFI shell is not available.
This is a screenshot of aclock EFI x64 running on HP DL380 via iLO remote console.
Linuxand FreeBSDbuilds for ARMand PowerPCby Natalia Portillo. Claunia sent me a Christmas package with a aclock builds lot of missing CPUs for Linux and FreeBSD, both 32bit and 64bit PPC and ARM for both OSes. Total 8 binaries!
Singularity on x86 by Natalia Portillo. SingularityOS was a research operating system from Microsoft. Rumor has it Microsoft wanted for it to eventually replace Windows NT line with managed code OS. As expected it didn’t perform too well and with doom of Windows Vista the project was eventually scrapped. Singularity development kit has been released to the public on CodePlex. Since the OS is text mode only, it was a natural target for Aclock. A port in C# (OMFG) has been created and the binary integrated in to the iso boot image.
RISC iX running on Acorn R260 by Raymond Stricklin aka Bear. I was scorching the earth looking for a working copy of RISC iX and there he had it. Thank you. It’s beautiful.
Minix 3 for ARM by Natalia Portillo. Latest release of Minix adds experimental support for ARM architecture. No network and framebuffer but aclock works over a serial console!
Again thank you for all your contributions!
If you want to to help contribute to aclock, there is a wanted list. Some of them come with a monetary reward. Please contact me before undergoing any major work as some of them are under way.
Also, aclock now lives on GitHub, for easier.. everything.
A few days ago I wrote a basic packet sniffer / analyzer for Windows for fun. I was working with raw sockets for another application and out of curiosity winged a small packet sniffer in just 200 lines of code. I actually used it already several times to resolve some firewall port blocking issues, instead of spinning up Wireshark, so I decided to release it to public.
Portable, a single, tiny exe
Easy to use
Doesn’t install any driver like libpcap
Extensible, just 200 lines of simple code
It’s very basic and doesn’t allow anything outside of simple unicast TCP, UDP and ICMP, most importantly layer 2, broadcasts, multicasts, etc are out of question
Currently it doesn’t directly support filtering, however you can just pipe it to findstr to filter for anything you want
Raw socket limitations are possibly the biggest issue, but if you just want to find out simple stuff like traffic going to a given port or ip address it’s a perfect little handy dandy tool to carry around.
To use snoopy you specific IP address of the interface on which you want to listen:
There also is a verbose mode which shows some more detailed protocol information:
Today I decode ICMP message types, TCP flags, sequence, ack and window numbers and DSCP, ECN, TTL and Dont Fragment flags for IP. I’m thinking of embedding /etc/protocols and /etc/services in a .h file to resolve them on the fly.
Just stumbled across this: someone has forked Windows NT 4.0 and created an open source version of it. But wait, forked what? Windows source code doesn’t live on Github. Is it ReactOS? No! Upon some digging, it was apparently born from the leaked source code of NT4.0, some W2K bits and 2003 WRK.
I spent a day evaluating NVIDIA GRID K1 card, which is a GPU for high end, graphics intensive desktop virtualization (VDI) deployments. Otherwise called vGPU. What does it actually mean?
As you can see on the stock photo, the card doesn’t have VGA, HDMI, DVI, DP or any video output port what so ever. The output happens purely through Remote Desktop Protocol (RDP) extension called RemoteFX. On VMware and Citrix it works little bit different but I will be covering Windows / Hyper-v installation only.
The GRID K1 is somewhat similar to Quadro card so the driver is not your usual GeForce package, but the experience is quite similar nevertheless. Upon installation you see 4 different physical GPUs in Device manager:
This works similarly to having multiple CPU cores that show up as separate processors in the OS. Here is a first fun fact: you can’t actually use any of these directly, as they simply have no output port and can’t display any graphics… Instead, you have to use Hyper-v with RemoteFX extension:
Then for each guest machine, you add a RemoteFX graphics card as hardware:
In order to use RemoteFX you need to Remote Desktop (RDP) to the guest machine. The protocol is fortunately available since version 7.1 so even Windows 7 can use it. However only Enterprise editions of Windows support it.
Inside the guest VM you see a virtual RemoteFX Display Adapter in the Device Manager:
And as you can see Direct3D is available and enabled. Note that this is over RDP to a VM! The VM’s console curiously displays following message:
Hard to show on static screenshots, but I have to say that RemoteFX user experience is noticeably better compared to a regular RDP. Everything works smoother and faster, scrolling pages, moving windows is a snap. You can play videos / YouTube, etc. But I was more interested in real use case which are high end 3D applications. So I proceeded to install Steam…
Yes! this is GTA V running over Remote Desktop in a VM!
The frame rate sucks quite considerably, even in safe mode, but it was playable and quite responsive (no lag). I actually spent couple of hours going through it and except for low FPS had no issues.
I also spun up this Wyse Thin Client terminal:
disconnected my RDP session and reconnected from the terminal… poof the game was still going:
I even got sound out of the little thing.
I suspect that the low FPS is rather to do with small GPU horse power and vRAM assigned rather that with remote viewing or NVIDIA itself. Unfortunately in Hyper-v it’s impossible to control or fine tune assignment of GPU resources to a particular VM beyond simple on/off switch. The K1 card supports 32 users, so I was only getting 1/32th power and RAM. Perhaps I could have spawned 32 VMs with GTA. Or Call Of Duty multiplayer….
In ending notes I have to conclude that this is a rather interesting technology. According to NVIDIA, Cloud is future of Gaming. In fact they already have cloud game streaming service:
A few interesting things have happened in QNX area in a last month or so.
First of all, there is a QNX BSP for Raspberry PI:
It’s an early developer release, not fully complete, but it does boot and work. It adds an interesting os beside RISC OS and Plan9 to the Pi family. The BSP is available from SHC Products. They have a binary and source code version.
Secondly, in the archaeology department, this has surfaced:
But even more interestingly I’ve found a beta / preliminary release v0.4 of QNX: