diff --git a/externals/bbogart/entry/entry.c b/externals/bbogart/entry/entry.c
index 99fe1bce0b9a0b4857cf4ff2a4abbdb5aad76961..947c987da56fade110601e5c4922178eb34b0afe 100644
--- a/externals/bbogart/entry/entry.c
+++ b/externals/bbogart/entry/entry.c
@@ -133,32 +133,32 @@ static void set_tk_widget_ids(t_entry *x, t_canvas *canvas)
     x->x_canvas = canvas;
 
     /* Tk ID for the current canvas that this object is drawn in */
-    sprintf(buf,".x%zx.c", (t_int) canvas);
+    sprintf(buf,".x%zx.c", (t_uint) canvas);
     x->canvas_id = getbytes(strlen(buf) + 1);
     strcpy(x->canvas_id, buf);
 
     /* Tk ID for the "frame" the other things are drawn in */
-    sprintf(buf,"%s.frame%zx", x->canvas_id, (t_int)x);
+    sprintf(buf,"%s.frame%zx", x->canvas_id, (t_uint)x);
     x->frame_id = getbytes(strlen(buf) + 1);
     strcpy(x->frame_id, buf);
 
-    sprintf(buf,"%s.text%zx", x->frame_id, (t_int)x);
+    sprintf(buf,"%s.text%zx", x->frame_id, (t_uint)x);
     x->text_id = getbytes(strlen(buf) + 1);
     strcpy(x->text_id, buf);    /* Tk ID for the "text", the meat! */
 
-    sprintf(buf,"%s.window%zx", x->canvas_id, (t_int)x);
+    sprintf(buf,"%s.window%zx", x->canvas_id, (t_uint)x);
     x->window_tag = getbytes(strlen(buf) + 1);
     strcpy(x->window_tag, buf);    /* Tk ID for the resizing "window" */
 
-    sprintf(buf,"%s.handle%zx", x->canvas_id, (t_int)x);
+    sprintf(buf,"%s.handle%zx", x->canvas_id, (t_uint)x);
     x->handle_id = getbytes(strlen(buf) + 1);
     strcpy(x->handle_id, buf);    /* Tk ID for the resizing "handle" */
 
-    sprintf(buf,"%s.scrollbar%zx", x->frame_id, (t_int)x);
+    sprintf(buf,"%s.scrollbar%zx", x->frame_id, (t_uint)x);
     x->scrollbar_id = getbytes(strlen(buf) + 1);
     strcpy(x->scrollbar_id, buf);    /* Tk ID for the optional "scrollbar" */
 
-    sprintf(buf,"all%zx", (t_int)x);
+    sprintf(buf,"all%zx", (t_uint)x);
     x->all_tag = getbytes(strlen(buf) + 1);
     strcpy(x->all_tag, buf);    /* Tk ID for the optional "scrollbar" */
 }
@@ -760,7 +760,7 @@ static void *entry_new(t_symbol *s, int argc, t_atom *argv)
     x->x_data_outlet = outlet_new(&x->x_obj, &s_float);
     x->x_status_outlet = outlet_new(&x->x_obj, &s_symbol);
 
-    sprintf(buf,"entry%zx",(t_int)x);
+    sprintf(buf,"entry%zx",(t_uint)x);
     x->tcl_namespace = getbytes(strlen(buf) + 1);
     strcpy(x->tcl_namespace, buf);    
 
diff --git a/externals/bbogart/popup/popup.c b/externals/bbogart/popup/popup.c
index 58b3b2a1d1ca131545dbf2749bea06bee64d6eaa..e47611709f7c52bf14f8fe3ddcd72ead06e980ee 100644
--- a/externals/bbogart/popup/popup.c
+++ b/externals/bbogart/popup/popup.c
@@ -621,7 +621,7 @@ static void *popup_new(t_symbol *s, int argc, t_atom *argv)
     }
 
       /* Bind the recieve "popup%zx" to the widget outlet*/
-      sprintf(buf,"popup%zx", (t_int)x);
+      sprintf(buf,"popup%zx", (t_uint)x);
       x->x_sym = gensym(buf);
       pd_bind(&x->x_obj.ob_pd, x->x_sym);
 
diff --git a/externals/ggee/gui/button.c b/externals/ggee/gui/button.c
index ff4ca42f041dd51cbd36be01e14132ad051b5b5d..78f0e92f732bef7a4e5888e54b1e44ad61d63fe8 100644
--- a/externals/ggee/gui/button.c
+++ b/externals/ggee/gui/button.c
@@ -313,7 +313,7 @@ static void *button_new(t_symbol* text)
     /* TODO .. ask the button for its width */
     x->x_width += strlen(x->x_text->s_name)*5.2;
 
-    sprintf(buf,"button%zx", (t_int)x);
+    sprintf(buf,"button%zx", (t_uint)x);
     x->x_sym = gensym(buf);
     pd_bind(&x->x_obj.ob_pd, x->x_sym);
 
diff --git a/externals/ggee/gui/image.c b/externals/ggee/gui/image.c
index 7a760774c63bf85d309adaca711ac568fdce075c..f0b9c7915ad087237b3a9a62add5b36b15168a83 100644
--- a/externals/ggee/gui/image.c
+++ b/externals/ggee/gui/image.c
@@ -502,7 +502,7 @@ static void *image_new(t_symbol *s, t_int argc, t_atom *argv)
     }
     // Create default receiver
     char buf[MAXPDSTRING];
-    sprintf(buf, "#%zx", (t_int)x);
+    sprintf(buf, "#%zx", (t_uint)x);
     x->x_receive = gensym(buf);
     pd_bind(&x->x_obj.ob_pd, x->x_receive);
     outlet_new(&x->x_obj, &s_bang);
diff --git a/externals/hcs/canvas_name.c b/externals/hcs/canvas_name.c
index b71f396534070fcfd642c79043b6f0fd52ca19c5..75d4772c624744cb024117f9abd043a1139ac50e 100644
--- a/externals/hcs/canvas_name.c
+++ b/externals/hcs/canvas_name.c
@@ -18,7 +18,7 @@ typedef struct _canvas_name
 static t_symbol* make_canvas_symbol(t_canvas* canvas)
 {
         char buf[MAXPDSTRING];
-        snprintf(buf, MAXPDSTRING, ".x%zx.c", (t_int)canvas);
+        snprintf(buf, MAXPDSTRING, ".x%zx.c", (t_uint)canvas);
         return gensym(buf);
 }
 
