mirror of https://codeberg.org/g1n/www.git
287 lines
15 KiB
HTML
287 lines
15 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en"><head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<link rel="stylesheet" href="main.css" type="text/css">
|
|
<link rel="stylesheet" href="blog.css" type="text/css">
|
|
<link rel="alternate" type="application/rss+xml" title="subscribe to this page..." href="g1n.ttm.sh/blog/feed.xml">
|
|
<title>~g1n's blog</title>
|
|
</head><body>
|
|
<div id="divbodyholder">
|
|
<div class="headerholder"><div class="header">
|
|
<div id="title">
|
|
<h1 class="nomargin"><a class="ablack" href="https://g1n.ttm.sh/blog/index.html">~g1n's blog</a></h1>
|
|
<div id="description">~g1n's blog</div>
|
|
</div></div></div>
|
|
<div id="divbody"><div class="content">
|
|
<h3><a class="ablack" href="gru-devlog-20---olibc.html">
|
|
GRU Devlog 20 - olibc
|
|
</a></h3>
|
|
<!-- bashblog_timestamp: #202112121746.18# -->
|
|
<div class="subtitle">December 12, 2021 —
|
|
G1n
|
|
</div>
|
|
<!-- text begin -->
|
|
|
|
<p>This week I was making olibc. I was implementing “string.h”. Also I was fixing liblinux to
|
|
be able to import it without need to use full path in #import. I had several other issues
|
|
with it and also fixed them.</p>
|
|
|
|
<p>My current goal is to implement string.h and after that I am planning to publish it.
|
|
Currently most of funcs are implemented. Making strtok now but all other functions need
|
|
locale.h and I don’t know yet how I will be implemented. But it is already cool that we
|
|
have most of functions that should be in string.h!</p>
|
|
|
|
<p>Also we now have <a href="https://gru.codeberg.page">gru webpage on codeberg</a>! Maybe next week I
|
|
will move all devlogs to gru webpage so it will be easier to move.</p>
|
|
|
|
<p>Hope you liked this post! If you would like to help us, contact me via email, xmpp or irc :)</p>
|
|
|
|
<p>tags: <a href='tag_gru.html'>gru</a>, <a href='tag_olibc.html'>olibc</a>, <a href='tag_liblinux.html'>liblinux</a></p>
|
|
<!-- text end -->
|
|
<h3><a class="ablack" href="gru-devlog-19---gic-and-several-libs.html">
|
|
GRU Devlog 19 - gic and several libs
|
|
</a></h3>
|
|
<!-- bashblog_timestamp: #202112051657.11# -->
|
|
<div class="subtitle">December 05, 2021 —
|
|
G1n
|
|
</div>
|
|
<!-- text begin -->
|
|
|
|
<p>This week started with making gic (maybe name will be change). As I have written before
|
|
it is going to be suckless ii clone. Also I started making girclib - simple C library for irc
|
|
protocol. I think it will be published as separate project, because I would like to make it
|
|
for both: client and server. I don’t yet how it will be done but we will see…</p>
|
|
|
|
<p>Then I thought that would be cool to have own libc, but have no knowledge how it speaks with OS.
|
|
Then I understood that on linux it is working via syscalls. So started making liblinux -
|
|
C library for linux syscalls. Using it we won’t need to use assembly a lot in our libc. Currently
|
|
write and read syscalls are done and programmer can use it if passed -I, -L and -l flags to compiler.
|
|
And it is already published! (check codeberg or tildegit)</p>
|
|
|
|
<p>After understanding how to create proper makefile with liblinux, I started making olibc. Currently
|
|
it has very tiny number of features. But string.h is mostly done! I don’t know when I will fill that
|
|
it will be ready enough to be published, but hope to have useful functions and test suit there till
|
|
that time.</p>
|
|
|
|
<p>When olibc will be done enough I am going to start making C compiler (already have some code, but it
|
|
is old and I not understand how it works, so need to be rewritten). Also I hope that we will have
|
|
enough toolchain (or I will have enough knowledge to implement things that are not done faster)
|
|
for our own Linux or BSD distribution. But that will be in future…</p>
|
|
|
|
<p>Hope you liked this post! If you would like to help us, contact me via email, xmpp or irc :)</p>
|
|
|
|
<p>tags: <a href='tag_gru.html'>gru</a>, <a href='tag_gic.html'>gic</a>, <a href='tag_girclib.html'>girclib</a>, <a href='tag_liblinux.html'>liblinux</a>, <a href='tag_olibc.html'>olibc</a>, <a href='tag_libs.html'>libs</a></p>
|
|
<!-- text end -->
|
|
<h3><a class="ablack" href="gru-devlog-17-18---coreutils-egg-and-ideas.html">
|
|
GRU Devlog 17-18 - coreutils, EGG and ideas
|
|
</a></h3>
|
|
<!-- bashblog_timestamp: #202111281706.52# -->
|
|
<div class="subtitle">November 28, 2021 —
|
|
G1n
|
|
</div>
|
|
<!-- text begin -->
|
|
|
|
<p>Last week I didn’t make devlog because was busy and haven’t done anything useful except
|
|
mkdir for coreutils.</p>
|
|
|
|
<p>This week I started from try to make something in framebuffer but currently nothing, because
|
|
I can’t even understand why my code can’t see size of my display. I think E will require making
|
|
something like Elib for easier communicating with E (but it will be in very far future…)</p>
|
|
|
|
<p>Then I made echo and very simple ls for coreutils. I am going to add more flags to ls next week.
|
|
This week I also have made simple irc bot in python, so I will try to make simple clone of suckless ii
|
|
on C (i think name gic is now really good so if you have ideas please suggest them to me).
|
|
Currently I don’t reallly understand how to work with sockets but I will try to do something.</p>
|
|
|
|
<p>Hope you liked this post! If you would like to help us, contact me via email, xmpp or irc :)</p>
|
|
|
|
<p>tags: <a href='tag_gru.html'>gru</a>, <a href='tag_coreutils.html'>coreutils</a>, <a href='tag_egg.html'>egg</a></p>
|
|
<!-- text end -->
|
|
<h3><a class="ablack" href="gru-devlog-16---ormp-and-egg.html">
|
|
GRU Devlog 16 - ormp and EGG
|
|
</a></h3>
|
|
<!-- bashblog_timestamp: #202111141703.05# -->
|
|
<div class="subtitle">November 14, 2021 —
|
|
G1n
|
|
</div>
|
|
<!-- text begin -->
|
|
|
|
<p>This week i was working on one more new project - ormp. It will be terminal multiplexor.
|
|
Currently i am doing it in ncurses. For current time it is not working - can just handle input but not display it.</p>
|
|
|
|
<p>Also i have an idea for new projects - EGG (Extended/Exciting GRU GUI). I am planning some proj in this category - eggwm, eggterm, eggmenu and E.
|
|
E would be a new display server. We will need to have it for Orion in future. Currently i am planning to do it or on fbdev or on DRM/KMS.</p>
|
|
|
|
<p>Also now yemu can be compiled with different compilers, -pedantic flag was added to makefile and all errors fixed.</p>
|
|
|
|
<p>And now our channels are bridged via matterbridge: irc on ~chat, irc on libera and xmpp muc.</p>
|
|
|
|
<p>Hope you liked this post! If you would like to help us, contact me via email, xmpp or irc :)</p>
|
|
|
|
<p>tags: <a href='tag_gru.html'>gru</a>, <a href='tag_ormp.html'>ormp</a>, <a href='tag_egg.html'>egg</a>, <a href='tag_yemu.html'>yemu</a>, <a href='tag_xmpp.html'>xmpp</a>, <a href='tag_irc.html'>irc</a></p>
|
|
<!-- text end -->
|
|
<h3><a class="ablack" href="gru-devlog-15---ocpu-yemu-and-licenses.html">
|
|
GRU Devlog 15 - ocpu, yemu and licenses
|
|
</a></h3>
|
|
<!-- bashblog_timestamp: #202111071700.07# -->
|
|
<div class="subtitle">November 07, 2021 —
|
|
G1n
|
|
</div>
|
|
<!-- text begin -->
|
|
|
|
<p>This week wasn’t very productive. I was working on one of my personal projects.</p>
|
|
|
|
<p>I have added ADD for registers, INC, DEC and NOP instructions.</p>
|
|
|
|
<p>Also codeberg informed me that yemu has to have license, and I fast added MIT license to all our projects.</p>
|
|
|
|
<p>Hope you liked this post! If you would like to help me, contact me via email, xmpp or irc :)</p>
|
|
|
|
<p>tags: <a href='tag_gru.html'>gru</a>, <a href='tag_ocpu.html'>ocpu</a>, <a href='tag_yemu.html'>yemu</a>, <a href='tag_license.html'>license</a></p>
|
|
<!-- text end -->
|
|
<h3><a class="ablack" href="gru-devlog-14---ocpu-and-yemu.html">
|
|
GRU Devlog 14 - ocpu and yemu
|
|
</a></h3>
|
|
<!-- bashblog_timestamp: #202110311714.06# -->
|
|
<div class="subtitle">October 31, 2021 —
|
|
G1n
|
|
</div>
|
|
<!-- text begin -->
|
|
|
|
<p>This week I was working on ocpu emulator. So using it we can know if specifications can be implemented.
|
|
It helps me adding some description to it.</p>
|
|
|
|
<p>First I made yemu a bit modular, so you need to add several lines to main file and then building your emulator
|
|
based on template (that should be placed in docs one day). Now if someone would like to add some architecture to
|
|
our emulator they won’t need to rewrite it from scratch.</p>
|
|
|
|
<p>I also added –system flag to yemu so architecture can be choosen more user-friendly way.</p>
|
|
|
|
<p>Currently in ocpu emulator only mov and add instructions are implemented.
|
|
We also added some description to commands in specifications, so it is easier to understand what it should do</p>
|
|
|
|
<p>Hope you liked this post! If you would like to help me, contact me via email, xmpp or irc :)</p>
|
|
|
|
<p>tags: <a href='tag_gru.html'>gru</a>, <a href='tag_yemu.html'>yemu</a>, <a href='tag_ocpu.html'>ocpu</a></p>
|
|
<!-- text end -->
|
|
<h3><a class="ablack" href="gru-devlog-13---ocpu-thoughts-and-some-elecronics.html">
|
|
GRU Devlog 13 - ocpu thoughts and some elecronics
|
|
</a></h3>
|
|
<!-- bashblog_timestamp: #202110241605.58# -->
|
|
<div class="subtitle">October 24, 2021 —
|
|
G1n
|
|
</div>
|
|
<!-- text begin -->
|
|
|
|
<p>This week was very busy week at school and I had no time for programming.</p>
|
|
|
|
<p>But in the start of week I was thinking about making ocpu specs more Turing-complete.
|
|
I still think it is not done but maybe it will in some time (and of course more description required).</p>
|
|
|
|
<p>But I had time to buy some transistors and other electronics. Currently I am trying to make half-adder.</p>
|
|
|
|
<p>I have created tiny log page - <a href="https://g1n.ttm.sh/lolcpu/">lolcpu</a>. I am going to post there some of my
|
|
electronic ideas, circuits and progress in doing some electronic things.</p>
|
|
|
|
<p>Hope you liked this post! If you would like to help me, contact me via email, xmpp or irc :)</p>
|
|
|
|
<p>tags: <a href='tag_gru.html'>gru</a>, <a href='tag_lolcpu.html'>lolcpu</a>, <a href='tag_ocpu.html'>ocpu</a>, <a href='tag_transistors.html'>transistors</a>, <a href='tag_electonics.html'>electonics</a></p>
|
|
<!-- text end -->
|
|
<h3><a class="ablack" href="gru-devlog-13---yemu-gasm-and-ocpu.html">
|
|
GRU Devlog 12 - yemu, gasm and ocpu
|
|
</a></h3>
|
|
<!-- bashblog_timestamp: #202110171710.17# -->
|
|
<div class="subtitle">October 17, 2021 —
|
|
G1n
|
|
</div>
|
|
<!-- text begin -->
|
|
|
|
<p>This week I have done several new instructions for yemu. For example all transfer instructions.</p>
|
|
|
|
<p>Also I have rewritten gasm to support 6502, published it and it should help me with debugging yemu.
|
|
It supports not very a lot instructions but I hope it is good start.</p>
|
|
|
|
<p>But I think the coolest what I did this week is ocpu proccessor specification.
|
|
Currently it is draft but i have already published it <a href="https://g1n.ttm.sh/gru/ocpu">here</a>.
|
|
I hope this specifications will be Turing complete and we will try to implement it in real world.
|
|
But firstly we need to make this specififcations complete, assembler and emulator for it.</p>
|
|
|
|
<p>Also smlckz’s idea was to make translator from ocpu assembler instructions to avr to emulate it on arduino!</p>
|
|
|
|
<p>Hope you liked this post! If you would like to help me, contact me via email, xmpp or irc :)</p>
|
|
|
|
<p>tags: <a href='tag_gru.html'>gru</a>, <a href='tag_yemu.html'>yemu</a>, <a href='tag_gasm.html'>gasm</a>, <a href='tag_ocpu.html'>ocpu</a></p>
|
|
<!-- text end -->
|
|
<h3><a class="ablack" href="gru-devlog-11---yemu-and-channel-on-liberachat.html">
|
|
GRU Devlog 11 - yemu and channel on libera.chat
|
|
</a></h3>
|
|
<!-- bashblog_timestamp: #202110081518.16# -->
|
|
<div class="subtitle">October 08, 2021 —
|
|
G1n
|
|
</div>
|
|
<!-- text begin -->
|
|
|
|
<p>I am making this devlog a bit earlier, because I will be busy on weekends.</p>
|
|
|
|
<p>This week I didn’t have plan, but it seems I have done some things to yemu: added loading programs
|
|
from binary file and several instructions - TAX, TAY and NOP.</p>
|
|
|
|
<p>I think gasm will be made for 6502 firstly, because it is easier then x86 and it would help in
|
|
testing yemu.</p>
|
|
|
|
<p>I was trying to make some daily notes in Org Roam (and moved devlog notes there), but it wasn’t
|
|
very success, but I hope to do it more often :)</p>
|
|
|
|
<p>Also I have registered #gru channel on libera, so you can join us also on libera.chat :)</p>
|
|
|
|
<p>Hope you liked this post :). If you would like to help me, contact me via email, xmpp or irc :)</p>
|
|
|
|
<p>tags: <a href='tag_gru.html'>gru</a>, <a href='tag_yemu.html'>yemu</a>, <a href='tag_libera.html'>libera</a>, <a href='tag_org-mode.html'>org-mode</a>, <a href='tag_org-roam.html'>org-roam</a></p>
|
|
<!-- text end -->
|
|
<h3><a class="ablack" href="gru-devlog-10---orsh-now-like-proper-shell-and-gasm.html">
|
|
GRU Devlog 10 - orsh now like proper shell and gasm
|
|
</a></h3>
|
|
<!-- bashblog_timestamp: #202110031554.01# -->
|
|
<div class="subtitle">October 03, 2021 —
|
|
G1n
|
|
</div>
|
|
<!-- text begin -->
|
|
|
|
<p>Hooray! Today is 10’s GRU Devlog! :)</p>
|
|
|
|
<p>This week i was trying to make notes to org document, to not forget something and put TODOs
|
|
there for future weeks.</p>
|
|
|
|
<p>First several days was the most valuable - readline support and signal handling!
|
|
This means you can use emacs-like bindings there (but i think readline also supports vi bindings,
|
|
so maybe i will add them too!)</p>
|
|
|
|
<p>Also we now have very minimal completion support there :), but still proper function need to be added
|
|
for that (currently only filenames completion)</p>
|
|
|
|
<p>Orsh also has one session history, so you don’t need to rewrite command from scratch now</p>
|
|
|
|
<p>And I have started to use it as my main (but had some problems after chsh, so currently is autostarts after bash
|
|
and i can exit from there any time i will need)</p>
|
|
|
|
<p>Then I have started making our own assembler - gasm. Currently it only supports NOP, so i haven’t published it yet.</p>
|
|
|
|
<p>This week I also registered to ~news and shared devlog there (i think this devlog also will be there ;) )
|
|
If you have lobste.rs account please contact me to invite me, if you can, because it may advertize GRU more!</p>
|
|
|
|
<p>Today (Sunday) we had first testing GRU meeting via Jitsi. Thanks to r1k for joining.
|
|
We need to make something like plan our schedule (to know about what to speak) and discuss meeting time better.</p>
|
|
|
|
<p>Hope you liked this post and you will join our XMPP muc (if you are not already there) :).
|
|
If you would like to help me, contact me via email, xmpp or irc :)</p>
|
|
|
|
<p>tags: <a href='tag_gru.html'>gru</a>, <a href='tag_org-mode.html'>org-mode</a>, <a href='tag_gasm.html'>gasm</a>, <a href='tag_orsh.html'>orsh</a>, <a href='tag_meeting.html'>meeting</a>, <a href='tag_lobste.rs.html'>lobste.rs</a>, <a href='tag_tilde.news.html'>tilde.news</a></p>
|
|
<!-- text end -->
|
|
<div id="all_posts"><a href="all_posts.html">archive</a> — <a href="all_tags.html">all tags</a> — <a href="g1n.ttm.sh/blog/feed.xml">rss</a></div>
|
|
</div>
|
|
<div id="footer">CC by-nc-nd <a href="https://tilde.team/~g1n/">G1n</a> — <a href="mailto:g1n@ttm.sh">g1n@ttm.sh</a><br>
|
|
generated with <a href="https://tildegit.org/team/bashblog">bashblog</a>, a single bash script to easily create blogs like this one</div>
|
|
</div></div>
|
|
</body></html>
|