Skip to content

Instantly share code, notes, and snippets.

Rostislav Lisovy lisovy

Block or report user

Report or block lisovy

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View MTRR.c
* Inpired by
#define MTRR_TYPE_UC 0x0
#define MTRR_TYPE_WC 0x1
#define MTRR_TYPE_WT 0x4
#define MTRR_TYPE_WP 0x5
#define MTRR_TYPE_WB 0x6
if [ $# -ne 2 ]; then
echo -e "Usage: $0 FLAC_FILE CUE_FILE\n"
exit 1;
for (( i=1 ; $i-10; i=$i+1 ))
sleep 0.5s;
echo -e ' oo\n<|>\n_|_';
sleep 0.5s;
View imx53_voipac
Barebox bootloader
sudo apt-get install lzop, libusb-1.0-0-dev
Build it
git clone git://
cd barebox/
mkdir _build
CROSS_COMPILE=arm-linux-gnueabihf- make ARCH=arm O=_build imx_v7_defconfig
View lwip.txt
pbuf vs. netbuf
pbuf -- internal representation of a packet (should not be directly accessed
when using netconn or socket API).
PBUF_POOL -- one struct containing header + data buffer (+ space reserved for
headers) obtained from a pool of limited amount of statically allocated
structs (i.e. slab allocator).
The size of the whole struct is fixed, in case the data are bigger than the
pre-allocated buffer in a struct, multiple pbufs are chained together
View mars_board.txt
git clone git://
cd u-boot
# Build U-boot
mkdir _build
make O=_build marsboard_defconfig
View c_debugging.txt
Program flow tracing (with source modification)
* assert()
Instead of
if (variable < 0)
assert(variable > 0);
View C
Undefined behavior
...If any step in a program's execution has undefined behavior,
then the entire execution is without meaning. This is important:
it's not that evaluating (1<<32) has an unpredictable result,
but rather that the entire execution of a program that evaluates
this expression is meaningless. Also, it's not that the execution
is meaningful up to the point where undefined behavior happens:
View C_hw_access
Multiplatform programming
Issues to be aware of:
* Integer types sizes (int -- 16 or 32 bits? long -- 32 or 64 bits?)
- Storing pointers into integer types
(unsigned long on 64-bit Linux vs. 64-bit Windows)
* Endianess (big, little)
* Memory access width (byte access, word access)
* Unaligned memory access
View gst_experiment.c
#include <gst/gst.h>
#include <glib.h>
#include <czmq.h>
#include <pthread.h>
#include <stdio.h>
/* Gstreamer "main" pipeline */
GstElement *pipeline;
void* zmq_thread(void *data)
You can’t perform that action at this time.