diff --git a/externals/hcs/colorpanel.c b/externals/hcs/colorpanel.c
index 1fa9db2a2f91b0f7e71807c09022caf151ed4a87..eea10433991b8ba559a604e5d4c8ddbe5b8aee5d 100644
--- a/externals/hcs/colorpanel.c
+++ b/externals/hcs/colorpanel.c
@@ -80,7 +80,7 @@ static void *colorpanel_new( void)
 {
     char buf[MAXPDSTRING];
     t_colorpanel *x = (t_colorpanel *)pd_new(colorpanel_class);
-    sprintf(buf, "#%zx", (t_int)x);
+    sprintf(buf, "#%zx", (t_uint)x);
     x->x_s = gensym(buf);
     pd_bind(&x->x_obj.ob_pd, x->x_s);
     outlet_new(&x->x_obj, &s_list);
diff --git a/externals/hcs/cursor.c b/externals/hcs/cursor.c
index 34acd5f980526ddd51be564c1725ca4be497c9c0..d802c77f4b6034edd44f65d3077110fb97b64753 100644
--- a/externals/hcs/cursor.c
+++ b/externals/hcs/cursor.c
@@ -110,7 +110,7 @@ static void *cursor_new(void)
 
     x->parent_canvas = canvas_getcurrent();
 
-    sprintf(buf, "#%zx", (t_int)x);
+    sprintf(buf, "#%zx", (t_uint)x);
     x->receive_symbol = gensym(buf);
     pd_bind(&x->x_obj.ob_pd, x->receive_symbol);
 	x->data_outlet = outlet_new(&x->x_obj, 0);
diff --git a/externals/hcs/screensize.c b/externals/hcs/screensize.c
index e3b838ec5c34d008b3e54276cba054a37064af8f..69402e546f76097f5c7da88d41347675644e176e 100644
--- a/externals/hcs/screensize.c
+++ b/externals/hcs/screensize.c
@@ -29,7 +29,7 @@ static void *screensize_new(void)
     char buf[MAXPDSTRING];
     t_screensize *x = (t_screensize *)pd_new(screensize_class);
 
-    sprintf(buf, "#%zx", (t_int)x);
+    sprintf(buf, "#%zx", (t_uint)x);
     x->receive_symbol = gensym(buf);
     pd_bind(&x->x_obj.ob_pd, x->receive_symbol);
 
diff --git a/externals/hcs/sys_gui.c b/externals/hcs/sys_gui.c
index 4851d70fca3c7acc0607c6aed59adc19bfadb2eb..8b14532e11489095270573f3bdbef9fd1ed42351 100644
--- a/externals/hcs/sys_gui.c
+++ b/externals/hcs/sys_gui.c
@@ -65,7 +65,7 @@ static void *sys_gui_new(t_symbol *s)
 	x->x_outlet = outlet_new(&x->x_obj, &s_anything);
 
     char buf[MAXPDSTRING];
-    sprintf(buf, "#%zx", (t_int)x);
+    sprintf(buf, "#%zx", (t_uint)x);
     x->x_receive_symbol = gensym(buf);
     pd_bind(&x->x_obj.ob_pd, x->x_receive_symbol);
 
diff --git a/externals/hcs/window_name.c b/externals/hcs/window_name.c
index bdda989c367289883fb72f9656844d6f29236966..20c99906affe9653def789f325e32301516d597d 100644
--- a/externals/hcs/window_name.c
+++ b/externals/hcs/window_name.c
@@ -18,7 +18,7 @@ typedef struct _window_name
 static t_symbol* make_canvas_symbol(t_canvas* canvas)
 {
         char buf[MAXPDSTRING];
-        snprintf(buf, MAXPDSTRING, ".x%zx", (t_int)canvas);
+        snprintf(buf, MAXPDSTRING, ".x%zx", (t_uint)canvas);
         return gensym(buf);
 }
 
diff --git a/externals/iem/iemguts/src/receivecanvas.c b/externals/iem/iemguts/src/receivecanvas.c
index eca09d6e4275361e9eab1408713257d4b411d649..c369bdf7e89f024c050a093771222704a270007b 100644
--- a/externals/iem/iemguts/src/receivecanvas.c
+++ b/externals/iem/iemguts/src/receivecanvas.c
@@ -122,7 +122,7 @@ static void *receivecanvas_new(t_floatarg f)
 
   if(canvas) {
     char buf[MAXPDSTRING];
-    snprintf(buf, MAXPDSTRING-1, "x%zx", (t_int)canvas);
+    snprintf(buf, MAXPDSTRING-1, "x%zx", (t_uint)canvas);
     buf[MAXPDSTRING-1]=0;
 
     x->x_proxy=receivecanvas_proxy_new(x, gensym(buf));
diff --git a/externals/miXed/cyclone/hammer/active.c b/externals/miXed/cyclone/hammer/active.c
index fef61a2160113a4c02c768fc3a9649257eec574e..878f7739bd3b9be1e16523f638ef521dbe1e62f6 100644
--- a/externals/miXed/cyclone/hammer/active.c
+++ b/externals/miXed/cyclone/hammer/active.c
@@ -36,7 +36,7 @@ static void *active_new(void)
 {
     t_active *x = (t_active *)pd_new(active_class);
     char buf[32];
-    sprintf(buf, ".x%zx.c", (t_int)canvas_getcurrent());
+    sprintf(buf, ".x%zx.c", (t_uint)canvas_getcurrent());
     x->x_cvname = gensym(buf);
     x->x_on = 0;
     outlet_new((t_object *)x, &s_float);
diff --git a/externals/miXed/cyclone/hammer/comment.c b/externals/miXed/cyclone/hammer/comment.c
index e5891b3f9c636093c859775f9c448ab86d229729..003f2541645b08b55b4e941a9fe8aac1b1075886 100644
--- a/externals/miXed/cyclone/hammer/comment.c
+++ b/externals/miXed/cyclone/hammer/comment.c
@@ -743,9 +743,9 @@ static void *comment_new(t_symbol *s, int ac, t_atom *av)
     t->te_type = T_TEXT;
     x->x_glist = canvas_getcurrent();
     x->x_canvas = 0;
-    sprintf(x->x_tag, "all%zx", (t_int)x);
-    sprintf(x->x_texttag, "t%zx", (t_int)x);
-    sprintf(x->x_outlinetag, "h%zx", (t_int)x);
+    sprintf(x->x_tag, "all%zx", (t_uint)x);
+    sprintf(x->x_texttag, "t%zx", (t_uint)x);
+    sprintf(x->x_outlinetag, "h%zx", (t_uint)x);
     x->x_pixwidth = 0;
     x->x_fontsize = 0;
     x->x_fontfamily = 0;
@@ -826,7 +826,7 @@ textpart:
     x->x_transclock = clock_new(x, (t_method)comment_transtick);
     x->x_bbset = 0;
     x->x_bbpending = 0;
-    sprintf(buf, "miXed%zx", (t_int)x);
+    sprintf(buf, "miXed%zx", (t_uint)x);
     x->x_bindsym = gensym(buf);
     pd_bind((t_pd *)x, x->x_bindsym);
     if (!commentsink)
diff --git a/externals/miXed/cyclone/hammer/pv.c b/externals/miXed/cyclone/hammer/pv.c
index 1d98ab17b08e6869384e0e1541bc61aceb2d9421..10c813716f094bdbd440fdcf8589536ec4eec67d 100644
--- a/externals/miXed/cyclone/hammer/pv.c
+++ b/externals/miXed/cyclone/hammer/pv.c
@@ -362,7 +362,7 @@ static void pv_objstatus(t_pv *x, t_glist *glist)
 		 (t_int)g, glist->gl_name->s_name);
 	else if (pd_class(&g->g_pd) == pv_class
 		 && ((t_pv *)g)->x_name == x->x_name)
-	    post("%zx owning patcher [%s]", (t_int)g, glist->gl_name->s_name);
+	    post("%zx owning patcher [%s]", (t_uint)g, glist->gl_name->s_name);
     }
 }
 
