<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>EmbLogic &#187; Amit Prakash</title>
	<atom:link href="https://www.emblogic.com/blog/author/amit-embdeveloper/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.emblogic.com/blog</link>
	<description>Embedded System and ARM Training</description>
	<lastBuildDate>Tue, 03 Mar 2020 13:00:06 +0000</lastBuildDate>
	<language>en-US</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.9.1</generator>
	<item>
		<title>Toolchain(Compiling gcc)</title>
		<link>https://www.emblogic.com/blog/12/toolchaincompiling-gcc/</link>
		<comments>https://www.emblogic.com/blog/12/toolchaincompiling-gcc/#comments</comments>
		<pubDate>Sat, 13 Dec 2014 10:35:28 +0000</pubDate>
		<dc:creator><![CDATA[Amit Prakash]]></dc:creator>
				<category><![CDATA[Project 9: Embedded Linux on ARM]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=11905</guid>
		<description><![CDATA[Encountered error while running make check in buid-gcc after running make. /bin/sh: line 3: cd: x86_64-unknown-linux-gnu/libstdc++-v3: No such file or directory make[1]: *** [check-target-libstdc++-v3] Error 1 make[1]: Leaving directory `/home/emblogic/TOOLCHAIN/build-tools/build-gcc&#8217; make: *** [do-check] Error 2 After using &#8211;enable-languages=&#8221;c&#8221; during configuration &#8230; <a href="https://www.emblogic.com/blog/12/toolchaincompiling-gcc/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Encountered error while running make check in buid-gcc after running make.</p>
<p>/bin/sh: line 3: cd: x86_64-unknown-linux-gnu/libstdc++-v3: No such file or directory<br />
make[1]: *** [check-target-libstdc++-v3] Error 1<br />
make[1]: Leaving directory `/home/emblogic/TOOLCHAIN/build-tools/build-gcc&#8217;<br />
make: *** [do-check] Error 2</p>
<p>After using &#8211;enable-languages=&#8221;c&#8221; during configuration libstdc++-v3 error resolved. Now the error is for libmudflap.<br />
How to disable libmudflap???</p>
<p>/bin/sh: line 3: cd: x86_64-unknown-linux-gnu/libmudflap: No such file or directory<br />
make[1]: *** [check-target-libmudflap] Error 1<br />
make[1]: Leaving directory `/home/emblogic/TOOLCHAIN/build-tools/build-gcc&#8217;<br />
make: *** [do-check] Error 2</p>
<p>After using &#8211;disable-libmudflap, I got error below mentioned:</p>
<p>/bin/sh: line 3: cd: x86_64-unknown-linux-gnu/libssp: No such file or directory<br />
make[1]: *** [check-target-libssp] Error 1<br />
make[1]: Leaving directory `/home/emblogic/TOOLCHAIN/build-tools/build-gcc&#8217;<br />
make: *** [do-check] Error 2 </p>
<p>Used &#8211;disable-libssp</p>
<p>/bin/sh: line 3: cd: x86_64-unknown-linux-gnu/libgomp: No such file or directory<br />
make[1]: *** [check-target-libgomp] Error 1<br />
make[1]: Leaving directory `/home/emblogic/arm/TOOLCHAIN/build-tools/build-gcc&#8217;<br />
make: *** [do-check] Error 2</p>
<p>Finally after disabling the flag libgomp. There is no error after make check. Compiled and installed gcc successfully&#8230;<br />
Used &#8211;disable-libgomp<br />
Snapshot:</p>
<p>PASS: test-expandargv-0.<br />
PASS: test-expandargv-1.<br />
PASS: test-expandargv-2.<br />
PASS: test-expandargv-3.<br />
PASS: test-expandargv-4.<br />
PASS: test-expandargv-5.<br />
PASS: test-expandargv-6.<br />
make[3]: Leaving directory `/home/emblogic/arm/TOOLCHAIN/build-tools/build-gcc/libiberty/testsuite&#8217;<br />
make[2]: Leaving directory `/home/emblogic/arm/TOOLCHAIN/build-tools/build-gcc/libiberty&#8217;<br />
make[1]: Nothing to be done for `check-target&#8217;.<br />
make[1]: Leaving directory `/home/emblogic/arm/TOOLCHAIN/build-tools/build-gcc&#8217;</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/12/toolchaincompiling-gcc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sending 100k data using Circular buffer through IEEE EIA/TIA – 232E specification and associated serial port device driver(Implementing RS 232 Protocol)</title>
		<link>https://www.emblogic.com/blog/11/sending-100k-data-using-circular-buffer-through-ieee-eiatia-232e-specification-and-associated-serial-port-device-driverimplementing-rs-232-protocol/</link>
		<comments>https://www.emblogic.com/blog/11/sending-100k-data-using-circular-buffer-through-ieee-eiatia-232e-specification-and-associated-serial-port-device-driverimplementing-rs-232-protocol/#comments</comments>
		<pubDate>Tue, 25 Nov 2014 06:37:11 +0000</pubDate>
		<dc:creator><![CDATA[Amit Prakash]]></dc:creator>
				<category><![CDATA[Device Drivers]]></category>
		<category><![CDATA[Serial Port Driver]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=11881</guid>
		<description><![CDATA[RCS file: header.h,v Working file: header.h head: 1.1 branch: locks: strict root: 1.1 access list: symbolic names: keyword substitution: kv total revisions: 1; selected revisions: 1 description: Implementing &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- revision 1.1 locked by: root; date: 2014/11/25 06:17:53; author: root; state: &#8230; <a href="https://www.emblogic.com/blog/11/sending-100k-data-using-circular-buffer-through-ieee-eiatia-232e-specification-and-associated-serial-port-device-driverimplementing-rs-232-protocol/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>RCS file: header.h,v<br />
Working file: header.h<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
Implementing<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/25 06:17:53;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: declaration.h,v<br />
Working file: declaration.h<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/25 06:18:56;  author: root;  state: Exp;<br />
Initial revision<br />
============================================================================<br />
RCS file: dev_open.c,v<br />
Working file: dev_open.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
open the device<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/25 06:20:22;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: dev_release.c,v<br />
Working file: dev_release.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
Release the device.<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/25 06:22:30;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: initilization.c,v<br />
Working file: initilization.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
Implemented check_region(), release_region() and request_region().<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/25 06:28:58;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: cleanup.c,v<br />
Working file: cleanup.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
Implemented release_region().<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/25 06:30:56;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: dev_write.c,v<br />
Working file: dev_write.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
Written 100k byte data serially implementing RS 232 protocol.<br />
Data written through circular buffer. Implementing handshaking using CTS and RTS pins connected of serial port. Set the MCR bit-1 on writer side and also check the MSR bit-4 is set or not.<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/25 06:27:06;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: dev_read.c,v<br />
Working file: dev_read.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
Read 100k byte data serially.Implementing handshaking using CTS and RTS pins connected of serial port. Set the MCR bit-1 on writer side and also check the MSR bit-4 is set or not.<br />
It took 1.53 min to read the data.<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/25 06:33:55;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: file_op.h,v<br />
Working file: file_op.h<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/25 06:35:37;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/11/sending-100k-data-using-circular-buffer-through-ieee-eiatia-232e-specification-and-associated-serial-port-device-driverimplementing-rs-232-protocol/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sending 4k data using Circular buffer through IEEE EIA/TIA – 232E specification and associated serial port device driver(Implementing RS 232 Protocol)</title>
		<link>https://www.emblogic.com/blog/11/sending-4k-data-using-circular-buffer-through-ieee-eiatia-232e-specification-and-associated-serial-port-device-driverimplementing-null-modem/</link>
		<comments>https://www.emblogic.com/blog/11/sending-4k-data-using-circular-buffer-through-ieee-eiatia-232e-specification-and-associated-serial-port-device-driverimplementing-null-modem/#comments</comments>
		<pubDate>Thu, 20 Nov 2014 05:08:11 +0000</pubDate>
		<dc:creator><![CDATA[Amit Prakash]]></dc:creator>
				<category><![CDATA[Device Drivers]]></category>
		<category><![CDATA[Serial Port Driver]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=11818</guid>
		<description><![CDATA[RCS file: header.h,v Working file: header.h head: 1.1 branch: locks: strict root: 1.1 access list: symbolic names: keyword substitution: kv total revisions: 1; selected revisions: 1 description: &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- revision 1.1 locked by: root; date: 2014/11/20 04:42:02; author: root; state: Exp; &#8230; <a href="https://www.emblogic.com/blog/11/sending-4k-data-using-circular-buffer-through-ieee-eiatia-232e-specification-and-associated-serial-port-device-driverimplementing-null-modem/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>RCS file: header.h,v<br />
Working file: header.h<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/20 04:42:02;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: declaration.h,v<br />
Working file: declaration.h<br />
head:<br />
branch:<br />
locks: strict<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 0<br />
description:<br />
=============================================================================<br />
RCS file: initilization.c,v<br />
Working file: initilization.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
Implemented check_region(), release_region() and request_region()<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/20 04:45:10;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: cleanup.c,v<br />
Working file: cleanup.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
Implemented release_region()<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/20 04:46:32;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: dev_open.c,v<br />
Working file: dev_open.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/20 04:47:34;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: dev_release.c,v<br />
Working file: dev_release.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/20 04:48:34;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: dev_write.c,v<br />
Working file: dev_write.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
Made One Scull_dev and one qset_array.<br />
Implemented circular buffer<br />
Written data on circular buffer and outb() data serially.<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/20 04:52:21;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: dev_read.c,v<br />
Working file: dev_read.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
Retrieve data serially from circular buffer<br />
implemented inb() to read data serially<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/20 04:54:00;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: file_op.h,v<br />
Working file: file_op.h<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/20 04:54:47;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
Write synopsis:<br />
Here Implementing Circular buffer. noq is the no .of quantum written to the circular buffer.<br />
label:</p>
<p>         for(i=0;i&lt;noq;i++)<br />
         {</p>
<p>                 if(idata[i],ubuff(lv*QUANTUM_SIZE),QUANTUM_SIZE);<br />
                         for(j=0;j&lt;8;j++)<br />
                          {<br />
                                 printk(KERN_INFO &quot;data[%d] = %c\n&quot;,i,ch1);<br />
                                 while((inb(0x3f8+5)&amp;0&#215;60)!=0&#215;60);<br />
                                 outb(ch1,0x3f8);<br />
                           }<br />
                 lv++;<br />
                 }</p>
<p>                 printk(KERN_INFO &quot;noq = %d\n&quot;,noq);<br />
                 printk(KERN_INFO &quot;QUANTUM_SIZE =%d, i = %d\n&quot;,QUANTUM_SIZE,i);<br />
                 if(i&lt;QUANTUM_SIZE-1)<br />
                 {<br />
                         printk(KERN_INFO &quot;Inside if for next quantum\n&quot;);<br />
                         noq = noq- QUANTUM_SIZE;<br />
                         i = 0;<br />
                         goto label;<br />
                 }<br />
         }</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/11/sending-4k-data-using-circular-buffer-through-ieee-eiatia-232e-specification-and-associated-serial-port-device-driverimplementing-null-modem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IEEE EIA/TIA &#8211; 232E specification and associated serial port device driver(Implementing NULL MODEM)</title>
		<link>https://www.emblogic.com/blog/11/ieee-eiatia-232e-specification-and-associated-serial-port-device-driverimplementing-null-modem/</link>
		<comments>https://www.emblogic.com/blog/11/ieee-eiatia-232e-specification-and-associated-serial-port-device-driverimplementing-null-modem/#comments</comments>
		<pubDate>Mon, 17 Nov 2014 04:21:22 +0000</pubDate>
		<dc:creator><![CDATA[Amit Prakash]]></dc:creator>
				<category><![CDATA[Device Drivers]]></category>
		<category><![CDATA[Serial Port Driver]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=11814</guid>
		<description><![CDATA[RCS file: header.h,v Working file: header.h head: 1.1 branch: locks: strict root: 1.1 access list: symbolic names: keyword substitution: kv total revisions: 1; selected revisions: 1 description: included linux/ioport.h header file &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- revision 1.1 locked by: root; date: 2014/11/17 04:02:27; &#8230; <a href="https://www.emblogic.com/blog/11/ieee-eiatia-232e-specification-and-associated-serial-port-device-driverimplementing-null-modem/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>RCS file: header.h,v<br />
Working file: header.h<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
included linux/ioport.h header file<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/17 04:02:27;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: declaration.h,v<br />
Working file: declaration.h<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/17 04:02:50;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: initilization.c,v<br />
Working file: initilization.c<br />
head: 1.2<br />
branch:<br />
locks: strict<br />
	root: 1.2<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 2;	selected revisions: 2<br />
description:<br />
Implemented check_region(), release_region() and request_region()<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.2	locked by: root;<br />
date: 2014/11/17 04:04:26;  author: root;  state: Exp;  lines: +1 -1<br />
Set the 7th bit(DLAB) of LCR register for baud setting.<br />
sent 0x0c to THR register for 9600.<br />
Now send 0&#215;03 to LCR register for 8-bit data transfer.<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1<br />
date: 2014/11/17 04:03:33;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: cleanup.c,v<br />
Working file: cleanup.c<br />
head: 1.2<br />
branch:<br />
locks: strict<br />
	root: 1.2<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 2;	selected revisions: 2<br />
description:<br />
Implemented release_region()<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.2	locked by: root;<br />
date: 2014/11/17 04:13:19;  author: root;  state: Exp;  lines: +1 -1<br />
******<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1<br />
date: 2014/11/17 04:11:07;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: dev_open.c,v<br />
Working file: dev_open.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/17 04:11:28;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: dev_release.c,v<br />
Working file: dev_release.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/17 04:11:46;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: dev_write.c,v<br />
Working file: dev_write.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
Write data serially using null modem<br />
Sent single character through null modem<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/17 04:12:07;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: dev_read.c,v<br />
Working file: dev_read.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
Receive the serial data successfully<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/17 04:12:21;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================<br />
RCS file: file_op.h,v<br />
Working file: file_op.h<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/17 04:12:38;  author: root;  state: Exp;<br />
Initial revision<br />
=============================================================================</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/11/ieee-eiatia-232e-specification-and-associated-serial-port-device-driverimplementing-null-modem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Compatibility Mode Communication using IEEE Standard 1284-1994(Standard Signalling Method)</title>
		<link>https://www.emblogic.com/blog/11/compatibility-mode-communication-using-ieee-standard-1284-1994standard-signalling-method/</link>
		<comments>https://www.emblogic.com/blog/11/compatibility-mode-communication-using-ieee-standard-1284-1994standard-signalling-method/#comments</comments>
		<pubDate>Mon, 10 Nov 2014 04:31:49 +0000</pubDate>
		<dc:creator><![CDATA[Amit Prakash]]></dc:creator>
				<category><![CDATA[Device Drivers]]></category>
		<category><![CDATA[Parallel Port Driver]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=11745</guid>
		<description><![CDATA[RCS file: header.h,v Working file: header.h head: 1.1 branch: locks: strict root: 1.1 access list: symbolic names: keyword substitution: kv total revisions: 1; selected revisions: 1 description: &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- revision 1.1 locked by: root; date: 2014/11/10 04:15:07; author: root; state: Exp; &#8230; <a href="https://www.emblogic.com/blog/11/compatibility-mode-communication-using-ieee-standard-1284-1994standard-signalling-method/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>RCS file: header.h,v<br />
Working file: header.h<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/10 04:15:07;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: declaration.h,v<br />
Working file: declaration.h<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/10 04:16:20;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: initilization.c,v<br />
Working file: initilization.c<br />
head: 1.2<br />
branch:<br />
locks: strict<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 2;	selected revisions: 2<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.2<br />
date: 2014/11/10 04:19:20;  author: root;  state: Exp;  lines: +2 -1<br />
Implemented check_region(), request_region() and release_region()<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1<br />
date: 2014/11/10 04:16:41;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: cleanup.c,v<br />
Working file: cleanup.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/10 04:16:59;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: dev_open.c,v<br />
Working file: dev_open.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/10 04:17:21;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: dev_release.c,v<br />
Working file: dev_release.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
Implemented release_region().<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/10 04:20:45;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: dev_write.c,v<br />
Working file: dev_write.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
Ckeck busy signal by sending the strobe. After that sent data on data lines.<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/10 04:21:02;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: dev_read.c,v<br />
Working file: dev_read.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
Read data from data lines.<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/10 04:21:19;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: file_op.h,v<br />
Working file: file_op.h<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
	root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;	selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1	locked by: root;<br />
date: 2014/11/10 04:21:33;  author: root;  state: Exp;<br />
Initial revision</p>
<p>Write synopsis:<br />
outb(ch,0&#215;378);<br />
while(busy_status !=0&#215;80)<br />
busy_status = inb(0&#215;379);</p>
<p>Read synopsis:<br />
while(strobe != 0&#215;00)<br />
strobe = inb(0&#215;379);<br />
data = inb(0&#215;378);</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/11/compatibility-mode-communication-using-ieee-standard-1284-1994standard-signalling-method/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VOIP terminology: Digital Audio Broadcasting interaction channel specification for GSM</title>
		<link>https://www.emblogic.com/blog/11/voip-terminology-digital-audio-broadcasting-interaction-channel-specification-for-gsm/</link>
		<comments>https://www.emblogic.com/blog/11/voip-terminology-digital-audio-broadcasting-interaction-channel-specification-for-gsm/#comments</comments>
		<pubDate>Fri, 07 Nov 2014 04:16:00 +0000</pubDate>
		<dc:creator><![CDATA[Amit Prakash]]></dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=11704</guid>
		<description><![CDATA[The GSM network may be complemented with another network to reach to the service provider(commonly called PSTN/ISDN). In order to allow access to the GSM network, the user terminal shall be provided with a GSM Interaction Module(IM) referred to as &#8230; <a href="https://www.emblogic.com/blog/11/voip-terminology-digital-audio-broadcasting-interaction-channel-specification-for-gsm/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.emblogic.com/blog/wp-content/uploads/2014/11/Screenshot-5.png"><img class="alignnone size-medium wp-image-11712" src="http://www.emblogic.com/blog/wp-content/uploads/2014/11/Screenshot-5-300x225.png" alt="Screenshot-5" width="300" height="225" /></a></p>
<p>The GSM network may be complemented with another network to reach to the service provider(commonly called PSTN/ISDN). In order to allow access to the GSM network, the user terminal shall be provided with a GSM Interaction Module(IM) referred to as a Mobile Station(MS).</p>
<p>The Interface between the GSM network and MS shall be compliant with the standard requirements on general on Terminal Adaptation Function(TAF) for Mobile Station(MS) as reported in ETS 300 582[12].</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;<code></p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/11/voip-terminology-digital-audio-broadcasting-interaction-channel-specification-for-gsm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Understand RS232 Connection &amp; Signals</title>
		<link>https://www.emblogic.com/blog/11/understand-rs232-connection-signals-2/</link>
		<comments>https://www.emblogic.com/blog/11/understand-rs232-connection-signals-2/#comments</comments>
		<pubDate>Mon, 03 Nov 2014 10:13:18 +0000</pubDate>
		<dc:creator><![CDATA[Amit Prakash]]></dc:creator>
				<category><![CDATA[Serial Port Driver]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=11677</guid>
		<description><![CDATA[RS-232C, EIA RS-232, or simply RS-232, refers to the same standard defined by the Electronic Industries Association in 1969 for serial communication. RS-232 is a standard for serial communication transmission of data. It formally defines the signals connecting between a &#8230; <a href="https://www.emblogic.com/blog/11/understand-rs232-connection-signals-2/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>RS-232C, EIA RS-232, or simply RS-232, refers to the same standard defined by the Electronic Industries Association in 1969 for serial communication.</p>
<p><b>RS-232 </b>is a standard for serial communication transmission of data. It formally defines the signals connecting between a <i>DTE</i> (<i>Data terminal equipment</i>) such as a computer, and a <i>DCE</i> (<i>Data communication equipment</i>), such as a modem.</p>
<p>A straight-through cable is used to connect a DTE (e.g. computer) to a DCE (e.g. modem), all signals in one side connected to the corresponding signals in the other side in a one-to-one basis. A crossover (null-modem) cable is used to connect two DTE directly, without a modem in between.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/11/understand-rs232-connection-signals-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Program that create a file with 4k bytes free space.</title>
		<link>https://www.emblogic.com/blog/11/program-that-create-a-file-with-4k-bytes-free-space/</link>
		<comments>https://www.emblogic.com/blog/11/program-that-create-a-file-with-4k-bytes-free-space/#comments</comments>
		<pubDate>Mon, 03 Nov 2014 09:54:42 +0000</pubDate>
		<dc:creator><![CDATA[Amit Prakash]]></dc:creator>
				<category><![CDATA[Data Structures with C]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=11673</guid>
		<description><![CDATA[Program that create a file with 4k bytes free space. RCS file: file_size.c,v Working file: file_size.c head: 1.1 branch: locks: strict root: 1.1 access list: symbolic names: keyword substitution: kv total revisions: 1;    selected revisions: 1 description: Implemented to create &#8230; <a href="https://www.emblogic.com/blog/11/program-that-create-a-file-with-4k-bytes-free-space/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Program that create a file with 4k bytes free space.</p>
<p>RCS file: file_size.c,v<br />
Working file: file_size.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;    selected revisions: 1<br />
description:<br />
Implemented to create file with 4k bytes free space.<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1    locked by: root;<br />
date: 2014/11/03 09:43:23;  author: root;  state: Exp;<br />
Initial revision</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/11/program-that-create-a-file-with-4k-bytes-free-space/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nibble Mode Communication using IEEE Standard 1284-1994(Standard Signalling Method)</title>
		<link>https://www.emblogic.com/blog/11/nibble-mode-communication-using-parallel-port/</link>
		<comments>https://www.emblogic.com/blog/11/nibble-mode-communication-using-parallel-port/#comments</comments>
		<pubDate>Mon, 03 Nov 2014 09:06:22 +0000</pubDate>
		<dc:creator><![CDATA[Amit Prakash]]></dc:creator>
				<category><![CDATA[Parallel Port Driver]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=11665</guid>
		<description><![CDATA[Implementation of Nibble Mode communication using Parallel Port Device Driver. 1. Host signals ability to take data by making the Busy pin low. 2. Now peripheral or writer responds by placing First nibble. Writer Writes on Data line, on the &#8230; <a href="https://www.emblogic.com/blog/11/nibble-mode-communication-using-parallel-port/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Implementation of Nibble Mode communication using Parallel Port Device Driver.</p>
<p>1. Host signals ability to take data by making the Busy pin low.</p>
<p>2. Now peripheral or writer responds by placing First nibble. Writer Writes on Data line, on the other side Reader reads from Status line.</p>
<p>3. Before reading from Reader side Peripheral or writer signals valid nibble by Sending signal on one of the status line.</p>
<p>4. The Reader indicate to writer that it has received the lower nibble. And is is not ready to accept another nibble. This is done by sending signal on status line to indicate the writer.</p>
<p>5. Now repeate all these steps for second nibble&#8230;</p>
<p>RCS file: header.h,v<br />
Working file: header.h<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;    selected revisions: 1<br />
description:<br />
implemented linux/ioport.h and asm/io.h<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1    locked by: root;<br />
date: 2014/11/03 08:52:22;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: declaration.h,v<br />
Working file: declaration.h<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;    selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1    locked by: root;<br />
date: 2014/11/03 08:52:22;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: initilization.c,v<br />
Working file: initilization.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;    selected revisions: 1<br />
description:<br />
Implemented check_region(), request_region() and release_region()<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1    locked by: root;<br />
date: 2014/11/03 08:52:22;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: cleanup.c,v<br />
Working file: cleanup.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;    selected revisions: 1<br />
description:<br />
Implemented release_region<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1    locked by: root;<br />
date: 2014/11/03 08:52:22;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: dev_open.c,v<br />
Working file: dev_open.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;    selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1    locked by: root;<br />
date: 2014/11/03 08:52:22;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: dev_release.c,v<br />
Working file: dev_release.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;    selected revisions: 1<br />
description:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1    locked by: root;<br />
date: 2014/11/03 08:52:22;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: dev_write.c,v<br />
Working file: dev_write.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;    selected revisions: 1<br />
description:<br />
Written LSB nibble and MSB nibble. Taken character from application and calaulated LSB and MSB<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1    locked by: root;<br />
date: 2014/11/03 08:52:22;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: dev_read.c,v<br />
Working file: dev_read.c<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;    selected revisions: 1<br />
description:<br />
Read the Nibbles and arranged to calculate the original character<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1    locked by: root;<br />
date: 2014/11/03 08:52:22;  author: root;  state: Exp;<br />
Initial revision</p>
<p>RCS file: file_op.h,v<br />
Working file: file_op.h<br />
head: 1.1<br />
branch:<br />
locks: strict<br />
root: 1.1<br />
access list:<br />
symbolic names:<br />
keyword substitution: kv<br />
total revisions: 1;    selected revisions: 1<br />
description:<br />
Performed different file operations<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
revision 1.1    locked by: root;<br />
date: 2014/11/03 08:52:22;  author: root;  state: Exp;<br />
Initial revision</p>
<p>Write synopsis:</p>
<p>ch2 = ch1 &amp; 0x0f;</p>
<p>ch3 = ch1 &amp; 0xf0;<br />
ch3 = ch3 &gt;&gt; 4;</p>
<p>Read synopsis:</p>
<p>ch1 = ch1 &lt;&lt; 1;<br />
ch1 = ch1 &gt;&gt; 4;<br />
ch1 = ch1 &amp; 0x0f;</p>
<p>ch2 = ch2 &lt;&lt; 1;<br />
ch2 = ch2 &amp; 0xf0;</p>
<p>Enjoy Implementing&#8230;&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/11/nibble-mode-communication-using-parallel-port/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>setjmp header and function</title>
		<link>https://www.emblogic.com/blog/11/setjmp-header-and-function/</link>
		<comments>https://www.emblogic.com/blog/11/setjmp-header-and-function/#comments</comments>
		<pubDate>Mon, 03 Nov 2014 07:25:12 +0000</pubDate>
		<dc:creator><![CDATA[Amit Prakash]]></dc:creator>
				<category><![CDATA[Data Structures with C]]></category>

		<guid isPermaLink="false">http://www.emblogic.com/blog/?p=11654</guid>
		<description><![CDATA[setjmp.h is a header defined in the C standard library to provide &#8220;non-local jumps&#8221;: control flow that deviates from the usual subroutine call and return sequence. The complementary functions setjmp and longjmp provide this functionality. SYNOPSIS #include &#60;setjmp.h&#62; int setjmp(jmp_buf &#8230; <a href="https://www.emblogic.com/blog/11/setjmp-header-and-function/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><b>setjmp.h</b> is a header defined in the C standard library to provide &#8220;non-local jumps&#8221;: control flow that deviates from the usual subroutine call and return sequence.</p>
<p>The complementary functions <b><code>setjmp</code></b> and <b><code>longjmp</code></b> provide this functionality.</p>
<p>SYNOPSIS<br />
#include &lt;setjmp.h&gt;<br />
int setjmp(jmp_buf env);<br />
int sigsetjmp(sigjmp_buf env, int savesigs);</p>
<p>setjmp()  and  longjmp()  are  useful  for  dealing  with errors and interrupts encountered in a low-level subroutine of a program.  setjmp()  saves  the  stack context/environment  in env for later use by longjmp().  The stack context will be invalidated if the function which called setjmp() returns.</p>
<p><code>setjmp</code> saves the current environment (the program state), at some point of program execution, into a platform-specific data structure (<code>jmp_buf</code>) that can be used at some later point of program execution by <code>longjmp</code> to restore the program state to that saved by <code>setjmp</code> into <code>jmp_buf</code>. This process can be imagined to be a &#8220;jump&#8221; back to the point of program execution where <code>setjmp</code> saved the environment.</p>
<p>sigsetjmp() is similar to setjmp().  If, and only if, savesigs is  nonzero,  the process&#8217;s  current  signal  mask  is saved in env and will be restored if a sig?longjmp() is later performed with this env.</p>
]]></content:encoded>
			<wfw:commentRss>https://www.emblogic.com/blog/11/setjmp-header-and-function/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
