00001 /* Gxsm - Gnome X Scanning Microscopy Project 00002 * universal STM/AFM/SARLS/SPALEED/... controlling and 00003 * data analysis software 00004 * 00005 * DSP tools for Linux 00006 * 00007 * Copyright (C) 1999,2000,2001 Percy Zahl 00008 * 00009 * Authors: Percy Zahl <zahl@users.sf.net> 00010 * WWW Home: http://gxsm.sf.net 00011 * 00012 * This program is free software; you can redistribute it and/or modify 00013 * it under the terms of the GNU General Public License as published by 00014 * the Free Software Foundation; either version 2 of the License, or 00015 * (at your option) any later version. 00016 * 00017 * This program is distributed in the hope that it will be useful, 00018 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00019 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00020 * GNU General Public License for more details. 00021 * 00022 * You should have received a copy of the GNU General Public License 00023 * along with this program; if not, write to the Free Software 00024 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. 00025 */ 00026 00027 /* -*- Mode: C++; indent-tabs-mode: nil; c-basic-offset: 8 c-style: "K&R" -*- */ 00028 00029 /*@ 00030 *@ File: dpramdef.h 00031 *@ Datum: 25.10.1995 00032 *@ Author: P.Zahl 00033 *@ Zweck: definition der Aufteilung des DPRAMs 00034 *@ 00035 *@ 00036 *@ History: 00037 *@ ===================================================================== 00038 *@ V1.00 Basisversion 00039 *@@ 24.4.96 PZ: DPRAM16/32 Implementation 00040 *@@ 24.4.96 PZ: Def. von Datenübertragungsmodi 00041 *@@ 14.12.97 PZ: Namensaenderung in xsmcmd.h 00042 *@@ 12.11.99 PZ: Splitting: DPRAM Zuweisungen / CmdIds 00043 */ 00044 00045 /* 00046 * DSP Datenuebertragungsmodi: nur noch DPRAM32 Mode ! 00047 */ 00048 00049 #define DSP_DPRAMLEN 0x0800 00050 #define DSP_DPRAMFREE 0x07f0 /* abzüglich Mailbox */ 00051 00052 /* OSZI Size */ 00053 #define DSP_OSZI_CTRL 0x0002 00054 #define DSP_OSZI_LEN 0x0100 00055 #define DSP_OSZI_MSK (DSP_OSZI_LEN-1) 00056 00057 #define DSP_LCD_LEN 0x10 00058 #define DSP_DIO_LEN 0x01 00059 00060 /* ================================================= */ 00061 /* DPRAM BEREICHE */ 00062 /* SEM0 */ 00063 /* Mailbox at 0x7f0 (default) */ 00064 /* SEM1 */ 00065 #define DSP_CTRL_REGION 0x0000 00066 #define DSP_CTRL_CMD DSP_CTRL_REGION 00067 #define DSP_CTRL_PARAM (DSP_CTRL_CMD +0x0001) 00068 #define DSP_CTRL_REG_END (DSP_CTRL_PARAM+0x0010) 00069 00070 #define DSP_CTRL_REG_LEN (DSP_CTRL_REG_END-DSP_CTRL_REGION) 00071 00072 /* SEM2 */ 00073 #define DSP_USR_REGION DSP_CTRL_REG_END 00074 #define DSP_USR_OSZI_CTRL DSP_USR_REGION 00075 #define DSP_USR_OSZI_DATA (DSP_USR_OSZI_CTRL + DSP_OSZI_CTRL) 00076 #define DSP_USR_LCD (DSP_USR_OSZI_DATA + DSP_OSZI_LEN) 00077 #define DSP_USR_DIO (DSP_USR_LCD + DSP_LCD_LEN) 00078 #define DSP_USR_REG_END (DSP_USR_DIO + DSP_DIO_LEN) 00079 00080 #define DSP_USR_REG_LEN (DSP_USR_REG_END-DSP_USR_REGION) 00081 #define MK_USR_OFFSET(X) (X-DSP_USR_REGION) 00082 00083 /* SEM3 */ 00084 #define DSP_DATA_REGION DSP_USR_REG_END 00085 #define DSP_DATA_REG_END DSP_DPRAMFREE 00086 00087 #define DSP_DATA_REG_LEN (DSP_DATA_REG_END-DSP_DATA_REGION) 00088 00089 /* ================================================= */ 00090 /* Datenbuffer Start */ 00091 #define DSP_BUFFER_START DSP_DATA_REGION 00092 #define DSP_OSZIBUF_START (DSP_USR_OSZI_DATA) 00093 #define DSP_LCDBUFFER (DSP_USR_LCD) 00094 #define DSP_LCDBUFFERLEN (DSP_LCD_LEN)