diff --git a/externals/moonlib/image.c b/externals/moonlib/image.c
index 28cac709eb8637feb9bbaca7fe353e5982b66441..2873e539e93d95ae3e857925004d52e54317771c 100644
--- a/externals/moonlib/image.c
+++ b/externals/moonlib/image.c
@@ -64,8 +64,8 @@ static void image_drawme(t_image *x, t_glist *glist, int firsttime)
             glist_istoplevel(glist));
         if (x->x_image == &s_) // if we have a blank image name, use the included filler
         {
-            sprintf(key, "x%zx", (t_int)pd_class(&x->x_obj.te_pd));
-            sprintf(key2, "x%zx", (t_int)pd_class(&x->x_obj.te_pd));
+            sprintf(key, "x%zx", (t_uint)pd_class(&x->x_obj.te_pd));
+            sprintf(key2, "x%zx", (t_uint)pd_class(&x->x_obj.te_pd));
             strcat(key, key2);
             strcat(key, "default");
             //x->x_image = gensym("::moonlib::image::noimage");
@@ -90,7 +90,7 @@ static void image_drawme(t_image *x, t_glist *glist, int firsttime)
         }
         else
         {
-            sprintf(key, "x%zx", (t_int)x);
+            sprintf(key, "x%zx", (t_uint)x);
             const char *fname = image_get_filename(x, x->x_image->s_name);
             if (!x->x_localimage)
             {
@@ -283,7 +283,7 @@ static void image_open(t_gobj *z, t_symbol *file)
     fname = image_get_filename(x, file->s_name);
     if (fname)
     {
-        sprintf(key, "x%zx", (t_int)x);
+        sprintf(key, "x%zx", (t_uint)x);
         x->x_image = gensym(fname);
         x->x_key = gensym(key);
         x->x_type = 0;
@@ -327,7 +327,7 @@ static void image_load(t_gobj *z, t_symbol *image, t_symbol *file)
         //    x, image->s_name, fname);
         /* For these class-accessible names, we prefix the user-provided
            name with a class pointer. */
-        sprintf(key, "x%zx", (t_int)pd_class(&x->x_obj.te_pd));
+        sprintf(key, "x%zx", (t_uint)pd_class(&x->x_obj.te_pd));
         strcat(key, image->s_name);
         gui_vmess("gui_load_image", "xss",
             glist_getcanvas(x->x_glist), key, fname);
@@ -343,7 +343,7 @@ static void image_set(t_gobj *z, t_symbol *image)
     char key[MAXPDSTRING];
     t_image *x = (t_image *)z;
     /* key is the class address followed by the user-supplied string */
-    sprintf(key, "x%zx", (t_int)pd_class(&x->x_obj.te_pd));
+    sprintf(key, "x%zx", (t_uint)pd_class(&x->x_obj.te_pd));
     strcat(key, image->s_name);
     x->x_image = image;
     x->x_key = gensym(key);
@@ -394,7 +394,7 @@ static void *image_new(t_symbol *image, t_float type)
     {
         if (x->x_type)
         {
-            sprintf(key, "x%zx", (t_int)pd_class(&x->x_obj.te_pd));
+            sprintf(key, "x%zx", (t_uint)pd_class(&x->x_obj.te_pd));
             strcat(key, image->s_name);
             x->x_image = image;
             x->x_key = gensym(key);
@@ -439,8 +439,8 @@ void image_setup(void)
        of moonlib/image */
     char key[MAXPDSTRING];
     char key2[MAXPDSTRING];
-    sprintf(key, "x%zx", (t_int)image_class);
-    sprintf(key2, "x%zx", (t_int)image_class);
+    sprintf(key, "x%zx", (t_uint)image_class);
+    sprintf(key2, "x%zx", (t_uint)image_class);
     strcat(key, key2);
     strcat(key, "default");
     gui_vmess("gui_load_default_image", "ss", "dummy", key);
diff --git a/externals/tof/src/folderpanel.c b/externals/tof/src/folderpanel.c
index 9befda795ca688394a447a406bc7bd58fcb7a8cd..ce6349f52873eeb36c3e04d2fdb2bca2cb85a9ac 100644
--- a/externals/tof/src/folderpanel.c
+++ b/externals/tof/src/folderpanel.c
@@ -57,7 +57,7 @@ static void *folderpanel_new( void)
 {
     char buf[50];
     t_folderpanel *x = (t_folderpanel *)pd_new(folderpanel_class);
-    sprintf(buf, "d%zx", (t_int)x);
+    sprintf(buf, "d%zx", (t_uint)x);
     x->x_s = gensym(buf);
     pd_bind(&x->x_obj.ob_pd, x->x_s);
     outlet_new(&x->x_obj, &s_symbol);
diff --git a/externals/tof/src/imagebang.c b/externals/tof/src/imagebang.c
index 54a9d6fa0f56216059a617beb76b1af67d579e45..107fe7386d022dbf03a165a5079bd11c938fd658 100644
--- a/externals/tof/src/imagebang.c
+++ b/externals/tof/src/imagebang.c
@@ -46,7 +46,7 @@ static void imagebang_bang(t_imagebang *x)
         clock_delay(x->clock_brk, 50);
         //x->flashed = 1;
         // key_a:
-        sprintf(image_key, "%zx_a", (t_int)x);
+        sprintf(image_key, "%zx_a", (t_uint)x);
         gui_vmess("gui_image_configure", "xxss",
             glist_getcanvas(x->glist),
             x,
@@ -58,7 +58,7 @@ static void imagebang_bang(t_imagebang *x)
         sys_vgui(".x%x.c itemconfigure %ximage -image %x_imagebang \n",
             glist, x,x->image_b);
         // key_b:
-        sprintf(image_key, "%zx_b", (t_int)x);
+        sprintf(image_key, "%zx_b", (t_uint)x);
         gui_vmess("gui_image_configure", "xxss",
             glist_getcanvas(x->glist),
             x,
@@ -78,7 +78,7 @@ static void imagebang_flash_timeout(t_imagebang *x)
     t_glist* glist = glist_getcanvas(x->glist);
     char key_a[MAXPDSTRING];
     x->flashing = 0;
-    sprintf(key_a, "%zx_a", (t_int)x);
+    sprintf(key_a, "%zx_a", (t_uint)x);
     gui_vmess("gui_image_configure", "xxss",
         glist_getcanvas(x->glist),
         x,
@@ -97,7 +97,7 @@ static void imagebang_brk_timeout(t_imagebang *x)
     x->flashing = 1;
     //sys_vgui(".x%x.c itemconfigure %ximage -image %x_imagebang \n",
     //    glist, x,x->image_b);
-    sprintf(key_b, "%zx_b", (t_int)x);
+    sprintf(key_b, "%zx_b", (t_uint)x);
     gui_vmess("gui_image_configure", "xxss",
         glist_getcanvas(x->glist),
         x,
@@ -153,7 +153,7 @@ static void imagebang_drawme(t_imagebang *x, t_glist *glist, int firsttime)
             text_xpix(&x->x_obj, glist),
             text_ypix(&x->x_obj, glist),
             glist_istoplevel(glist));
-        sprintf(key_a, "%zx_a", (t_int)x);
+        sprintf(key_a, "%zx_a", (t_uint)x);
         gui_vmess("gui_gobj_draw_image", "xxss",
             glist_getcanvas(glist),
             x,
@@ -303,8 +303,8 @@ static void imagebang_free(t_imagebang *x) {
     DEBUG(sys_vgui("pd [concat DEBUG b exists [info exists %x_imagebang] \\;]\n",x->image_b);)
      DEBUG(sys_vgui("pd [concat DEBUG a exists [info exists %x_imagebang] \\;]\n",x->image_a);)
     
-    sprintf(key_a, "%zx_a", (t_int)x);
-    sprintf(key_b, "%zx_b", (t_int)x);
+    sprintf(key_a, "%zx_a", (t_uint)x);
+    sprintf(key_b, "%zx_b", (t_uint)x);
     gui_vmess("gui_image_free", "s", key_a);
     gui_vmess("gui_image_free", "s", key_b);
     if (x->receive) {
@@ -352,7 +352,7 @@ static void *imagebang_new(t_symbol *s, int argc, t_atom *argv)
     if ( argc && (argv)->a_type == A_SYMBOL )
     {
         image_a= atom_getsymbol(argv);
-        sprintf(key_a, "%zx_a", (t_int)x);
+        sprintf(key_a, "%zx_a", (t_uint)x);
 
         // Get image file path
         fname = imagebang_get_filename(x,image_a->s_name);
@@ -385,7 +385,7 @@ static void *imagebang_new(t_symbol *s, int argc, t_atom *argv)
     if ( argc > 1 && (argv+1)->a_type == A_SYMBOL )
     {
         image_b= atom_getsymbol(argv+1);
-        sprintf(key_b, "%zx_b", (t_int)x);
+        sprintf(key_b, "%zx_b", (t_uint)x);
 
         // Get image file path
         fname = imagebang_get_filename(x,image_b->s_name);
diff --git a/externals/unauthorized/cooled~.c b/externals/unauthorized/cooled~.c
index 61e5faacbc3365549a4c16eaee4f8d44e3c3e2f8..11354eb537217ca121278ba0223eb9f5c465e8d8 100644
--- a/externals/unauthorized/cooled~.c
+++ b/externals/unauthorized/cooled~.c
@@ -238,7 +238,7 @@ static void cooled_update_block(t_cooled *x, t_glist *glist, int bnumber)
 
     for ( i=0; i<x->x_zoom; i++ )
     {
-        sprintf( x->x_guicommand, "COOLEDIMAGE%zx put {%s} -to %d 0\n", (t_int)x, x->x_gifdata, (bnumber*x->x_zoom)+i );
+        sprintf( x->x_guicommand, "COOLEDIMAGE%zx put {%s} -to %d 0\n", (t_uint)x, x->x_gifdata, (bnumber*x->x_zoom)+i );
         if ( glist_isvisible( x->x_glist ) )
             sys_gui( x->x_guicommand );
     }
diff --git a/pd/src/g_all_guis.c b/pd/src/g_all_guis.c
index d920eecb1f41672794886e05953fcdd8d683c7fd..1af9841ae27d20a162c37aa3e1c1e726efa38d18 100644
--- a/pd/src/g_all_guis.c
+++ b/pd/src/g_all_guis.c
@@ -944,15 +944,15 @@ t_scalehandle *scalehandle_new(t_object *x, t_glist *glist, int scale,
     h->h_glist = glist;
     if (!scale) /* Only bind for labels-- scaling uses pd_vmess in g_editor.c */
     {
-        sprintf(buf, "_l%zx", (t_int)x);
+        sprintf(buf, "_l%zx", (t_uint)x);
         pd_bind((t_pd *)h, h->h_bindsym = gensym(buf));
     }
     else if (scale && pd_class((t_pd *)x) == my_canvas_class)
     {
-        sprintf(buf, "_s%zx", (t_int)x);
+        sprintf(buf, "_s%zx", (t_uint)x);
         pd_bind((t_pd *)h, h->h_bindsym = gensym(buf));
     }
-    sprintf(h->h_outlinetag, "h%zx", (t_int)h);
+    sprintf(h->h_outlinetag, "h%zux", (t_uint)h);
     h->h_dragon = 0;
     h->h_scale = scale;
     h->h_offset_x = 0;
@@ -961,7 +961,7 @@ t_scalehandle *scalehandle_new(t_object *x, t_glist *glist, int scale,
     h->h_adjust_y = 0;
     h->h_vis = 0;
     h->h_constrain = 0;
-    sprintf(h->h_pathname, ".x%zx.h%zx", (t_int)h->h_glist, (t_int)h);
+    sprintf(h->h_pathname, ".x%zx.h%zx", (t_uint)h->h_glist, (t_uint)h);
     h->h_clickfn = chf;
     h->h_motionfn = mhf;
     return h;
diff --git a/pd/src/g_canvas.c b/pd/src/g_canvas.c
index e61be8be685b92a58e4eec360ad7379d315d5307..f4380cf3ffa7ebfef490c1f7557cc301fb3fdadd 100644
--- a/pd/src/g_canvas.c
+++ b/pd/src/g_canvas.c
@@ -489,7 +489,7 @@ t_canvas *canvas_new(void *dummy, t_symbol *sel, int argc, t_atom *argv)
     canvas_bind(x);
     x->gl_loading = 1;
     x->gl_unloading = 0;
-    //fprintf(stderr,"loading = 1 .x%zx owner=.x%zx\n", (t_int)x, (t_int)x->gl_owner);
+    //fprintf(stderr,"loading = 1 .x%zx owner=.x%zx\n", (t_uint)x, (t_uint)x->gl_owner);
     x->gl_goprect = 0;      /* no GOP rectangle unless it's turned on later */
         /* cancel "vis" flag if we're a subpatch of an
          abstraction inside another patch.  A separate mechanism prevents
@@ -845,9 +845,9 @@ void canvas_draw_gop_resize_hooks(t_canvas* x)
         x->gl_goprect && !x->gl_editor->e_selection)
     {
         //Drawing and Binding Resize_Blob for GOP
-        //fprintf(stderr,"draw_gop_resize_hooks DRAW %zx %zx\n", (t_int)x, (t_int)glist_getcanvas(x));
-        sprintf(sh->h_pathname, ".x%zx.h%zx", (t_int)x, (t_int)sh);
-        sprintf(mh->h_pathname, ".x%zx.h%zx", (t_int)x, (t_int)mh);
+        //fprintf(stderr,"draw_gop_resize_hooks DRAW %zx %zx\n", (t_uint)x, (t_uint)glist_getcanvas(x));
+        sprintf(sh->h_pathname, ".x%zx.h%zx", (t_uint)x, (t_uint)sh);
+        sprintf(mh->h_pathname, ".x%zx.h%zx", (t_uint)x, (t_uint)mh);
 
         /* These are handled now in canvas_doclick */
         //scalehandle_draw_select(sh,
@@ -898,7 +898,7 @@ void canvas_drawredrect(t_canvas *x, int doit)
     called from the GUI after the fact to "notify" us that we're mapped. */
 void canvas_map(t_canvas *x, t_floatarg f)
 {
-    //fprintf(stderr,"canvas_map %zx %f\n", (t_int)x, f);
+    //fprintf(stderr,"canvas_map %zx %f\n", (t_uint)x, f);
     int flag = (f != 0);
     t_gobj *y;
     if (flag)
@@ -952,7 +952,7 @@ void canvas_map(t_canvas *x, t_floatarg f)
 void canvas_redraw(t_canvas *x)
 {
     if (do_not_redraw) return;
-    //fprintf(stderr,"canvas_redraw %zx\n", (t_int)x);
+    //fprintf(stderr,"canvas_redraw %zx\n", (t_uint)x);
     if (glist_isvisible(x))
     {
         //fprintf(stderr,"canvas_redraw glist_isvisible=true\n");
@@ -995,7 +995,7 @@ void glist_menu_open(t_glist *x)
         else
         {
             // Not sure if this needs to get ported... need to test
-            //sys_vgui("focus .x%zx\n", (t_int)x);
+            //sys_vgui("focus .x%zx\n", (t_uint)x);
         }
     }
     else
@@ -1032,7 +1032,7 @@ extern void canvas_group_free(t_pd *x);
 
 void canvas_free(t_canvas *x)
 {
-    //fprintf(stderr,"canvas_free %zx\n", (t_int)x);
+    //fprintf(stderr,"canvas_free %zx\n", (t_uint)x);
     t_gobj *y;
     int dspstate = canvas_suspend_dsp();
 
@@ -1143,7 +1143,7 @@ void canvas_eraselinesfor(t_canvas *x, t_text *text)
             if (x->gl_editor)
             {
                 char tagbuf[MAXPDSTRING];
-                sprintf(tagbuf, "l%zx", (t_int)oc);
+                sprintf(tagbuf, "l%zx", (t_uint)oc);
                 gui_vmess("gui_canvas_delete_line", "xs",
                     glist_getcanvas(x), tagbuf);
             }
@@ -1167,7 +1167,7 @@ void canvas_deletelinesforio(t_canvas *x, t_text *text,
             if (x->gl_editor)
             {
                 char buf[MAXPDSTRING];
-                sprintf(buf, "l%zx", (t_int)oc);
+                sprintf(buf, "l%zx", (t_uint)oc);
                 gui_vmess("gui_canvas_delete_line", "xs",
                     glist_getcanvas(x),
                     buf);
@@ -1454,7 +1454,7 @@ static void *subcanvas_new(t_symbol *s)
 {
     t_atom a[6];
     t_canvas *x, *z = canvas_getcurrent();
-    //fprintf(stderr,"subcanvas_new current canvas .x%zx\n", (t_int)z);
+    //fprintf(stderr,"subcanvas_new current canvas .x%zx\n", (t_uint)z);
     if (!*s->s_name) s = gensym("/SUBPATCH/");
     SETFLOAT(a, 0);
     SETFLOAT(a+1, GLIST_DEFCANVASYLOC);
@@ -2310,7 +2310,7 @@ static void canvas_f(t_canvas *x, t_symbol *s, int argc, t_atom *argv)
     {
         for (g = x->gl_list; g2 = g->g_next; g = g2)
             ;
-        //fprintf(stderr,"same canvas .x%zx .x%zx\n", (t_int)g, (t_int)x);
+        //fprintf(stderr,"same canvas .x%zx .x%zx\n", (t_uint)g, (t_uint)x);
     }
     if ((ob = pd_checkobject(&g->g_pd)) || pd_class(&g->g_pd) == canvas_class)
     {
diff --git a/pd/src/g_editor.c b/pd/src/g_editor.c
index aaf73271ea5161fb1f84bc3479b62f73ec69b8d3..08447ab59e8fb81c1600bc25b0aa78479d77c085 100644
--- a/pd/src/g_editor.c
+++ b/pd/src/g_editor.c
@@ -2151,7 +2151,7 @@ void canvas_undo_font(t_canvas *x, void *z, int action)
         if (properties)
         {
             char tagbuf[MAXPDSTRING];
-            sprintf(tagbuf, ".gfxstub%zx", (t_int)properties);
+            sprintf(tagbuf, ".gfxstub%zx", (t_uint)properties);
             gui_vmess("gui_font_dialog_change_size", "si",
                 tagbuf,
                 u_f->font);
@@ -2601,7 +2601,7 @@ static t_editor *editor_new(t_glist *owner)
     x->e_connectbuf = binbuf_new();
     x->e_deleted = binbuf_new();
     x->e_glist = owner;
-    sprintf(buf, "x%.6zx", (t_int)owner);
+    sprintf(buf, "x%.6zx", (t_uint)owner);
     x->e_guiconnect = guiconnect_new(&owner->gl_pd, gensym(buf));
     x->gl_magic_glass = magicGlass_new(owner);
     x->canvas_cnct_inlet_tag[0] = 0;
@@ -2737,7 +2737,7 @@ void canvas_vis(t_canvas *x, t_floatarg f)
                 }
                 else
                 {
-                    sys_vgui("focus .x%zx\n", (t_int)x);
+                    sys_vgui("focus .x%zx\n", (t_uint)x);
                 }
             }
             else
diff --git a/pd/src/g_graph.c b/pd/src/g_graph.c
index 484dd238675de51cbdcdea1d2d7d6786025b5858..d93cd3db6b7c81b2392f78114bb3c87407d9458a 100644
--- a/pd/src/g_graph.c
+++ b/pd/src/g_graph.c
@@ -135,7 +135,7 @@ void glist_update_redrect(t_glist *x)
 
 void glist_add(t_glist *x, t_gobj *y)
 {
-    //fprintf(stderr,"glist_add %zx %d\n", (t_int)x, (x->gl_editor ? 1 : 0));    
+    //fprintf(stderr,"glist_add %zx %d\n", (t_uint)x, (x->gl_editor ? 1 : 0));    
     t_object *ob;
     y->g_next = 0;
     int index = 0;
@@ -255,7 +255,7 @@ void glist_delete(t_glist *x, t_gobj *y)
                     if (gl->gl_isgraph)
                     {
                         char tag[80];
-                        //sprintf(tag, "graph%zx", (t_int)gl);
+                        //sprintf(tag, "graph%zx", (t_uint)gl);
                         //t_glist *yy = (t_glist *)y;
                         sprintf(tag, "%s",
                             rtext_gettag(glist_findrtext(x, &gl->gl_obj)));
@@ -1051,7 +1051,7 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis)
     //    tgt = parent_glist;
     //    exception = 1;
     //}
-    //fprintf(stderr,"tgt=.x%zx %d\n", (t_int)tgt, exception);
+    //fprintf(stderr,"tgt=.x%zx %d\n", (t_uint)tgt, exception);
 
     if (vis & gobj_shouldvis(gr, parent_glist))
     {
@@ -1082,7 +1082,7 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis)
     if (!vis)
         rtext_erase(glist_findrtext(parent_glist, &x->gl_obj));
 
-    //sprintf(tag, "graph%zx", (t_int)x);
+    //sprintf(tag, "graph%zx", (t_uint)x);
     //fprintf(stderr, "gettag=%s, tag=graph%zx\n",
     //    rtext_gettag(glist_findrtext(parent_glist, &x->gl_obj)),(t_int)x);
     /* if we look like a graph but have been moved to a toplevel,
diff --git a/pd/src/g_magicglass.c b/pd/src/g_magicglass.c
index 26ccf5247db330f88ab5b3aac3bee3e30198b381..a7edd0bf4f466557078e98956245cec100f6b263 100644
--- a/pd/src/g_magicglass.c
+++ b/pd/src/g_magicglass.c
@@ -19,7 +19,7 @@ void magicGlass_clearText(t_magicGlass *x);
 
 void magicGlass_bind(t_magicGlass *x, t_object *obj, int outno)
 {
-    //fprintf(stderr,"magicglass_bind %zx\n", (t_int)x);
+    //fprintf(stderr,"magicglass_bind %zx\n", (t_uint)x);
     if (x->x_connectedObj != obj)
     {
         if (x->x_connectedObj)
@@ -39,7 +39,7 @@ void magicGlass_bind(t_magicGlass *x, t_object *obj, int outno)
 
 void magicGlass_unbind(t_magicGlass *x)
 {
-    //fprintf(stderr,"magicglass_unbind %zx\n", (t_int)x);
+    //fprintf(stderr,"magicglass_unbind %zx\n", (t_uint)x);
     if (x->x_connectedObj)
     {
         obj_disconnect(x->x_connectedObj,
@@ -387,7 +387,7 @@ void *magicGlass_new(t_glist *c)
 
 void magicGlass_free(t_magicGlass *x)
 {
-    //fprintf(stderr,"magicglass_free %zx\n", (t_int)x);
+    //fprintf(stderr,"magicglass_free %zx\n", (t_uint)x);
     magicGlass_unbind(x);
     x->x_dspOn = 0;
     clock_free(x->x_clearClock);
diff --git a/pd/src/g_rtext.c b/pd/src/g_rtext.c
index 24401204ff7ae10c8fa2dbd04a5758e2cc0a8841..d4efedafbe85e75bd908f7965af1f64860af52dd 100644
--- a/pd/src/g_rtext.c
+++ b/pd/src/g_rtext.c
@@ -65,7 +65,7 @@ t_rtext *rtext_new(t_glist *glist, t_text *who)
     // supposed to be there (they don't belong to that canvas). See
     // in pd.tk pdtk_select_all_gop_widgets function and how it affects
     // draw data structures that are displayed via gop (Ico 20140831)
-    sprintf(x->x_tag, ".x%zx.t%zx", (t_int)glist_getcanvas(x->x_glist),
+    sprintf(x->x_tag, ".x%zx.t%zx", (t_uint)glist_getcanvas(x->x_glist),
         (t_int)x);
     return (x);
 }
diff --git a/pd/src/g_scalar.c b/pd/src/g_scalar.c
index 1867a18711526126fa7a949d78aa4c0cb6ae9adf..703e3aa915a76421069ce57d00ec9b7acceaa155 100644
--- a/pd/src/g_scalar.c
+++ b/pd/src/g_scalar.c
@@ -104,7 +104,7 @@ void word_init(t_word *data, t_template *template, t_gpointer *gp)
             canvas_resume_dsp(dspstate);
 
             s__X.s_thing = boundx;
-            post("eval'd a canvas with addy x%zx", (t_int)
+            post("eval'd a canvas with addy x%zx", (t_uint)
                 wp->w_list);
         }
         else if (type == DT_TEXT)
@@ -547,7 +547,7 @@ static void scalar_getrect(t_gobj *z, t_glist *owner,
 void scalar_drawselectrect(t_scalar *x, t_glist *glist, int state)
 {
     char tagbuf[MAXPDSTRING];
-    sprintf(tagbuf, "scalar%zx", (t_int)x->sc_vec);
+    sprintf(tagbuf, "scalar%zx", (t_uint)x->sc_vec);
 
     //fprintf(stderr,"scalar_drawselecterect%d\n", state);
     if (state)
@@ -611,7 +611,7 @@ void scalar_select(t_gobj *z, t_glist *owner, int state)
     t_scalar *x = (t_scalar *)z;
 
     char tagbuf[MAXPDSTRING];
-    sprintf(tagbuf, "scalar%zx", (t_int)x->sc_vec);
+    sprintf(tagbuf, "scalar%zx", (t_uint)x->sc_vec);
 
     t_template *tmpl;
     t_symbol *templatesym = x->sc_template;
@@ -699,7 +699,7 @@ static void scalar_displace(t_gobj *z, t_glist *glist, int dx, int dy)
 */
 static void scalar_displace_withtag(t_gobj *z, t_glist *glist, int dx, int dy)
 {
-    //fprintf(stderr,"scalar_displace_withtag %zx %d %d\n", (t_int)z, dx, dy);
+    //fprintf(stderr,"scalar_displace_withtag %zx %d %d\n", (t_uint)z, dx, dy);
     t_scalar *x = (t_scalar *)z;
     t_symbol *templatesym = x->sc_template;
     t_template *template = template_findbyname(templatesym);
@@ -789,7 +789,7 @@ static void scalar_group_configure(t_scalar *x, t_glist *owner,
 {
     t_gobj *y;
     char tagbuf[MAXPDSTRING];
-    sprintf(tagbuf, "dgroup%zx.%zx", (t_int)gl,
+    sprintf(tagbuf, "dgroup%zx.%zx", (t_uint)gl,
         (t_int)data);
     char parentbuf[MAXPDSTRING];
     sprintf(parentbuf, "dgroup%zx.%zx",
@@ -823,7 +823,7 @@ void scalar_doconfigure(t_gobj *xgobj, t_glist *owner)
     int vis = glist_isvisible(owner);
     if (vis)
     {
-        //fprintf(stderr,"scalar_vis %d %zx\n", vis, (t_int)z);
+        //fprintf(stderr,"scalar_vis %d %zx\n", vis, (t_uint)z);
         x->sc_bboxcache = 0;
 
         t_template *template = template_findbyname(x->sc_template);
@@ -837,7 +837,7 @@ void scalar_doconfigure(t_gobj *xgobj, t_glist *owner)
         t_float yscale = glist_ytopixels(owner, 1) - glist_ytopixels(owner, 0);
 
         char tagbuf[MAXPDSTRING];
-        sprintf(tagbuf, "scalar%zx", (t_int)x->sc_vec);
+        sprintf(tagbuf, "scalar%zx", (t_uint)x->sc_vec);
         gui_vmess("gui_scalar_configure_gobj", "xsiffffii",
             glist_getcanvas(owner), 
             tagbuf,
@@ -930,10 +930,10 @@ static void scalar_groupvis(t_scalar *x, t_glist *owner, t_template *template,
     if (vis)
     {
         char tagbuf[MAXPDSTRING];
-        sprintf(tagbuf, "dgroup%zx.%zx", (t_int)gl,
+        sprintf(tagbuf, "dgroup%zx.%zx", (t_uint)gl,
             (t_int)x->sc_vec);
         char parentbuf[MAXPDSTRING];
-        sprintf(parentbuf, "dgroup%zx.%zx", (t_int)parent,
+        sprintf(parentbuf, "dgroup%zx.%zx", (t_uint)parent,
             (t_int)x->sc_vec);
         gui_start_vmess("gui_scalar_draw_group", "xsss",
             glist_getcanvas(owner), tagbuf, parentbuf,
@@ -988,10 +988,10 @@ static void scalar_groupvis(t_scalar *x, t_glist *owner, t_template *template,
 */
 static void scalar_vis(t_gobj *z, t_glist *owner, int vis)
 {
-    //fprintf(stderr,"scalar_vis %d %zx\n", vis, (t_int)z);
+    //fprintf(stderr,"scalar_vis %d %zx\n", vis, (t_uint)z);
     t_scalar *x = (t_scalar *)z;
     char buf[50];
-    sprintf(buf, "x%zx", (t_int)x);
+    sprintf(buf, "x%zx", (t_uint)x);
 
     x->sc_bboxcache = 0;
 
@@ -1054,7 +1054,7 @@ static void scalar_vis(t_gobj *z, t_glist *owner, int vis)
            here on the .scalar%zx group. (Notice also that tkpath doesn't
            understand "None"-- instead we must send an empty symbol.) */
         char tagbuf[MAXPDSTRING];
-        sprintf(tagbuf, "scalar%zx", (t_int)x->sc_vec);
+        sprintf(tagbuf, "scalar%zx", (t_uint)x->sc_vec);
         gui_vmess("gui_scalar_new", "xsiffffffii",
             glist_getcanvas(owner),
             tagbuf,
@@ -1067,8 +1067,8 @@ static void scalar_vis(t_gobj *z, t_glist *owner, int vis)
         char groupbuf[MAXPDSTRING];
         // Quick hack to make gui_scalar_draw_group more general (so we
         // don't have to tack on "gobj" manually)
-        sprintf(tagbuf, "scalar%zxgobj", (t_int)x->sc_vec);
-        sprintf(groupbuf, "dgroup%zx.%zx", (t_int)templatecanvas,
+        sprintf(tagbuf, "scalar%zxgobj", (t_uint)x->sc_vec);
+        sprintf(groupbuf, "dgroup%zx.%zx", (t_uint)templatecanvas,
             (t_int)x->sc_vec);
         gui_vmess("gui_scalar_draw_group", "xsss",
             glist_getcanvas(owner), groupbuf, tagbuf, "g");
@@ -1097,7 +1097,7 @@ static void scalar_vis(t_gobj *z, t_glist *owner, int vis)
     if (!vis)
     {
         char tagbuf[MAXPDSTRING];
-        sprintf(tagbuf, "scalar%zx", (t_int)x->sc_vec);
+        sprintf(tagbuf, "scalar%zx", (t_uint)x->sc_vec);
         gui_vmess("gui_scalar_erase", "xs",
             glist_getcanvas(owner), tagbuf);
         if (gensym(buf)->s_thing)
diff --git a/pd/src/g_template.c b/pd/src/g_template.c
index 147a7073a310ea844985046d27719ea0e2acfbdc..30f0884519e41826f90dbb470c92c1cfe91e92d9 100644
--- a/pd/src/g_template.c
+++ b/pd/src/g_template.c
@@ -1460,7 +1460,7 @@ void *svg_new(t_pd *parent, t_symbol *s, int argc, t_atom *argv)
     // Here we bind the parent object to the addy for
     // the svg. This way both [group] and [draw] will have
     // the same binding symbol
-    sprintf(buf, "x%zx", (t_int)x);
+    sprintf(buf, "x%zx", (t_uint)x);
     pd_bind(parent, gensym(buf));
 
     return (x);
@@ -2174,19 +2174,19 @@ void svg_register_events(t_gobj *z, t_canvas *c, t_scalar *sc,
     if (pd_class(&z->g_pd) == canvas_class)
     {
         svg = (t_svg *)((t_glist *)z)->gl_svg;
-        sprintf(tagbuf, "dgroup%zx.%zx", (t_int)z,
+        sprintf(tagbuf, "dgroup%zx.%zx", (t_uint)z,
             (t_int)data);
     }
     else if (pd_class(&z->g_pd) == draw_class)
     {
         svg = (t_svg *)((t_draw *)z)->x_attr;
-        sprintf(tagbuf, "draw%zx.%zx", (t_int)z,
+        sprintf(tagbuf, "draw%zx.%zx", (t_uint)z,
             (t_int)data);
     }
     else if (pd_class(&z->g_pd) == drawimage_class)
     {
         svg = (t_svg *)((t_drawimage *)z)->x_attr;
-        sprintf(tagbuf, "draw%zx.%zx", (t_int)z,
+        sprintf(tagbuf, "draw%zx.%zx", (t_uint)z,
             (t_int)data);
     }
     else /* legacy drawing commands: curve, drawnumber, etc. */
@@ -4260,7 +4260,7 @@ static void draw_vis(t_gobj *z, t_glist *glist, t_glist *parentglist,
         if (n > 1)
         {
             char itemtagbuf[MAXPDSTRING];
-            sprintf(itemtagbuf, "draw%zx.%zx", (t_int)x,
+            sprintf(itemtagbuf, "draw%zx.%zx", (t_uint)x,
                 (t_int)data);
             gui_vmess("gui_draw_erase_item", "xs", glist_getcanvas(glist),
                 itemtagbuf);
@@ -4585,7 +4585,7 @@ void draw_notify(t_canvas *x, t_symbol *s, int argc, t_atom *argv)
        a canvas field.  If there's any in existence, forward the event
        notification. pd_bind takes care of the details of this-- if 
        there are multiple [event] objects it will dispatch to each */
-    sprintf(canvas_field_namebuf, "%zx_event", (t_int)sc->sc_vec);
+    sprintf(canvas_field_namebuf, "%zx_event", (t_uint)sc->sc_vec);
     canvas_field_event = gensym(canvas_field_namebuf);
     t_pd *target = canvas_field_event->s_thing;
     if (target)
@@ -4748,7 +4748,7 @@ static void svg_free(t_svg *x)
         t_freebytes(x->x_nargs_per_cmd, x->x_npathcmds * sizeof(*x->x_nargs_per_cmd));
     }
     char buf[50];
-    sprintf(buf, "x%zx", (t_int)x);
+    sprintf(buf, "x%zx", (t_uint)x);
     pd_unbind((t_pd *)x->x_parent, gensym(buf));
 }
 
@@ -4894,7 +4894,7 @@ static void *event_new(void)
     t_canvas *c = canvas_getrootfor(canvas_getcurrent());
     if (c->gl_vec)
     {
-        sprintf(namebuf, "%zx_event", (t_int)c->gl_vec);
+        sprintf(namebuf, "%zx_event", (t_uint)c->gl_vec);
         x->x_bindsym = gensym(namebuf);
         pd_bind(&x->x_obj.ob_pd, x->x_bindsym);
     }
@@ -5115,7 +5115,7 @@ static void curve_getrect(t_gobj *z, t_glist *glist,
     t_word *data, t_template *template, t_float basex, t_float basey,
     int *xp1, int *yp1, int *xp2, int *yp2)
 {
-    //fprintf(stderr,">>>>>>>>>>>>>>>>>>>>>>curve_getrect %zx\n", (t_int)z);
+    //fprintf(stderr,">>>>>>>>>>>>>>>>>>>>>>curve_getrect %zx\n", (t_uint)z);
     t_curve *x = (t_curve *)z;
     int i, n = x->x_npoints;
     t_fielddesc *f = x->x_vec;
@@ -5335,7 +5335,7 @@ static void curve_vis(t_gobj *z, t_glist *glist, t_glist *parentglist,
                 (t_int)data);
             gui_s(parent_tagbuf);
             char tagbuf[MAXPDSTRING];
-            sprintf(tagbuf, "curve%zx.%zx", (t_int)x,
+            sprintf(tagbuf, "curve%zx.%zx", (t_uint)x,
                 (t_int)data);
             gui_s(tagbuf);
             gui_end_array(); /* end of tags array */
@@ -5359,7 +5359,7 @@ static void curve_vis(t_gobj *z, t_glist *glist, t_glist *parentglist,
         if (n > 1)
         {
             char itemtagbuf[MAXPDSTRING];
-            sprintf(itemtagbuf, "curve%zx.%zx", (t_int)x,
+            sprintf(itemtagbuf, "curve%zx.%zx", (t_uint)x,
                 (t_int)data);
         }
     }
@@ -5977,9 +5977,9 @@ static void plot_groupvis(t_scalar *x, t_glist *owner, t_word *data,
 {
     t_gobj *y;
     char tagbuf[MAXPDSTRING], parent_tagbuf[MAXPDSTRING];
-    sprintf(tagbuf, "dgroup%zx.%zx", (t_int)groupcanvas,
+    sprintf(tagbuf, "dgroup%zx.%zx", (t_uint)groupcanvas,
         (t_int)data);
-    sprintf(parent_tagbuf, "dgroup%zx.%zx", (t_int)parent,
+    sprintf(parent_tagbuf, "dgroup%zx.%zx", (t_uint)parent,
         (t_int)data);
     gui_start_vmess("gui_scalar_draw_group", "xsss",
         glist_getcanvas(owner),
@@ -6735,9 +6735,9 @@ static void drawarray_groupvis(t_scalar *x, t_glist *owner, t_word *data,
 {
     t_gobj *y;
     char tagbuf[MAXPDSTRING], parent_tagbuf[MAXPDSTRING];
-    sprintf(tagbuf, "dgroup%zx.%zx", (t_int)groupcanvas,
+    sprintf(tagbuf, "dgroup%zx.%zx", (t_uint)groupcanvas,
         (t_int)data);
-    sprintf(parent_tagbuf, "dgroup%zx.%zx", (t_int)parent,
+    sprintf(parent_tagbuf, "dgroup%zx.%zx", (t_uint)parent,
         (t_int)data);
     gui_start_vmess("gui_scalar_draw_group", "xsss",
         glist_getcanvas(owner),
@@ -7318,7 +7318,7 @@ static void drawsymbol_vis(t_gobj *z, t_glist *glist, t_glist *parentglist,
                         (t_int)x->x_canvas),
             (t_int)data);
         char tagbuf[MAXPDSTRING];
-        sprintf(tagbuf, "drawnumber%zx.%zx", (t_int)x,
+        sprintf(tagbuf, "drawnumber%zx.%zx", (t_uint)x,
             (t_int)data);
         gui_vmess("gui_drawnumber_vis", "xssiiffsissii",
             glist_getcanvas(glist),
@@ -7338,7 +7338,7 @@ static void drawsymbol_vis(t_gobj *z, t_glist *glist, t_glist *parentglist,
     else
     {
         char tagbuf[MAXPDSTRING];
-        sprintf(tagbuf, "drawnumber%zx.%zx", (t_int)x,
+        sprintf(tagbuf, "drawnumber%zx.%zx", (t_uint)x,
             (t_int)data);
         gui_vmess("gui_draw_erase_item", "xs", glist_getcanvas(glist),
             tagbuf);
@@ -7564,7 +7564,7 @@ static void *drawimage_new(t_symbol *classsym, int argc, t_atom *argv)
     
     char *classname = classsym->s_name;
     char buf[50];
-    sprintf(buf, "x%zx", (t_int)x);
+    sprintf(buf, "x%zx", (t_uint)x);
     pd_bind(&x->x_obj.ob_pd, gensym(buf));
     int flags = 0;
     
@@ -7957,8 +7957,8 @@ static void drawimage_free(t_drawimage *x)
 {
     /* delete the parent image in the gui */
     char buf[50];
-    //sprintf(buf, ".x%zx", (t_int)x);
-    sprintf(buf, "x%zx", (t_int)x);
+    //sprintf(buf, ".x%zx", (t_uint)x);
+    sprintf(buf, "x%zx", (t_uint)x);
     pd_unbind(&x->x_obj.ob_pd, gensym(buf));
     gui_vmess("gui_image_free", "x", x);
 }
diff --git a/pd/src/g_text.c b/pd/src/g_text.c
index f6500a8b0c24e808fa86a826ee590eebed17e1c7..b7363b4c3f15c2f4ad2edf607933045be01d25de 100644
--- a/pd/src/g_text.c
+++ b/pd/src/g_text.c
@@ -1888,7 +1888,7 @@ void canvas_dropdown(t_glist *gl, t_symbol *s, int argc, t_atom *argv)
     x->a_text.te_width = 6;
 
     /* bind symbol for sending index updates from the GUI */
-    sprintf(tagbuf, "x%zx", (t_int)x);
+    sprintf(tagbuf, "x%zx", (t_uint)x);
     pd_bind(&x->a_text.te_pd, gensym(tagbuf));
 
     binbuf_add(x->a_text.te_binbuf, 1, binbuf_getvec(x->a_names));
@@ -1951,7 +1951,7 @@ void canvas_dropdown(t_glist *gl, t_symbol *s, int argc, t_atom *argv)
 static void dropdown_free(t_dropdown *x)
 {
     char tagbuf[MAXPDSTRING];
-    sprintf(tagbuf, "x%zx", (t_int)x);
+    sprintf(tagbuf, "x%zx", (t_uint)x);
     pd_unbind(&x->a_text.te_pd, gensym(tagbuf));
 
     if (*x->a_symfrom->s_name)
diff --git a/pd/src/m_pd.c b/pd/src/m_pd.c
index f4d48b2fff33030446548cc25accbdcb289c025b..dc69076d44ad1d9cbe5ebddb73ecbaa7df6ed70b 100644
--- a/pd/src/m_pd.c
+++ b/pd/src/m_pd.c
@@ -198,7 +198,7 @@ void pd_bind(t_pd *x, t_symbol *s)
     {
         if (*s->s_thing == bindlist_class)
         {
-            //fprintf(stderr,"    pd_bind option 1A %zx\n", (t_int)x);
+            //fprintf(stderr,"    pd_bind option 1A %zx\n", (t_uint)x);
             t_bindlist *b = (t_bindlist *)s->s_thing;
             t_bindelem *e = (t_bindelem *)getbytes(sizeof(t_bindelem));
             e->e_next = b->b_list;
@@ -208,7 +208,7 @@ void pd_bind(t_pd *x, t_symbol *s)
         }
         else
         {
-            //fprintf(stderr,"    pd_bind option 1B %zx\n", (t_int)x);
+            //fprintf(stderr,"    pd_bind option 1B %zx\n", (t_uint)x);
             t_bindlist *b = (t_bindlist *)pd_new(bindlist_class);
             t_bindelem *e1 = (t_bindelem *)getbytes(sizeof(t_bindelem));
             t_bindelem *e2 = (t_bindelem *)getbytes(sizeof(t_bindelem));
@@ -223,7 +223,7 @@ void pd_bind(t_pd *x, t_symbol *s)
         }
     }
     else {
-        //fprintf(stderr,"pd_bind option 2 %zx\n", (t_int)x);
+        //fprintf(stderr,"pd_bind option 2 %zx\n", (t_uint)x);
         s->s_thing = x;
     }
 }
@@ -232,7 +232,7 @@ void pd_unbind(t_pd *x, t_symbol *s)
 {
     //fprintf(stderr,"pd_unbind %s\n", s->s_name);
     if (s->s_thing == x) {
-        //fprintf(stderr,"    pd_unbind option A %zx\n", (t_int)x);
+        //fprintf(stderr,"    pd_unbind option A %zx\n", (t_uint)x);
         s->s_thing = 0;
     }
     else if (s->s_thing && *s->s_thing == bindlist_class)
@@ -248,7 +248,7 @@ void pd_unbind(t_pd *x, t_symbol *s)
            which we call bindlist_cleanup(). we control the execution via
            static int variable change_bindlist_via_graph */
 
-        //fprintf(stderr,"    pd_unbind option B %zx\n", (t_int)x);
+        //fprintf(stderr,"    pd_unbind option B %zx\n", (t_uint)x);
 
         t_bindlist *b = (t_bindlist *)s->s_thing;
         t_bindelem *e, *e2;
diff --git a/pd/src/m_pd.h b/pd/src/m_pd.h
index 4448c73db655b1d18476ddaba10fcdef7aeb7b2f..c1b3c5c16b2c84769cbb43aa0399901e50e714e1 100644
--- a/pd/src/m_pd.h
+++ b/pd/src/m_pd.h
@@ -93,6 +93,13 @@ typedef unsigned __int64  uint64_t;
 #define PD_LONGINTTYPE long
 #endif
 #endif
+#if !defined(PD_LONGUINTTYPE)
+#if defined(_WIN32) && defined(_WIN64)
+#define PD_LONGUINTTYPE unsigned long long
+#else
+#define PD_LONGUINTTYPE unsigned long
+#endif
+#endif
 
 #if !defined(PD_FLOATSIZE)
 #define PD_FLOATSIZE 32   /* 32 for single precision or 64 for double precision */
@@ -107,6 +114,7 @@ typedef unsigned __int64  uint64_t;
 #endif
 
 typedef PD_LONGINTTYPE t_int;       /* pointer-size integer */
+typedef PD_LONGUINTTYPE t_uint;     /* pointer-size unsigned integer */
 typedef PD_FLOATTYPE t_float;       /* a float type at most the same size */
 typedef PD_FLOATTYPE t_floatarg;    /* float type for function calls */
 
@@ -728,7 +736,7 @@ EXTERN void gui_start_array(void);
 EXTERN void gui_f(t_float f); /* send a float element in an array */
 EXTERN void gui_i(int i);     /* send an int element in an array */
 EXTERN void gui_s(const char *s); /* send a string element in an array */
-EXTERN void gui_x(t_int i);
+EXTERN void gui_x(t_uint i);
 EXTERN void gui_end_array(void);
 EXTERN void gui_end_vmess(void);
 
diff --git a/pd/src/s_inter.c b/pd/src/s_inter.c
index 4d574b50375a20ce932d602dda2937e7cf16dd0d..6223912b22d3a6a4b5b8d9277f94a89a670559bc 100644
--- a/pd/src/s_inter.c
+++ b/pd/src/s_inter.c
@@ -887,7 +887,7 @@ void gui_do_vmess(const char *sel, char *fmt, int end, va_list ap)
         case 's': escape_double_quotes(va_arg(ap, const char *)); break;
         case 'i': sys_vgui("%d", va_arg(ap, int)); break;
         case 'x': sys_vgui("\"" X_SPECIFIER "\"",
-            va_arg(ap, t_int));
+            va_arg(ap, t_uint));
             break;
         //case 'p': SETPOINTER(at, va_arg(ap, t_gpointer *)); break;
         default: goto done;
@@ -965,7 +965,7 @@ void gui_s(const char *s)
     gui_array_tail = 0;
 }
 
-void gui_x(t_int i)
+void gui_x(t_uint i)
 {
     if (gui_array_head && !gui_array_tail)
         sys_vgui("\"x%.6lx\"", i);
@@ -1438,7 +1438,7 @@ int sys_startgui(const char *guidir)
                 portno,
                 (sys_k12_mode ? "pd-l2ork-k12" : "pd-l2ork"),
                 guidir2,
-                (t_int)pd_this);
+                (t_uint)pd_this);
 #else
             sprintf(cmdbuf,
                 "TCL_LIBRARY=\"%s/tcl/library\" TK_LIBRARY=\"%s/tk/library\" \
@@ -1480,7 +1480,7 @@ int sys_startgui(const char *guidir)
                 portno,
                 (sys_k12_mode ? "pd-l2ork-k12" : "pd-l2ork"),
                 guidir2,
-                (t_int)pd_this);
+                (t_uint)pd_this);
 #endif
             sys_guicmd = cmdbuf;
         }
@@ -1537,7 +1537,7 @@ int sys_startgui(const char *guidir)
         //sys_bashfilename(scriptbuf, scriptbuf);
 
         char pd_this_string[80];
-        sprintf(pd_this_string, X_SPECIFIER, (t_int)pd_this);
+        sprintf(pd_this_string, X_SPECIFIER, (t_uint)pd_this);
         sprintf(scriptbuf, "\""); /* use quotes in case there are spaces */
         strcat(scriptbuf, sys_libdir->s_name);
         strcat(scriptbuf, "/" PDBINDIR);
diff --git a/pd/src/s_print.c b/pd/src/s_print.c
index 3a9cb6469a91f2187cb1679e2f470030706df6f0..156f45ac612b7da74dd01681f2a7e9bde1692921 100644
--- a/pd/src/s_print.c
+++ b/pd/src/s_print.c
@@ -43,7 +43,7 @@ static char* strnpointerid(char *dest, const void *pointer, size_t len)
 {
     *dest=0;
     if (pointer)
-        snprintf(dest, len, ".x%zx", (t_int)pointer);
+        snprintf(dest, len, ".x%zx", (t_uint)pointer);
     return dest;
 }
 
diff --git a/pd/src/x_gui.c b/pd/src/x_gui.c
index e7473a2166676f08ee6961092c45466ef3f388e3..862a73f064b8890dd46f1d2c6bba6b5ab1265426 100644
--- a/pd/src/x_gui.c
+++ b/pd/src/x_gui.c
@@ -68,7 +68,7 @@ void gfxstub_new(t_pd *owner, void *key, const char *cmd)
         return;
     }
     x = (t_gfxstub *)pd_new(gfxstub_class);
-    sprintf(namebuf, ".gfxstub%zx", (t_int)x);
+    sprintf(namebuf, ".gfxstub%zx", (t_uint)x);
 
     s = gensym(namebuf);
     pd_bind(&x->x_pd, s);
@@ -99,7 +99,7 @@ char *gfxstub_new2(t_pd *owner, void *key)
         if (x->x_key == key)
             gfxstub_deleteforkey(key);
     x = (t_gfxstub *)pd_new(gfxstub_class);
-    sprintf(namebuf, ".gfxstub%zx", (t_int)x);
+    sprintf(namebuf, ".gfxstub%zx", (t_uint)x);
     s = gensym(namebuf);
     pd_bind(&x->x_pd, s);
     x->x_owner = owner;
@@ -154,7 +154,7 @@ void gfxstub_deleteforkey(void *key)
             if (y->x_key == key)
             {
                 char tagbuf[MAXPDSTRING];
-                sprintf(tagbuf, ".gfxstub%zx", (t_int)y);
+                sprintf(tagbuf, ".gfxstub%zx", (t_uint)y);
                 gui_vmess("gui_remove_gfxstub", "s",
                     tagbuf);
                  
@@ -245,7 +245,7 @@ static void *openpanel_new( void)
     char buf[50];
     t_openpanel *x = (t_openpanel *)pd_new(openpanel_class);
     x->x_canvas = canvas_getcurrent();
-    sprintf(buf, "d%zx", (t_int)x);
+    sprintf(buf, "d%zx", (t_uint)x);
     x->x_s = gensym(buf);
     pd_bind(&x->x_obj.ob_pd, x->x_s);
     outlet_new(&x->x_obj, &s_symbol);
@@ -303,7 +303,7 @@ static void *savepanel_new( void)
 {
     char buf[50];
     t_savepanel *x = (t_savepanel *)pd_new(savepanel_class);
-    sprintf(buf, "d%zx", (t_int)x);
+    sprintf(buf, "d%zx", (t_uint)x);
     x->x_s = gensym(buf);
     x->x_canvas = canvas_getcurrent();
     pd_bind(&x->x_obj.ob_pd, x->x_s);
diff --git a/pd/src/x_interface.c b/pd/src/x_interface.c
index bab59fa2f67ca079ec398d04e042caff504f6ef4..fe05f3c52b87b5b3387cbb4cc6f54965918d4fb6 100644
--- a/pd/src/x_interface.c
+++ b/pd/src/x_interface.c
@@ -582,7 +582,7 @@ void canvasinfo_name(t_canvasinfo *x, t_symbol *s, int argc, t_atom *argv)
 {
     t_canvas *c = canvas_climb(x->x_canvas, x->x_depth);
     char buf[MAXPDSTRING];
-    snprintf(buf, MAXPDSTRING, "x%zx", (t_int)c);
+    snprintf(buf, MAXPDSTRING, "x%zx", (t_uint)c);
     t_atom at[1];
     SETSYMBOL(at, gensym(buf));
     info_out((t_text *)x, s, 1, at);
diff --git a/pd/src/x_preset.c b/pd/src/x_preset.c
index 7d8bad6e787594815b375da7fd6731012ae2870e..f3043532da93799609d0186a27e1531f5b81c1b2 100644
--- a/pd/src/x_preset.c
+++ b/pd/src/x_preset.c
@@ -477,7 +477,7 @@ static void preset_node_update_my_glist_location(t_preset_node *x)
    as well as when hubs try to query nodes that have not been paired yet.  */
 void preset_node_seek_hub(t_preset_node *x)
 {
-    if(PH_DEBUG) fprintf(stderr,"preset_node_seek_hub %zx\n", (t_int)x->pn_hub);
+    if(PH_DEBUG) fprintf(stderr,"preset_node_seek_hub %zx\n", (t_uint)x->pn_hub);
     if (we_are_undoing)
         return;
     t_canvas *y = x->pn_canvas;
@@ -529,7 +529,7 @@ static int preset_node_location_changed(t_preset_node *x)
 
 static void preset_node_anything(t_preset_node *x, t_symbol *s, int argc, t_atom *argv)
 {
-    if (PH_DEBUG) fprintf(stderr,"preset_node_anything %zx %s %d\n", (t_int)x, s->s_name, argc);
+    if (PH_DEBUG) fprintf(stderr,"preset_node_anything %zx %s %d\n", (t_uint)x, s->s_name, argc);
     int i;
     alist_list(&x->pn_val, 0, argc, argv);
     if (PH_DEBUG)
@@ -609,7 +609,7 @@ void preset_node_request_hub_writepreset(t_preset_node *x, t_symbol *filename,
 void preset_node_set_and_output_value(t_preset_node *x, t_alist val)
 {
     if(PH_DEBUG)
-        fprintf(stderr,"preset_node_set_and_output_value %zx\n", (t_int)x);
+        fprintf(stderr,"preset_node_set_and_output_value %zx\n", (t_uint)x);
     t_atom *outv;
     if (val.l_n > 0)
     {
diff --git a/pd/src/x_text.c b/pd/src/x_text.c
index 10fe0211228be0e9b1a519b7548c8cca345f39c4..3d61d0cf3f1c3aa9fded175287e38f8a51303a26 100644
--- a/pd/src/x_text.c
+++ b/pd/src/x_text.c
@@ -126,7 +126,7 @@ static void textbuf_open(t_textbuf *x)
         //    x, 600, 340, "myname", "text",
         //         sys_hostfontsize(glist_getfont(x->b_canvas)));//,
                     //glist_getzoom(x->b_canvas)));
-        sprintf(buf, "x%zx", (t_int)x);
+        sprintf(buf, "x%zx", (t_uint)x);
         x->b_guiconnect = guiconnect_new(&x->b_ob.ob_pd, gensym(buf));
         gui_vmess("gui_text_dialog", "xsiii",
             x,