Skip to main content
  • Home
  • Development
  • Documentation
  • Donate
  • Operational login
  • Browse the archive

swh logo
SoftwareHeritage
Software
Heritage
Archive
Features
  • Search

  • Downloads

  • Save code now

  • Add forge now

  • Help

Revision ca23b30a62eaaf03ea203ae71d00dc45a046514e authored by Dan Malec on 21 January 2024, 20:20:12 UTC, committed by GitHub on 21 January 2024, 20:20:12 UTC
Merge pull request #178 from jrincayc/issue_176_alt
Issue 176 alt
2 parent s 76ab58b + 0a3309d
  • Files
  • Changes
  • 9531a9c
  • /
  • ztcterm.h
Raw File Download

To reference or cite the objects present in the Software Heritage archive, permalinks based on SoftWare Hash IDentifiers (SWHIDs) must be used.
Select below a type of object currently browsed in order to display its associated SWHID and permalink.

  • revision
  • directory
  • content
revision badge
swh:1:rev:ca23b30a62eaaf03ea203ae71d00dc45a046514e
directory badge
swh:1:dir:9531a9cc9e463851d820846cb6f500b505e3a531
content badge
swh:1:cnt:335acdee127f3cfdc825255308269ca1b83672a2

This interface enables to generate software citations, provided that the root directory of browsed objects contains a citation.cff or codemeta.json file.
Select below a type of object currently browsed in order to generate citations for them.

  • revision
  • directory
  • content
Generate software citation in BibTex format (requires biblatex-software package)
Generating citation ...
Generate software citation in BibTex format (requires biblatex-software package)
Generating citation ...
Generate software citation in BibTex format (requires biblatex-software package)
Generating citation ...
ztcterm.h
/*
 *      ztcterm.h          IBM-specific graphics macros         mak
 *
 *	Copyright (C) 1993 by the Regents of the University of California
 *
 *      This program is free software: you can redistribute it and/or modify
 *      it under the terms of the GNU General Public License as published by
 *      the Free Software Foundation, either version 3 of the License, or
 *      (at your option) any later version.
 *
 *      This program is distributed in the hope that it will be useful,
 *      but WITHOUT ANY WARRANTY; without even the implied warranty of
 *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *      GNU General Public License for more details.
 *
 *      You should have received a copy of the GNU General Public License
 *      along with this program.  If not, see <https://www.gnu.org/licenses/>.
 *
 */

#define GR_SIZE 15000

#define prepare_to_draw gr_mode()
#define done_drawing nop()

#define prepare_to_draw_turtle nop()
#define done_drawing_turtle nop()

#define screen_left 0
#define screen_right (MaxX)
#define screen_top 0
#define screen_bottom (ibm_screen_bottom)
#define max_screen_bottom (MaxY)

#define screen_height (1 + screen_bottom - screen_top)
#define max_screen_height (1 + max_screen_bottom - screen_top)
#define screen_width (1 + screen_right - screen_left)

#define screen_x_center (screen_left + (screen_width)/2)
#define screen_y_center (screen_top + (max_screen_height)/2)

#define turtle_left_max ((screen_left) - (screen_x_center))
#define turtle_right_max ((screen_right) - (screen_x_center))
#define turtle_top_max ((screen_y_center) - (screen_top))
#define turtle_bottom_max ((screen_y_center) - (screen_bottom))

#define screen_x_coord ((screen_x_center) + turtle_x)
#define screen_y_coord ((screen_y_center) - turtle_y)

#define turtle_height t_height()
#define turtle_half_bottom t_half_bottom()
#define turtle_side t_side()

#define clear_screen erase_screen()

#define line_to(x,y) {if (current_vis==0) lineto((int)x,(int)y); else moveto((int)x,(int)y);}
#define move_to(x,y) moveto((int)x,(int)y)
#define draw_string(s) outtext((char *)s)
#define set_pen_vis(v) current_vis = v
#define set_pen_mode(m) set_ibm_pen_mode(m)
#define set_pen_color(c) {ztc_set_penc(c);}
#define set_back_ground(c) {ztc_set_bg(c);}
#define set_pen_width(w) {ztc_penwidth = w;}
#define set_pen_height(h) {ztc_penwidth = h;}
#define set_pen_x(x) moveto((int)x, ztc_y)
#define set_pen_y(y) moveto(ztc_x, (int)y)

/* pen_info is a stucture type with fields for the various
   pen characteristics including the location, size, color,
   mode (e.g. XOR or COPY), pattern, visibility (0 = visible) */

typedef struct { int    h;
		 int	v;
		 int	vis;
		 int	width;
		 int    color;
		 char	pattern[8];
		 int	mode; } pen_info;

#define p_info_x(p) p.h
#define p_info_y(p) p.v

#define pen_width ztc_penwidth
#define pen_height ztc_penwidth
#define pen_mode get_ibm_pen_mode()
#define pen_vis current_vis
#define pen_x ztc_x
#define pen_y ztc_y
#define get_node_pen_pattern Get_node_pen_pattern()

#define pen_reverse ibm_pen_xor()
#define pen_erase ibm_pen_erase()
#define pen_down ibm_pen_down()

#define button Button()
#define mouse_x mickey_x()
#define mouse_y mickey_y()

#define full_screen f_screen()
#define split_screen s_screen()
#define text_screen t_screen()

/* definitions from term.c and math.c for ibmterm.c */
extern int x_coord, y_coord, x_max, y_max, tty_charmode;
extern char so_arr[], se_arr[];

/* definitions from ibmterm.c for graphics.c */
extern void gr_mode();
extern void ibm_pen_erase(), ibm_pen_down(), ibm_pen_xor();
extern void set_ibm_pen_mode();
extern int get_ibm_pen_mode();
extern void save_pen(), restore_pen(), set_pen_pattern();
extern void plain_xor_pen();
extern void set_list_pen_pattern(), get_pen_pattern(), erase_screen();
extern void label(), logofill();
extern void t_screen(), s_screen(), f_screen(), tone();
extern FIXNUM mickey_x(), mickey_y();
extern NODE *Get_node_pen_pattern();
extern FIXNUM t_height();
extern FIXNUM pen_color, back_ground;
extern FLONUM t_half_bottom(), t_side();
extern int current_vis, ibm_screen_bottom;
extern BOOLEAN in_erase_mode;
extern int ztc_penwidth;
extern fg_coord_t ztc_x, ztc_y;
extern void get_palette(int slot,
			unsigned int *r, unsigned int *g, unsigned int *b);
extern void set_palette(int slot,
			unsigned int r, unsigned int g, unsigned int b);
The diff you're trying to view is too large. Only the first 1000 changed files have been loaded.
Showing with 0 additions and 0 deletions (0 / 0 diffs computed)
swh spinner

Computing file changes ...

back to top

Software Heritage — Copyright (C) 2015–2026, The Software Heritage developers. License: GNU AGPLv3+.
The source code of Software Heritage itself is available on our development forge.
The source code files archived by Software Heritage are available under their own copyright and licenses.
Terms of use: Archive access, API— Content policy— Contact— JavaScript license information— Web API