Xin: New Concept (Puppy-based) Linux
Xin: New Concept (Puppy-based) Linux
Hi, I've made a new tiny Linux distro named Xin. Based on Puppy, with some significant modifications.
http://www.ccs.neu.edu/home/bchafy/xin.html
Xin, New Concept Linux
* A remote media player supporting mutlifile playback, playlists, drag-and-drop URL's, etc
* A remote desktop display or remote secondary display
* A media player or desktop controllable from multiple clients
* Multiple Xin media players or display's controllable from a single PC
* All controllable and configurable from Windows, be it Windows XP, Windows Vista, or Windows 7
* Linux and FreeDos
* Support for drivers that modify cpu, chipset, or display hardware before linux boots (as well as any other dos com or exe)
* Live CD, requires no hard drive
* Easy to customize your own CD without the complexity of a full re-master
And It Fits On:
Screenshots, etc:
Bryan
http://www.ccs.neu.edu/home/bchafy/xin.html
Xin, New Concept Linux
* A remote media player supporting mutlifile playback, playlists, drag-and-drop URL's, etc
* A remote desktop display or remote secondary display
* A media player or desktop controllable from multiple clients
* Multiple Xin media players or display's controllable from a single PC
* All controllable and configurable from Windows, be it Windows XP, Windows Vista, or Windows 7
* Linux and FreeDos
* Support for drivers that modify cpu, chipset, or display hardware before linux boots (as well as any other dos com or exe)
* Live CD, requires no hard drive
* Easy to customize your own CD without the complexity of a full re-master
And It Fits On:
Screenshots, etc:
Bryan
Last edited by bchafy on Sun 09 May 2010, 14:20, edited 1 time in total.
- Lobster
- Official Crustacean
- Posts: 15522
- Joined: Wed 04 May 2005, 06:06
- Location: Paradox Realm
- Contact:
Hi Bryan
Thanks for telling us about this.
You need Windows on the laptop to run this?
It runs digital media into analogue music capable equipment?
I ran Puppy on our old TV a while back
http://tmxxine.com/tv/
Thanks for telling us about this.
You need Windows on the laptop to run this?
It runs digital media into analogue music capable equipment?
I ran Puppy on our old TV a while back
http://tmxxine.com/tv/
> You need Windows on the laptop to run this?
For the GUI yes. However, if you install the Xin tools, you will notice almost everything is a windows batch, vbs, or hta file (ie a script). Most of the work is done by the batch files and vbs files which are easily ported to Linux, or any other OS, including say mac, iPhone, etc.
Compared to Windows, Unix/Linux shell scripting is simpler and far more sophisticated. The only thing missing in Linux, are HTA's. So re-writing the GUI will take some work. But the GUI is fairly straightforward. That said, I think there should be an HTA capability-layer in firefox, chrome, etc. Perhaps HTML5 will address some of this.
However you can get it to work now if you like.
You can make a XIN playback script easily on any os. Here's the syntax:
rsh <XINHOST> play_back <FILENAME ON WEBSERVER> <WEBSERVERPORT> <PASS THROUGH OPTIONS>
<FILENAME ON WEBSERVER> is recommended to be a symbolic link you can create and destroy without having to copy.
For this particular command, the webserver should be running on the machine where you issue the command. However there are other commands that allow you to specify a remote URL.
You'll need an rsh client. netkit-rsh is easy to get however.
> It runs digital media into analogue music capable equipment?
Yes, but any OS with a souncard can do that. Xin is quite a bit different from stock puppy (or others) in several ways. The main difference being that Puppy, DSL, Ubuntu, and others are designed to be a desktop OS's. These require the user to be close by to his/her computer to get any use from it.
Xin takes a more server-like, or embedded-device-like approach. It boots, it tells you what IP address it has, and the rest is done remotely, from the laptop or desktop machine you ordinarily use every day, wherever it is on the network. The less direct interaction with the Xinhost, the better.
> I ran Puppy on our old TV a while back
It appears you were using a videocard with composite-out capabilities built-in (there is an internal scan-converter in the video card itself).
However VGA cards can be programmed to output CGA-like scanrate which is the same as an older TV. No scan converters are needed, but just a three-resistor vga->composite cable. The video output is quite clear. However you need a driver to make this happen, and preferably at an early stage, before linux starts. This is where the freedos portion of Xin comes into play. It boots fast, early, and you can do some interesting things with VGA registers, chipset registers, bios calls, etc in real-mode all before the linux kernel starts.
Here's an example:
Notice the video output comes from an Acer Aspire One netbook. These computers have no TV-out options, just VGA. The old Apple //gs monitor has no vga input. For a deeper discussion of this, also check out:
http://www.ccs.neu.edu/home/bchafy/lood.html
HTH
Bryan
For the GUI yes. However, if you install the Xin tools, you will notice almost everything is a windows batch, vbs, or hta file (ie a script). Most of the work is done by the batch files and vbs files which are easily ported to Linux, or any other OS, including say mac, iPhone, etc.
Compared to Windows, Unix/Linux shell scripting is simpler and far more sophisticated. The only thing missing in Linux, are HTA's. So re-writing the GUI will take some work. But the GUI is fairly straightforward. That said, I think there should be an HTA capability-layer in firefox, chrome, etc. Perhaps HTML5 will address some of this.
However you can get it to work now if you like.
You can make a XIN playback script easily on any os. Here's the syntax:
rsh <XINHOST> play_back <FILENAME ON WEBSERVER> <WEBSERVERPORT> <PASS THROUGH OPTIONS>
<FILENAME ON WEBSERVER> is recommended to be a symbolic link you can create and destroy without having to copy.
For this particular command, the webserver should be running on the machine where you issue the command. However there are other commands that allow you to specify a remote URL.
You'll need an rsh client. netkit-rsh is easy to get however.
> It runs digital media into analogue music capable equipment?
Yes, but any OS with a souncard can do that. Xin is quite a bit different from stock puppy (or others) in several ways. The main difference being that Puppy, DSL, Ubuntu, and others are designed to be a desktop OS's. These require the user to be close by to his/her computer to get any use from it.
Xin takes a more server-like, or embedded-device-like approach. It boots, it tells you what IP address it has, and the rest is done remotely, from the laptop or desktop machine you ordinarily use every day, wherever it is on the network. The less direct interaction with the Xinhost, the better.
> I ran Puppy on our old TV a while back
It appears you were using a videocard with composite-out capabilities built-in (there is an internal scan-converter in the video card itself).
However VGA cards can be programmed to output CGA-like scanrate which is the same as an older TV. No scan converters are needed, but just a three-resistor vga->composite cable. The video output is quite clear. However you need a driver to make this happen, and preferably at an early stage, before linux starts. This is where the freedos portion of Xin comes into play. It boots fast, early, and you can do some interesting things with VGA registers, chipset registers, bios calls, etc in real-mode all before the linux kernel starts.
Here's an example:
Notice the video output comes from an Acer Aspire One netbook. These computers have no TV-out options, just VGA. The old Apple //gs monitor has no vga input. For a deeper discussion of this, also check out:
http://www.ccs.neu.edu/home/bchafy/lood.html
HTH
Bryan
MAKEISO.BAT was broken on directories with spaces ( ie 'Documents and Settings', etc), and also under Vista/7. The updated one is Here.
Or just get xin_v1.iso
Or just get xin_v1.iso
Hi Bryan
So it is a linux server that you remotely control from any kind of OS but it doesn't do browsing or work as an ordinary desktop OS as Puppy does?
It doesn't have Firefox or ROX or mount the HDD and do frugal install or download other puppies. It is on a dedicated machine that you remotely communicate to ???
I guess I am too newbie to really get it. It is a LinuxOS but only a server and not a desktop OS?
What is needed to make it a desktop Linux OS then?
So it is a linux server that you remotely control from any kind of OS but it doesn't do browsing or work as an ordinary desktop OS as Puppy does?
It doesn't have Firefox or ROX or mount the HDD and do frugal install or download other puppies. It is on a dedicated machine that you remotely communicate to ???
I guess I am too newbie to really get it. It is a LinuxOS but only a server and not a desktop OS?
What is needed to make it a desktop Linux OS then?
I use Google Search on Puppy Forum
not an ideal solution though
not an ideal solution though
Correct.So it is a linux server that you remotely control from any kind of OS but it doesn't do browsing or work as an ordinary desktop OS as Puppy does?
Yes.It doesn't have Firefox or ROX or mount the HDD and do frugal install or download other puppies. It is on a dedicated machine that you remotely communicate to ???
However, it does have ROX, and it can mount HDDs, usb drives, etc (albeit manually, as any modern Linux can) and serve those as well. From windows explorer, just ftp://<xinhost ip> and you're in.
The "desktop" is a virtual desktop, via a VNC server.
You got it. It's a "thin server", '"media appliance", "network device", etc. What does it serve? Its display, its mplayer, its memory resident filesystem or other mounted disks (via ftp), virtual-desktop (via VNC), serial/parallel ports (future version), etc...I guess I am too newbie to really get it. It is a LinuxOS but only a server and not a desktop OS?
To use the "desktop" it has, just VNC into it. <xinhost ip>:1, or do a "Test Xinhost Display Connection" in the windows client, or (assuming you've setup your windows-side correctly) just drag an mp3 file into the "Drag Files Here (Xin)" shortcut, the VNC desktop will popup automatically.What is needed to make it a desktop Linux OS then?
To make it a "desktop Linux" (a different concept) you could launch the builtin Xorg server by hand, then run jwm on top of that on display :0. You will get a desktop similar as you would as the VNC desktop, but as you said, it has no firefox, etc. So while it has a "desktop", it is not a desktop Linux. It is meant to be an extension of the machine you use every day, not a competing entity (more a server, not client in this regard).
HTH
Bryan
new concept
I wonder what distinguishes Xin, is it the very small size of media-player-capable Linux? (Console-only Linux as well as Linux in virtual-ware are already widely available.)
Puppy user since Oct 2004. Want FreeOffice? [url=http://puppylinux.info/topic/freeoffice-2012-sfs]Get the sfs (English only)[/url].
Xin is unique in that it has:
will play music or a video on a remote machine as if I am doing it from my Windows laptop, which
I use most of the time.
The reason I wrote Xin (or anyone who writes their own distro)
was because the current mass of distro's didn't fit my need. And customizing
them to my needs wasn't very portable.
I wanted a CD I could put in any old machine, convert it into a media center,
and not fuss with it too much.
I wanted to control it from my existing Windows computer I'm already comfortable
with.
And IMO, Linux tailored to work with Windows (or any other OS) and vice-versa brings a lot of value anyway.
Xin is those ideas put together on a distro.
Bryan
- o A precfg area for faster re-mastering, no need to regenerate a .SFS every time you
want to change the core, and no need for a hard drive to store customizations.
o Very lightweight windows GUI, Written entirely using HTA's, Batch, and VBS
scripts, easy to edit or add a feature without recompiling an exe.
o XinScan (Windows side) utility, for drag and drop URL links directly from a browser.
o RSH for Windows Vista and Windows 7
o Ability to run at a CGA scanrate (for interfacing with an old tv etc.)
Why? Old TV's are everywhere, free, and those little
b/w tv's make good data displays.
o Boots into console but uses X for when you want to show a video or show your
PCs desktop. No need to worry about X acting weird (as it often does) with garbled screens
or locking up. The "desktop" is remote.
Its not just a console linux, it's a graphical linux
with the primary display free to use for whatever purpose you want instead of it being tied to a dedicated
desktop.
o Support for multiple xinhosts, (ie playback to different hosts at the
same time, be it the same file or different ones from the same PC).
o I set the goal: "Make all of this fit on a credit-card CD-R".
Less RAM is needed (it even works on systems with 128m RAM), and faster boots too.
(take a look at help page in the Windows Xin client for more info)
will play music or a video on a remote machine as if I am doing it from my Windows laptop, which
I use most of the time.
The reason I wrote Xin (or anyone who writes their own distro)
was because the current mass of distro's didn't fit my need. And customizing
them to my needs wasn't very portable.
I wanted a CD I could put in any old machine, convert it into a media center,
and not fuss with it too much.
I wanted to control it from my existing Windows computer I'm already comfortable
with.
And IMO, Linux tailored to work with Windows (or any other OS) and vice-versa brings a lot of value anyway.
Xin is those ideas put together on a distro.
Bryan
Hi, Bryan
I have read your informative articles.
Converting from VGA to TV signal is especially interesting.
What I would like to ask you is how to convert from TV video audio signals to VGA.
I have both 8 bit 16 bit gameconsoles made in China and later learned I can get the much lower than I paid. I got curious and opened the boxes.
Those have very simple TV output. 8 bit has white, yellow and red to TV and 16 bit has just audio and video out put.
Before I ditch them I want to know how I can connect the game consoles to VGA monitor which is about to go.
I worked in Japanese game factory quite a long ago. Playing with game console and Monitor would bring me old memories.
I am thinking using graphics card as connecting board between Monitor and TV output.
Any suggestions besides throwing them out? Both are working fine.
John
from Yantai, China(used to be Taipei then Qingdao)
I have read your informative articles.
Converting from VGA to TV signal is especially interesting.
What I would like to ask you is how to convert from TV video audio signals to VGA.
I have both 8 bit 16 bit gameconsoles made in China and later learned I can get the much lower than I paid. I got curious and opened the boxes.
Those have very simple TV output. 8 bit has white, yellow and red to TV and 16 bit has just audio and video out put.
Before I ditch them I want to know how I can connect the game consoles to VGA monitor which is about to go.
I worked in Japanese game factory quite a long ago. Playing with game console and Monitor would bring me old memories.
I am thinking using graphics card as connecting board between Monitor and TV output.
Any suggestions besides throwing them out? Both are working fine.
John
from Yantai, China(used to be Taipei then Qingdao)
bchafy, thanks for sharing your innovative puplet with us
I have been testing Xin on an HP t5525 Thin Client and have just scratched the surface of all the functions you've crammed into it.
One of the features I really like is your 'precfg' re-mastering.
I'm a long-time user of SlaxerPup and have just finished adding a slightly-modified version of your precfg to it.
I had to modify your code because if the precfg folder is missing, booting will wait for 60 seconds (apparently a time-out) when executing the precfg code.
Here's the code I put in SlaxerPup:
Paul
I have been testing Xin on an HP t5525 Thin Client and have just scratched the surface of all the functions you've crammed into it.
One of the features I really like is your 'precfg' re-mastering.
I'm a long-time user of SlaxerPup and have just finished adding a slightly-modified version of your precfg to it.
I had to modify your code because if the precfg folder is missing, booting will wait for 60 seconds (apparently a time-out) when executing the precfg code.
Here's the code I put in SlaxerPup:
Code: Select all
#pakt: code adapted from bchafy's Xin
#his description: "A precfg area for faster re-mastering, no need to regenerate a .SFS
#every time you want to change the core, and no need for a hard drive to store customizations"
if [ -d $PUPSFSDEVMNTPT/precfg ];then
echo -n "Overlaying preconfig files..." > /dev/console
SRC="$PUPSFSDEVMNTPT"/precfg
DEST="/pup_new"
cd $SRC
for i in `find . -not -type d -print`; do
BASEFILE="$i"
SRCFILE="$SRC/$BASEFILE"
DESTFILE="$DEST/$BASEFILE"
DESTDIR=`dirname $DESTFILE`
MASK="777"
if test -f "$DESTFILE"; then
MASK=`stat -c %a $DESTFILE`
fi
mkdir -p $DESTDIR
cp -f $SRCFILE $DESTFILE
chmod $MASK $DESTFILE
done
fi
check_status $? #END PRECONFIG STEP
Methinks Raspberry Pi were ideal for runnin' Puppy Linux
It's been a while, Huh?
I have checked local PC dealers and have found that there is no such a thing as TV to PC at least here in Yantai.
I am thinking about connecting TV and PC. I know I know what you might think.
Yes, It has been done por mucho anos. si, siempre...
What I want to do is making it cheaper. Abandoned TV and PC shouldn't have expensive PC2TV converter.
I have tried your 3 register converter long long ago and messed up my old TV and had to dig out another TV from the storage.
I know people are selling Smart TV or internet connected TV.. at a price!!!!
Do you have any other schematic I can try on the old TV. If I fail, I might have to buy a new one..
I am also looking into converting regular Keyboard and mouse into wireless one(using RF modulator may be).
Any suggestions or info?
My Info: Qingdao Beer costs 4 yuan/btl Yantai Beer costs 2.5 yuan /btl
It is best to drink the 27 yuan Changyu wine when I got some cash in the pocket. I can't see the difference between 27 yuan wine and 200 something yuan wine.
Looking to hearing from you soon.
John
I have checked local PC dealers and have found that there is no such a thing as TV to PC at least here in Yantai.
I am thinking about connecting TV and PC. I know I know what you might think.
Yes, It has been done por mucho anos. si, siempre...
What I want to do is making it cheaper. Abandoned TV and PC shouldn't have expensive PC2TV converter.
I have tried your 3 register converter long long ago and messed up my old TV and had to dig out another TV from the storage.
I know people are selling Smart TV or internet connected TV.. at a price!!!!
Do you have any other schematic I can try on the old TV. If I fail, I might have to buy a new one..
I am also looking into converting regular Keyboard and mouse into wireless one(using RF modulator may be).
Any suggestions or info?
My Info: Qingdao Beer costs 4 yuan/btl Yantai Beer costs 2.5 yuan /btl
It is best to drink the 27 yuan Changyu wine when I got some cash in the pocket. I can't see the difference between 27 yuan wine and 200 something yuan wine.
Looking to hearing from you soon.
John
Chinese (CRT) TV's use the PAL standard, but the driver supplied with Xin 1.0 is currently only NTSC. However you can get one here:
http://reocities.com/SiliconValley/hori ... /vgatv.zip
Construct the following circuit:
I found you can simplify it by trying the following:
Using the driver above, run:
You can test this under dos, freedos, or the freedos included with Xin.
To use in the Xin CD:
Note this only gets the text modes working. If you use Xin just for playing audio or as a simple server, then this is all you need.
However if you want to experiment with the X11 server or framebuffer drivers, using the simple circuit above, you need an appropriate modeline entry in your Xorg.conf. This is VGA card specific. But there are some examples in:
http://www.ccs.neu.edu/home/bchafy/tvFiles.tar.gz
http://www.mythtv.org/wiki/Modeline_Database
http://www.gentoo-wiki.info/HOWTO_Setup_X_for_MythTV
Once you get your modelines working the way you like, you don't need to remaster the whole CD again. Just put the updated Xorg.conf file under the precfg directory on the CD (precfg/etc/X11/Xorg.conf) and do another multisession burn. This also works for any other file(s) you need to update.
HTH
Bryan
PS
I also cannot tell the difference. The local brands are even a little bit better, and equally as effective.
http://reocities.com/SiliconValley/hori ... /vgatv.zip
Construct the following circuit:
Code: Select all
1K ohm
Hsync o--------/\/\/------------+
|
1K ohm |
Vsync o--------/\/\/------------+
|
200 ohm |
Green Video o----+---/\/\/--+---------+--------o Composite Video In
| ^ | (Termination = Hi Z)
\ +----+
/ +--------o GND of monitor
\ 82 ohm |
/ |
| |
GND (shield) o----+--------------------+
Code: Select all
1K ohm
Hsync o--------/\/\/------------+
|
1K ohm |
Vsync o--------/\/\/------------+
|
100 ohm |
Green Video o--------/\/\/------------+--------o Composite Video In
GND (shield) o----------------------------------o GND of monitor
(you need -Hsync and -Vsync polarity for the above circuts to work, hence the /ISP switch)VGATV.EXE /PAL /ISP
You can test this under dos, freedos, or the freedos included with Xin.
To use in the Xin CD:
- (Assuming vou have CD burning software that supports multi-session):
Place the VGATV.EXE in the utils folder.
Edit CDEXEC.BAT and replace 'rem tv' with 'VGATV.EXE /PAL /ISP'
Reburn
Note this only gets the text modes working. If you use Xin just for playing audio or as a simple server, then this is all you need.
However if you want to experiment with the X11 server or framebuffer drivers, using the simple circuit above, you need an appropriate modeline entry in your Xorg.conf. This is VGA card specific. But there are some examples in:
http://www.ccs.neu.edu/home/bchafy/tvFiles.tar.gz
http://www.mythtv.org/wiki/Modeline_Database
http://www.gentoo-wiki.info/HOWTO_Setup_X_for_MythTV
Once you get your modelines working the way you like, you don't need to remaster the whole CD again. Just put the updated Xorg.conf file under the precfg directory on the CD (precfg/etc/X11/Xorg.conf) and do another multisession burn. This also works for any other file(s) you need to update.
HTH
Bryan
PS
I also cannot tell the difference. The local brands are even a little bit better, and equally as effective.