Xin: New Concept (Puppy-based) Linux

For talk and support relating specifically to Puppy derivatives
Post Reply
Message
Author
bchafy
Posts: 7
Joined: Sat 08 May 2010, 00:35

Xin: New Concept (Puppy-based) Linux

#1 Post by bchafy »

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:
Image

Screenshots, etc:

Image

Image

Image

Image

Bryan
Last edited by bchafy on Sun 09 May 2010, 14:20, edited 1 time in total.
User avatar
Lobster
Official Crustacean
Posts: 15522
Joined: Wed 04 May 2005, 06:06
Location: Paradox Realm
Contact:

#2 Post by Lobster »

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/
Puppy Raspup 8.2Final 8)
Puppy Links Page http://www.smokey01.com/bruceb/puppy.html :D
bchafy
Posts: 7
Joined: Sat 08 May 2010, 00:35

#3 Post by bchafy »

> 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:

Image

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
bchafy
Posts: 7
Joined: Sat 08 May 2010, 00:35

#4 Post by bchafy »

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
nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#5 Post by nooby »

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?
I use Google Search on Puppy Forum
not an ideal solution though
bchafy
Posts: 7
Joined: Sat 08 May 2010, 00:35

#6 Post by bchafy »

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?
Correct.
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 ???
Yes.
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.
I guess I am too newbie to really get it. It is a LinuxOS but only a server and not a desktop OS?
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...
What is needed to make it a desktop Linux OS then?
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.

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
nooby
Posts: 10369
Joined: Sun 29 Jun 2008, 19:05
Location: SwedenEurope

#7 Post by nooby »

Then I get it better. Such could be of much help for those who want to show movies I guess.
I use Google Search on Puppy Forum
not an ideal solution though
raffy
Posts: 4798
Joined: Wed 25 May 2005, 12:20
Location: Manila

new concept

#8 Post by raffy »

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].
bchafy
Posts: 7
Joined: Sat 08 May 2010, 00:35

#9 Post by bchafy »

Xin is unique in that it has:
  • 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)
MythTv, GeeXboX, LinuxMCE, MPD, etc are great. But I just want something that
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
User avatar
puppyiso
Posts: 594
Joined: Tue 13 Jan 2009, 02:27

#10 Post by puppyiso »

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)
User avatar
puppyiso
Posts: 594
Joined: Tue 13 Jan 2009, 02:27

#11 Post by puppyiso »

Ah, one more thing..

Do you think Xin can control those game consoles interectively or independently?

Unlike other game related puppies, no emulator is required if I control the physical consoles.

Have you though a bout the possibility?

John
bchafy
Posts: 7
Joined: Sat 08 May 2010, 00:35

#12 Post by bchafy »

Hi John,
User avatar
puppyiso
Posts: 594
Joined: Tue 13 Jan 2009, 02:27

#13 Post by puppyiso »

Thank you for the prompt reply and the info.

Boy! It seems to be more complex than I thought.

I will dig more.

By the way,
User avatar
pakt
Posts: 1157
Joined: Sat 04 Jun 2005, 16:54
Location: Sweden

#14 Post by pakt »

bchafy, thanks for sharing your innovative puplet with us :P

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
Paul
Methinks Raspberry Pi were ideal for runnin' Puppy Linux
User avatar
puppyiso
Posts: 594
Joined: Tue 13 Jan 2009, 02:27

#15 Post by puppyiso »

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. :oops:

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.. :lol:

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
bchafy
Posts: 7
Joined: Sat 08 May 2010, 00:35

#16 Post by bchafy »

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:

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----+--------------------+
I found you can simplify it by trying the following:

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
Using the driver above, run:
VGATV.EXE /PAL /ISP
(you need -Hsync and -Vsync polarity for the above circuts to work, hence the /ISP switch)
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
You can also remake a Xin CD by copying the contents to your hard drive under windows, make edits, and then run mkiso.bat under the ISOLINUX directory.

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. :P
Post Reply